Programming is Hard: A Myth or Verity

Back in my secondary school days, there was this course(subject) called additional mathematics aka further mathematics; This subject was believed to be hard. As a result of this belief, I always scored a zero or at most a 2/20. In my next class, A different teacher took us on the course and He presented further mathematics in an entirely different way from the previous teacher. I began to understand further mathematics and later became one of the best Mathematics gurus that that school had ever had. what had happened? I believe it's because the approach taken by the latter teacher was better and it worked out for me.

Is programming hard? of course, it is. I will be lying if I tried to claim it's not but just like further mathematics, there's an approach you can follow that would simplify your learning experience. programming is hard when encountered for the first time. This is obviously normal because your brain at that point has not gotten used to it. The human brain has the ability to change and adapt as a result of experience. This is called Neuroplasticity.

Here, I will take you through some steps that made the terrifying further mathematics become my best subject, as these principles have proven to be true in my programming experience.

1. Know thyself:

Socrates one of the greatest philosophers of his time was known for his statement "Man know thyself". This statement happens to cut across all matters of life. you can't imagine how much good you can do for yourself when you understand what works for you. I had a neighbor in my younger years who could read his books with an earpiece on and music banging on his eardrum. I decided to try it out one day because I felt intimidated that he could do that and I could not but it didn't turn out well so I abandoned the idea.

So many people get frustrated at learning programming simply because one of their friends that started same time with them is now building mobile applications whereas they are still battling with functions and arrays. Hey, stop!!!. Life is not a competition. There are so many problems out there to be solved and that friend of yours will not be able to solve all of them.

Therefore, know yourself and what you can do and take it one step at a time. some people can understand after one read, but some others after 10 reads, know how you understand and learn according to how you understand.

2. Move at your pace:

After you've known yourself and what you can do please do well to move at your own pace. I have this friend, we entered the tertiary institution together and we bother had great plans of becoming great programmers(which we are already and yet to be). So as we progressed this friend of mine began to build things I could not even fathom. I was really intimidated and tempted to switch from my initial goal which I had set for myself. He built mobile applications. During that period, I spent so much time learning data structures and algorithms. A time came people began to point me to his achievements and all I had as at then was just algorithms but no application to show for it. Trust me the long time I spent on those concepts is paying off today. I hardly come across a concept I do not understand and I pick up anything and learn them in a matter of days.

Learn at your pace "Everyone is the fattest on his own lane". Always make sure you understand the fundamentals and move to the next thing on your list while still applying the previous ones you learned

3. Be Consistent:

The word consistency can not be overemphasized. Before anyone becomes a professional in any field it takes years of consistency. you may be wondering whether I became a guru in mathematics just because a new teacher stepped in. No, It wasn't just because we had a new teacher but because I consistently solved what he had taught in class daily. I made maths my primary food. I ate it every day and sooner than I thought the results began to show.

This is true in any field. Give it enough time and you'll soon be a master at it. So keep tackling programming challenges. you can register on %[hackerrank.com] or geeksforgeeks.org and many more. These are sites where you can get weekly or daily challenges that would shape your brain to think logically. You won't find it funny at first but remember only those who remain consistent at doing things right will reap the benefits at the latter end.

4. Mentorship:

Sir Isaac Newton is known for saying “If I have seen further than others, it is by standing upon the shoulders of giants.” As I previously said when the further maths teacher was replaced with a new one, my leap in mathematics started. This was because I took the new one like my mentor, someone I could run to when things became hard for me and he was always there to help out.

This is so true of my programming experience, In my early years as a programmer, I had no mentor, not because I did not want one but simply because there was no one I could look up to. This made me spend so much time on concepts and problems I was facing. some problems took me weeks to solve and beyond that I was confused. When I finished learning one concept I would be so confused as to what to learn next. So this frustrated me and it made programming look so difficult for me.

One day I finally found someone I could look up to and the journey since then has been smooth. I must say mentorship is very important, It will help you to climb on someone else's experience and make things smooth for you.

5. Get a good Book:

programming for me started with watching youtube videos. As good as those videos are they do not give you the nitty-gritty of things to take note of. A day came I was discussing with a senior in the field and he started mentioning so many things I was unaware of. After watching so many youtube videos I thought I knew so much already until my conversation with him. He gave me some advice which I took seriously on that day, He said and I quote "I read good books or pdfs and only watch youtube videos when a concept is not well understood from the book".

To make programming a lot easier for you take up a good book recommended by your mentor and only consult youtube when a concept in the book is not well understood

Conclusion

So I have been able to share my thoughts on how one can approach programming and make a smooth ride over it. This does not in any way mean it won't be hard at some point but these few points will spare you from despair. We all look foolish when we come across a concept for the first time but with a little bit of resilience, one tends to master the art.