In many ways, I don’t think that writing code and working out are very different. For both, you have to undertake a journey of gaining knowledge and utilizing it in practice. This must be done on a regular basis, lest you get rusty. You have certain people who really take it all very seriously and become superstars, and others who just cruise by, only doing the bare minimum, and even worse — those who do nothing at all. Both branches of knowledge require good and strong habits to be in place, both will help you in many parts of life that initially don’t even seem related, and both are intimidating to those who are inexperienced.
Habits and routine
As with any skill, you need to practice, practice, and practice. You need to continuously challenge yourself, continuously put yourself in a learning process, and above all — make learning the skill a habit. Even doing something at half effort on a regular basis is better than doing it full effort but only once in a while.
With both fitness and learning programming, it has to be part of your weekly, or even daily routine. Both skills permeate their effects throughout the rest of your life — whether its an overall shift in your approach to health as with fitness, or a different way of looking at projects, solving problems, and perhaps even your employment situation as with programming.
I’ve written about the importance of being aware of your habits and working to mindfully ingrain good ones into your life. Working out and writing code are just habits in the beginning.
Start at any age
It’s easy to see examples of those who are killing it in their field at a young age. You naturally compare yourself to them, thinking how you barely had anything together at that point in time. Thoughts like this can easily lead to the idea that you’re too old (or too far along a different path) to start something new and something that, especially in the beginning, seems very complicated and taxing. In reality, and as countless examples show, such is not the case. Whether you begin with half mile runs or just learning the introductory aspects of web development, it’s easy to begin, especially with the wealth of free information readily available.
Progress, or lack thereof
With both working out and writing code, you always need to be operating at the peak of your skills to make good and timely progress. If you stay with the easy path, you don’t grow. You need to always find a new challenge and find ways to refine and improve your current skillset by looking for the difficult opportunities. Momentum is vital here.
Time ticks on, and there’s the saying that is along the lines of “the best time to start is two years ago, but the second best time is now.” You can find yourself in a year with a vastly improved skillset in and seeing the benefits of working out and programming, or you can find yourself in the same state that you are now. The way that you use the interim time is vital — same goes for learning and progressing at anything.
Software is continuously improved as time goes on and it’s constantly worked on with small, medium, and large goals in mind. One’s level of skill development follows the same process. As you learn more about programming, how to approach different problems, what languages and frameworks to use for various applications, and so on, you’ll become more and more confident and able. As you run more, lift more, work on your form, eat well, and so on, you’ll become similarly more confident and able.
Get started. Make sure you have specific goals to focus on, rather than a nebulous idea of where you want to be — this is of the utmost importance. Break down how long you want to give yourself for those goals, and break it down even further into milestones that you believe are attainable at regular intervals of time (for example, 3 months, 6 months, and 9 months). The first step is the most difficult, but once you build momentum, you’ll reap the benefits. Good luck.