Skip to main content

I Love Programming

· 3 min read

I love programming. I really do. To me, writing a program is an act of creation akin to giving new life. In the right hands, lines and lines of code come together like magic that gives purpose to their existence. Part of the journey of writing programs involves learning new technologies (languages, frameworks, techniques, etc.). This usually involves a lot of reading Web articles, blogs, newsletter subscriptions, and tech magazines.

But as I step into another phase of life (goodbye bachelorhood (;_;) I find that I can spare less and less time doing all of these.

test

I have also found myself getting more and more disinterested in learning new frameworks. I can remember that when I started out doing PHP professionally, I had searched fervently for the "right" framework to use - CakePHP, CodeIgniter, Symfony, Zend Framework, you name it. My objective was to establish a best practice approach to writing code that my colleagues are able to understand and follow up on.

After settling on one PHP framework, I then turned to the "right" library for writing frontend code (JavaScript). It had to be powerful, easy to use and flexible. I researched on Prototype, Scriptaculous, jQuery, Dojo, Ext JS, MooTools YUI and even Google Web Toolkit. Naturally, I was also looking for a similar framework for CSS but nothing viable existed back then.

In the years that have gone by, frameworks and libraries have been popping up faster than one can learn the new one with any depth. New languages (CoffeeScript) have even been created to be transpiled into another one (JavaScript). Heck, JavaScript has even matured into a server language in the meantime.

With all the new hotness appearing so quickly, framework fatigue can really set in fairly quickly. Even without that, it has become impossible for someone like me, who dabbles in both the frontend and backend, to keep up with everything.

“But is keeping up with everything, knowing all the new, cool stuff really that important?”

This is a question that has popped up in my head several times now. Like everything else, there is no straightforward answer. On one hand, there is definite value in learning frameworks that help you become more productive by reducing the amount of code you have to type yourself or simplifying code maintenance process. On the other hand, the time spent on learning the new thing can actually be spent on other more productive activities - coding or even updating the blog with new posts creates actual value.

Oftentimes, I reduce these two activities to this problem statement: I can spend time to learn new things that help me create stuff faster, or I can spend time to actually create stuff.

I feel that at this stage, I have spent all my life learning things and picking up skills. It is time to really put the skills to good use. I have come to the conclusion that it does not matter that the skills that I possess are not the latest and greatest, I should be using what I know to make stuff. There is no end to learning but the time has come where I should stop only learning and start creating.