How to start out programming and become awesome!

So here is a lil' story from 24y/o me to the rest of the world. For all of those who don't know me, I got a wonderful family: a very supportive mother, a father who shares his love for tech with me and a little sister who struggles with her computer science studies.

At the moment of writing this, it's winter. It's cold outsuide. I drank a little more than I should, so I have to go home with my sister (or one of my friends) who did not drink. It's like christmas in the good ol' days outside: snowing like mother nature herself wants to ground us. So we are driving home from a formidable party, and I went home with my sister. She drives 30 km/h (18mph) instead of 50 and there are people waiting behind her, giving her the horn. She still drives slowly and carefully. I was sitting next to her at the time and I returned the horn! It was snowing like crazy and the lane was very slippery. I asked myself: What is wrong with those people? Do they really want to have an accident that badly and make other people grieve?

So here is what I think concerning this very situation, compared to the development community:

There are people out there who want to reach their goal fast. Every minute counts and it does not matter if what they do is untested grounds. They will give it their all and give the horn to everyone in their way in order to advance faster than everyone else. But most of them just want to get what they wnat and do not have enough experience to just sit back and think of the overall situation: all people involved! What about people who do not have enough expeience, or who are frightened easily or people with disabilities?

If you didn't know already, I am a firefighter. I have seen countless people at the roadside with severe injuries, because they went to fast! For a developer in a cooporate environment, it is the very same thing. Go too fast, and you will end up hurt, or you will hurt someone close to you.

When driving a car, learn the basics. Learn how the car reacts under every wheather condition you might come up with. Think about all other people. Challenge yourself, but always be safe. Check how the car and others reacts and adjust!

Believe it or not, it's the same thing with programming! In the beginning, you might want to build the next SkyNet, changing the world forever. Oh, I had those dreams myself. But you will slip. There will be the moment when you will not be able to solve the task before you. So be slow. Be one of those annoyances on the road. Double-check everything and become a better developer! Because once you know how stuff works, speed is a very natural thing for you!

It really does not matter if you want to learn Web Development, System Development, Application Development or anything else. When starting out, stick to the basics and learn what is going on under the hood. Learn how the engine works, how it transmits its force to the wheels, how you steer and so on. Then use that knowledge to build your very own car. And believe me, it will be awesome, because you already know about all the little details.

It does not matter if someone gives you an engine (or a library, for programming matters). You just have to know how to connect it to your car, because you already know how an engine works, so integration is easy.

Then libraries and frameworks and everything else will follow naturally! Or in other words, learn how to do stuff without libs and frameworks, then add them for convenience; never the other way around!

Comments (3)

Cameron Thomson's photo

well said marco!!!!

I had not read this one before and I am glad I looked through your posts and found this! It applies to me very well! Thank you for sharing!!!

Show all replies
Cameron Thomson's photo

Oh yes, I went through categorically and checked them all out.

I admit some were a little out of my range of understanding, but still I enjoyed your enthusiasm on the topic. So once I went through about 30 of them I just went back and spammed the "like" button.

And the post we are on now I just had to comment on :)

Keep up the good work Marco!