The following is the continuation of the “6 tips for beginner programmers” blogpost.

4. Be brave and confident of your own value

Since quite a while, beyond programming, I’m also interested in avionics and aeronautics - in short, everything that flies, especially if it flies to outer space.

A situation I want to tell you about happens during commercial, passenger flights. It is a particular way of choosing pilots for a given flight. It basically comes down to the fact, that an experienced pilot will be allowed to fly only with another equally experienced pilot. A beginner will fly with other beginner. Why? Because otherwise one pilot might be afraid to question the decision of the more experienced one. As long as they have equal competence level, none of them will feel as a better or worse pilot.

The example above shows a problem. When someone is more experienced than us, even if we do not agree with this person, we tend to assume that they are right - after all they developed way more applications than we did.

We have to remember that in programming the technologies change in such pace, that even a seasoned programmer is unable to grasp everything. This is the reason why you, a person who is just learning a particular technology, might have bigger or more current knowledge than the person with bigger experience.

There is one more significant quote I’d like to share with you - “I’m not higher, I’m just deeper”.

We are all the same humans. Both you and me are able to solve the same problems, what might be different, is the time we need to do so and the approach we take. This is a quite important thing for you to remember - you are able to take on any task! The sooner you start leaving your comfort zone, the sooner you will get the knowledge necessary to become a so called Mid or a Senior.

5. Do not anticipate taking only “big steps” - taking “small steps” often will give you the intended result

Sometimes, people I meet tell me - “You are really fortunate, sitting in front of a computer, clicking and earning, sometimes without leaving your home.”

My response is always the same - “Then start doing the same! I can help you!”. After that a series of excuses occurs - “Nooo, I have no knowledge about computers”, “I don’t have any time!”, “I would have to sign up to a course”, etc.

Why I see those as just excuses? Let me answer with another question - “What do you have to do to become a writer?”. The answer is simple - “Start writing”. We can be better or worse at it, however the only requirement to be able to call oneself a writer is to start writing.

The same applies to programming. There is no other method than sitting in front of the computer and writing code. Nowadays you don’t even have to install anything - there are at least a dozen or so websites which allow you to code online.

The people I have mentioned before are looking for problems. If you want to grow faster, look for solutions, not problems.

You do not have time to learn - but are you sure? When on the bus - read some documentation or watch an online course. Like some Facebook pages related to programming so you have some useful information in your feed.

You do not have much time - it is still good. Try to code daily for as little as 30 minutes, and a week later you will have 3,5 hours of programming under your belt.

You don’t have a computer - no worries, you can learn on your phone - there are online courses as well as online code editors which allow you to learn how to code, available for your phone.

You don’t have access to the internet? The website you are reading was surely printed and sent to you via mail :)

I does not matter however small steps you take - each one counts and teaches you something new. Maybe not today or tomorrow, but soon you will notice how much this approach has given you!

6. Solve one problem at a time

While creating an application, after the planning phase and looking at the project holistically, you should narrow your perspective to specific steps you need to take.

For example, if you’re working on a Messenger like application, start with a script which will save the given text into a text file. Of course, ultimately you will have to have a server, which will receive those messages and send them to the recipient. But thanks to this approach you will be able to understand how to handle relaying the text from the user to the code and how to process the text - this is something! After that you can create a simple server, work on the interface, but keep in mind to solve one problem at a time.

I know a lot of people who try to solve many or all problems at once. The problem with this approach is that they are unable to tell why their code is not working. They have changed so many things, added even more that it is hard to say what happened. Frustration, discouragement and helplessness appear - and in the end the whole project goes to trash. The strategy of solving problems individually will let you react instantly, and pinpoint the moment where you changed something and it stopped working.

Remember though - every project after its end can be put in one of two categories - SUCCESSFUL and LESSONS LEARNED. The worst possible enterprise can teach you something, even if it’s the knowledge of what projects you don’t want to work on.

In conclusion, I would like to wish you good luck! Being at the beginning of your path to the IT world is probably the hardest part - everything seems so difficult and complicated - lots of information to acquire and many things seem not as they should be.

Let me cheer you up - there are many places which will help you get through this stage, maybe not painlessly, but in a more smooth way. Look for internships which will teach you the most. Look for internships in interesting, valuable companies.

What if you can’t find a place like that? Well, you will be in the same situation I once was. And the only solution is to create this place on your own, when you go through you journey. This is why, when I have found my place, the company I’m currently working in, TEONITE, I have implemented my own internship programme, BootMeUpTNT. I’m creating it in a way, so it could have helped me when I was starting my adventure.

I would like to encourage you too - if you are having a hard time finding your place - create your own BootMeUp. Help others in getting knowledge and share what you have learned - this way you will be able to make this difficult time easier for others.

Read first part on: teonite.com/blog/6-tips-for-beginner-programmers-part-1/