Books every programmer should read

“Best programming books” and similar queries are something that every programmer has searched for. In fact, Google Trends shows us there is no decline in those searches.

In his blog, Pierre de Wulf, “Tech Explorer, Python Lover, and Indie Hacker”, explores the subject by scraping web pages, forum posts, and discussions and digests it as a list of most recommended programming books. Here are some of them:

The Pragmatic Programmer by David Thomas & Andrew Hunt

The first one on the list is a 20th anniversary edition. That would mean people were programming 20 years ago(crazy, right?). But the problems that developers faced 20 years ago and now are still the same. Those are not the technical issues, specifics of languages or tools, but the way a programmer does his work. To quote the book: “Programming is a craft”. And every craft has its tried and true practices, techniques, and habits that transcend years, technologies, and paradigms. Sure, one can try to acquire that knowledge by trial and error, or maybe learn it from the generations of masters before them.

Refactoring by Martin Fowler

The second entry in our list is another reprint. In this case, it is about a tricky subject of refactoring. To quote the author: “Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.” So it’s about changing existing code, right? But why would we change our code if it was working? Maybe we inherited a legacy project. Maybe the user requirements have changed. And just maybe, our code wasn’t really that good, no matter the reason. This book is a catalog of refactoring techniques and of “code smells” which point to code segments that may require change and how to change them. The second edition improves on the first, changes some of its chapters and instead of Java, it shows its examples in JavaScript.

Head First Design Patterns by Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson

A part of Head First book series, which features a distinct writing style, where a complex topic is explained using a conversational form, redundancy, and multiple learning approaches that activate both sides of your brain.

This edition covers an important topic of Design Patterns, which are considered as general, reusable solutions to commonly occurring problems in software design. There are even patterns for specific architectures such as microservices. Some consider it as an entry-level book to the subject, while Design Patterns: Elements of Reusable Object-Oriented Software, mostly referred to as Gang of Four book as an homage to its authors, is a defacto reference guide.

In contrast to Gang of Four, it slowly explains the concepts with lots of examples, situations, and even comics, with its examples written in Java.

We do recommend starting with Head First and combining it with Gang of Four for better understanding.

This is our first choice, but feel free to check other books in the list

You may also like

June 17, 2024

Quests in Code: Is Game Development the Ultimate IT Career Move for You?

Game development has captured the imagination of IT students and professionals alike. The video game industry, now a multi-billion dollar behemoth, is booming like never before.  But why is it suddenly the talk of the tech town? Is it the allure of cutting-edge tech or the tantalizing promise of dream jobs? Get ready to find […]

June 13, 2024

Bugs and Scalpel Slips: Why Software Development Demands Surgical Precision

A surgeon and a programmer walk into a bar. But it’s not the start of a joke—it’s a scenario highlighting both professions’ weighty responsibilities. Surgeons, with their scalpels, work with life and death hanging in the balance. Armed with code, programmers might not hold lives in their hands, but their mistakes can still wreak havoc […]

June 10, 2024

Staying Motivated in the IT: Student's Guide

Securing a job in the IT field can feel like trying to crack the toughest code, especially without prior experience. That’s where internships and practical experience come into play, acting as the perfect stepping stones for your career path.  At Lilly021, we’ve noticed some young tech enthusiasts feeling a bit blue, likely due to market […]