I remember an era of my life back in the 90s when I used to use public transportation to travel like 50 km to just buy a book about C, C++, or Java. Back then there was no internet, and most of the technical knowledge could be gained either from software manuals, help systems implemented within the software itself, or through books. When talking about programming knowledge specifically, the only source back then was through books and nothing else!
Travelling back to our current time, everything is available through the internet. If you need books, videos, courses, trainings, or how-tos, even if you need someone to ask him a question or become your personal mentor, it is just a piece of cake.
Having said that, you don’t have an excuse not to learn and be an excellent developer or software engineer; everything you need is just one click away.
In my humble opinion, and although there are several aspects that impact your learning experience, the most important ones are:
I believe the above introduction is enough to show that all of us have enough resources now; everything is available over the internet, whether for free (i.e., online free trainings on YouTube) or for a specific fee that in most cases is not too expensive to pay (i.e., eLearning websites).
Ok, then what about the other two aspects: ‘Passion’ and ‘Continuity”?
If you want to succeed in anything, and I need to stress on the word ‘anything,” whether in your personal or professional life, you must have Passion. It is your main driver to succeed in anything; this is the only thing that no one other than yourself can provide. People who specializes in “human development” might be a bit upset when I say that even they can’t give you passion. The feeling of a positive vibe when you read or learn something new can’t come from outside; it must come from you and only you. If you don’t feel this way, then perhaps you have chosen the wrong field and might need to re-assess your options.
Ok, then you have the Resources and have enough Passion to proceed with what you plan to learn, then do we learn for a specific period of our lives, the answer is simply ‘NO’, in our profession we must keep learning all the time, let me give you a small example, back then when I was a developer I used to code in C/C++ on Unix systems, and yes I am in a management position now (but I still code until now 😉 ), but for the sake of argument let’s imagine that I didn’t switch to management and I am still a developer, a technical lead or an architect; then what would have happened if I didn’t learn new technologies, programming languages, or in other words I became obsolete like some programming languages or technologies !!
Hopefully, this would have shed some light on the idea that your continuous learning of new technologies is a must in an era where everything is moving very fast. Being passionate about your field or what you learn plus having enough resources is not enough. It can be enough for your short term plan, but for your long term plan, the three must go together hand in hand: ‘Passion’, ‘Resources,” and ‘Continuity.”