Couple years ago, I picked up a book about Java with a clear intent of learning programming. After reading “Hello World” chapter and some other paragraphs, I put it back on a shelve and never looked back. There was nothing wrong with that book. It was written by highly respectable authors and it also had very good reviews on Amazon. Yet, the learning curve was too steep at that moment. Instead of giving up completely, I read two other books about VBA programming for Microsoft Excel and Access. As required, I did all necessary exercises and eventually after completing it I did not retain much of that information.
The choice of the language itself was not premeditated. At that time, Java seemed to me like a good starting point. I did not know too much about different languages, and since there are so many of them, the choice I had to make was rather accidental.
Now, if you asking yourself a question where should I start or what programming language I should learn, then this article series may provide some clarity on the subject. My intention is not to give you ready solution, but instead explain some of the things that may seem not that obvious to somebody who wants to start on a path of becoming programmer or developer.
Everybody says that learning programming is about passion and writing code. Although it’s true to some extent, it goes beyond that. It is more about method that you use and rationale behind it. Authors of a book may have a good intentions putting “Hello World” and other paragraphs about loops and if statements, but at the end you as reader feel like you hit a brick wall. Also, ask yourself a question how many of these authors are actually self-taught programmers? Some of them probably are, but in most cases they have a good professional background with Computer Science degree. Now imagine if I asked you do you want to be an Architect or a Lawyer and I gave you some books to study. Then I will tell you to do all exercises and promise to return to check your progress in six months. Does this seem like something realistic? Probably not, yet many aspiring programmers and developers fall into this trap when they subscribe to this way of thinking.
Choice of the language is not that obvious either. Type in Google or YouTube question what language I should learn and you will get tons of answers and opinions. Some people will recommend starting with Python; others will direct you straight to C++. Everybody has some rationale behind it and they would give you a list of associated benefits. Python is considered as one of the friendliest languages to learn. C++ has an opinion of one of the hardest to digest. So, if someone is telling you to start with C++ because after you learn this language everything else would seem easy. I would add another statement that you need to learn how to write a novel. Once you master it, you will definitely know how to write an essay too.
Now let’s go back to my story from the beginning. I picked up that Java book thinking how hard it can be to learn programming? Apparently, there is more to it than just reading some material or even writing some code. I will explain this in upcoming articles. It also made me think why I failed on my first attempt and why I was somewhat successful plowing through VBA material. It’s all about familiarity with subject at hand. I had some experience working with VBA and databases at my workplace. I was completely at home and I was only expanding on my knowledge. Java on the other hand was a terra incognita that quickly closed the gates and kept me at bay while I was hoping to get inside one day.