2 minute read

Learning programming could be overwhelming. There’s a lot to take in, there’s a lot of things you need to know and, there’s a lot of things you surely don’t know. When I was a beginner, I took one small step at a time and only focused on what was immediately necessary for me to do so.

A mindset to adapt

One of the things that helped me the most when learning new concepts be it in programming in general, computer science, or any other science is by accepting that “I know nothing.”

This mindset helped me avoid misinterpreting the concepts I encounter. By believing that “I know nothing,” I could avoid making wrong assumptions. It is only after I’ve looked at every nook and cranny I can regarding this concept should I relate it to what I know.

Ever heard of one of Sherlock Holmes’ amazing lines:

“It is a capital mistake to theorize before one has data. Insensibly one begins to twist facts to suit theories, instead of theories to suit facts.”

There are no shortcuts

The basics are important. Using frameworks and jumping right into the advanced topics without mastering the fundamentals will only set you up for failure. If you do not have the elementary components down, then you stand no chance of ever understanding complexity. Without being able to touch on complexity, you cannot create nor sustain further complexity. In this world, complexity is a requirement of improvement.

On the other hand, if you master the basics, you gain the ability to do, what I would describe as, “freeform.” Someone on freeform is able to create as much complexity they want with no risk of monumental failure. They are free to dance as they wish, and elegant they always will be.

Well that was an abstract explanation but it pretty much applies to anything we’re wanting to master.

Practice all the time

Everyday, when I was still a beginner, I would present myself a problem which I would solve by writing a program. Sometimes, it’s a problem I encounter naturally or I would search for one to solve myself. Other times, I relate it to other subjects in school. For example, there’s homework that makes us do the electronic configuration for these elements. So, I would then write a program that could find the electronic configuration of any element using the rules on how to do it as they taught us in school but instead of English, it’s written in code.

Nothing worth having comes easy

It’s a fact, not just of learning, but of life as well. It is through trials and tribulations do we become better. If we jump right out of our comfort zones and keep on doing this seemingly difficult task, eventually it becomes trivial. That is because we have broken past our limits.

It’s a lifelong experience

The thing is, I haven’t stopped learning at all. Regardless of how many years pass, I will keep on learning as I always have. These practices I’ve told you about is something that I apply everyday.

Updated: