In a 1995 interview Steve Jobs said he thought that computer programming should be a liberal art. In other words, he thought everyone’s education should include a year of learning a computer language, because it teaches you how to think in a certain way. If that was true in 1995, just think how much more crucial knowing how to code in some language is today. Perhaps learning a computer language should be on your to-do list; maybe a new year’s resolution?
If you want to learn a computer language a logical question would be which one to learn?
There are a multitude of ways to learn languages, but interaction is required. So if you start with a book or an online course (like coursera) you have to work the exercises (problem sets, whatever). Coding is hard, you have to beat your head against a problem for a long time to get a eureka moment that will let you move on. You have to do this again and again.
These courses/books will get you started but really to learn a language, you have to solve your own problems with it. This requires a lot of staring at your screen, googling, and time on stackoverflow. But in the end you gain a powerful tool and a marketable skill, and — if Steve Jobs is right — a new way of thinking, solving problems, and seeing the world. Definitely a new year’s resolution worth pursuing.