Are programming books worth your money?

Are programming books worth your money?

You've all seen programming books on the internet or in bookstores. But most of us know that those books are usually not relevant anymore, most of them are outdated. So should you buy them? I think you should, but there are a few conditions.

Maturity of the language

The maturity of the language is incredibly important for the relevancy of the book. I'll use two examples here. I bought a book for AngularJS to learn the languages. At the time it was already a few years old, so the book had a few gone through some revisions and was more in line with how AngularJS actually worked. Fast forward two years, I bought an Angular 2 book. Angular 2 was still in beta at this time and was constantly changing. I couldn't use the book at all because it was written before Angular CLI was in existence, which made the book useless. The only thing I could use it for was figuring out what the concept of the language was, but actual coding examples were irrelevant.

Application of books & personal skills

Books about data analysis with Apache Spark is really fun, but you won't be able to use them if you have no clue how to set up a server or work with databases. You should get books that help you to improve your skills, not books that are too complicated for your own skill level. You'll end up feeling dumb and unmotivated. You'll get to that level through practice and more practice. Start at your own level, or ideally, a little bit above your level to improve your skills. If you're just starting out, get very general knowledge books. They'll help you to start understanding how a language or technique work and it'll help you form a basis on which you can build skills. If you get very specific books right from the start, something like "Machine learning with Python", instead of starting with "Python: The beginner's guide", you will not understand why certain parts of the program behave the way they do.

Real-life application

I'm a PHP and Javascript programmer, this is why learning Python from the ground up, doesn't really make sense. It won't help me do my job better. However, knowing something from another language is definitely not a bad thing. Maybe you need to make a new application and your current programming language is too limiting to be able to accomplish this. Well, then you have a great reason to use another language that's much better up to the task. This project will help you develop new skills and build a better application than you'd be able to make prior to learning this new language. What I'm saying is, if you're a Javascript developer, don't start to learn something like C++. This won't have an immediate benefit for you and it'll most likely cost you a lot of time. My suggestion would be to slowly make your way towards the language, don't sprint there.

Books can be an amazing way to learn a new programming language, but keep in mind that the new language should be something that's achievable for you. Make the experience eye-opening and challenging, but don't make it an impossible task. When you challenge yourself you'll pick up the new language very quickly. If you make it impossible, you'll never touch the book again. Make sure the language you do decide to buy a book for is something that you'll end up using a lot of the time, otherwise you'll forget all about it and you will have wasted your time.

Have you found amazing programming books that have helped you to learn a new language? Share them with me on Twitter!

Posted on: September 16th, 2017

Subscribe to my mailing list

I'm not evil, I won't spam you.

© Roelof Jan Elsinga
KvK: 64377962
Algemene voorwaarden