After my adventures with Drupal and content management systems, I decided to try something different – I wanted to learn a programming language.

I have always been interested in coding. While I did dabble in some basic HTML, I never got around to anything serious. I decided I would learn a programming language, and use it.

Source: xkcd

Given my time constraints, it made sense to be ‘self-taught’. However, I had a more immediate roadblock – what programming language should I start with?

The more I thought, the more confused I got. Until finally, I decided to go with HTML. There were many reasons (ranging from the ease of understanding to applicability), but the primary one being that I had already dabbled in it.

HTML, CSS and everything around it

Once I decided on what to start with, I looked around for options on how I could learn it. There seemed to be an even split between learning from a book versus from a tutorial. And, it eventually boiled down to a personal choice.

There are many tutorials available online, that focus on various aspects of programming – and these do not include the more formalized elearning formats of Udemy or Coursera. Searching for the best options, I ended trying w3schools, and FreeCodeCamp. Both offer a comprehensive syallbus, but I preferred the latter. Its course structure and exercises made for a compelling learning experience.

I spent a month or so doing the course, and I thought it was the perfect time to graduate to something a bit more complicated.

The end objective was to always create an application without dependencies on other developers. And, it made sense that a knowledge of HTML coupled with a programming language would help do just that. Having worked in a technology company, my bias was towards leveraging open source technologies. This bias, along with general adoption and support, helped me shortlist three programming languages – PHP, Java, Ruby on Rails.