Baby Steps into Programming

Fərid Gülüm
Pragmatech
Published in
8 min readJun 7, 2020

I would like to happily mention that this is my first article on the Medium family. I am quite excited to write this.

Let’s talk about me a bit. I am currently studying Computer Engineering major as a freshman. I shall do my best to give motivation, excitement, and some information to newbies like me. Okay, enough of chit-chatting, let’s jump into the point.

Now let’s think. How can one perceive the notion of programming, let alone being a programmer? Do you have any idea about that? I’ll let you think for a minute.

Hint: Check out the photo.

Yes, you got it! I know you are smart or else you would not be on my profile researching “how to be a programmer”. Oh, did you get that? “Researching”. Did it ring any bell for you?

In case it didn’t, don’t worry, my friend. We will get through this together. Keep your motivation up! (smiley face)

You might heard the word before, but did you also know that every step to success acrosses the notion “research”? It really is the key to everything, not only to be a money-making machine at a programming environment but also for being accomplished in life too. Let me tell you some secrets most are not willing to give unless you are paying that person huge amounts of money (laughing out loud). Well, I do. (crying face)

There are 3 main methods to learn programming faster and more efficiently.

You need to increase your ability of research skills. ( We will talk about that thoroughly later on)

You ought to put deadlines for yourself. It will increase your sense of responsibility to some extend.

You, my dear reader, must not start this journey all alone. If you have a programmer friend, great! Ask him/her questions until they tell you not to. (just kidding, they are much crazier, you wish they don’t kill you)

I guess most people, reading my story, are youngsters, mostly students. You might have a great chance of finding an IT major at your university.

Don’t worry, my high-schooler and older friends. I didn’t forget you. There are numerous people online who are willing to help people. It just is one click away. We will talk all about that.

Now let me explain all in chronological order, starting from #1.

There are many free and paid great resources on the internet.

Examples can be

udemy.com (paid and free). There are thousands of courses throughout the website, all from Web Development to Machine Learning and many more. (my personal favorite)

2. coursera.com (paid and free). Founded in 2012, it now serves over 112 institutions over the world. You can find courses offered by Harvard, Yale, Oxford, you name it, Cambridge, etc.

3. khanacademy.org (non-paid organization). Founded by Salman Khan in 2006, it is 100% free education. You can not only find Computer Science education, but also mathematics dealing with it for FREE.

4. stackoverflow.com (every programmers’ paradise). This is where you will find all your questions. I doubt you will have any question not had been asked before you.

5. edX.org founded by the collaboration of Harvard and MIT. It is open-source instead of profit. Just by the name, you can sense it is a great website to start.

6. We shouldn’t forget mighty MIT Open Coursewave. There is a reason I kept this the last. By using the websites mentioned above, (except 6th) you can have pretty much all fundamental (core) ideas about programming, but after a while, this will get boring for you. Well, don’t worry, this is why there is MIT Open Coursewave. There you can learn “how things work in the background”.

There are many more online resources online, all with different methods but the same purpose. You might try all to perceive which one suits you.

my life in a nutshell lol

#2. You have to arrange deadlines for yourself. Suppose you are learning the programming language Python. You need to optimize and distribute your time according to your schedule to learn it efficiently. You should put deadlines as “I need to learn this specific part until it is 9:00 p.m.”. No other thing should distract you from your work. But I need to remind you that taking in-between breaks will give you the most efficient work-power.

(Check out the Pomodoro technique)

#3. It is recommended you find a partner or a team along with your journey. They are not obliged to know programming, necessarily. The only thing demanded is having the motivation to continue. There might and will be parts where you will get stuck in a particular area and need someone’s help. That is where having a partner(s) is handy.

Let’s not bother you, my readers, with comprehensive information. I want to talk about something you all have an interest in.

I am sure many are eager to learn this new environment not only for passion but also demand on the platform and its salary. (Well, that is me)

There are millions of programmers in the world. So how can you defeat those “old wolves” knowing they have already occupied the IT area? Huh, gotcha!

IT major is one of the fastest-growing areas in the world, meaning that even the professional needs to keep up with mind-blowing techniques even if they don’t want to. That is where your chance comes. You are young (in my heart), you have a fresh mind. So why not start today?

But one thing I have to inform you is you will have to perceive it efficiently and rapidly. You need to follow my recommendations mentioned below.

Always learn “how things work”. Never underestimate the power of fundamental knowledge. Never jump into “hmm, how can I write this”, instead “what is standing behind it and its logic”. Strengthen your mathematics, solve algorithmic errors, and try to freshen your mind constantly.

Write your code by your hand. This might sound “old-style” or “out of the fashion” but that is the authentic and faster way to learn. While debugging your code on your computer, you will never be able to build up confidence. When doing so, you will always be stressed whether your code works or not so you will check it one-line-one. That is not how it works.

Play with your code. Never stick with one method of doing something. Suppose you are a Full-Stack developer and are instructed to create a website. You always ought to find entertaining and interesting ways of creating the ordered page(s). You need to ask “what if I change this code to that” and never fear of circumstances. There is always ctrl+z.

While debugging your code, always take a rest. Yes, you can spend hours to find the faulty part but sometimes you cannot. It does not mean you are a bad developer but rather you need to freshen your mind. Doing so might not solve your problem, however, as a human being, you need to take occasional breaks. We are a part of the community, not constant error solving machines.

As mentioned, build up your confidence. Never think someone more knowledgeable than you always means you will fail. Remember that once they were in your position, like a little kid trying to find the purpose in his life. I have heard many people doubt their IQ or intellectual ability. Having a mathematical logic does not determine your future, you are! So get up and start working!

Okay, as we currently know how to quicken your work, let’s talk about another interesting topic.

WHICH TECHNIQUE SHOULD YOU APPLY?

70–20–10 rule

Based on my research, one of the most popular techniques is 70–20–10 rule.

70 — represents overcoming difficult obstacles and challenges by yourself through job-related works. This is also called “experimental learning”.

20 — represents social interactions among employees, staff, or students. You learn this way through solving, asking, and seeing real-world examples in employees' work.

10 — represents the formal way of learning through standardized ways (e.g. at your classroom).

70% is an informal way of learning but as effective as 20–10 combined. Interestingly, to build up the 70% rule, although having more percentage than others, 10% is crucial. That is the theoretical part of learning.

I would like to talk about my personal methods to learn and finish a specific task.

To be honest with you, although having quite some information about “management techniques”, it is very difficult for me to enforce it in real-life, considering I am a chaotic (spontaneous) person.

Whether I am chaotic or not, this is my job and I have to get over it. There is no way around!

Interestingly enough, there is one way that might work for me. It is not focusing on what I am doing, rather getting the job done in-between my daily needs like eating food, while traveling on transport, etc.

Currently, I am working on myself to adjust to a more static life. The only way to handle “staticity” is to find a source of motivation for yourself. Without shame, I can tell it is money for me. I know I shouldn’t concentrate on that, but hey, whatever works for you is the greatest way :)

cheers,

Fərid Gülüm.

--

--

Fərid Gülüm
Pragmatech

Computer Engineering student at Khazar University. Storyteller, interested in psychology, electronics& aimed for coding skills. From Baku, Azerbaijan