5 Books Every Programmer Should Read
Books of programming topics seem to get more and more to a relic of a time long past. But in my opinion, it’s a shame that that’s happening. There are many very good books out there that even today give essential insights and manage to outlast this abnormal fast-changing field.
Therefore in this article, I want to share five of my favorite books about programming topics that in my opinion, every serious programmer should have read at least once.
Clean Code is the first book of the Robert C. Martin series which is also known as the clean code series and (obviously) written by Robert C. Martin. The overall goal of the author with his series is to have a part in improving software craftsmanship by providing best practices and essential insights within the field of professional development. The books are not only based on theoretical concepts but rather on his own practical experiences from real software projects.
Nevertheless, Clean Code is not only beneficial for professional developers but also for people who want to take their coding skills to the next step. It takes part in the clean code series by providing essential information about how to write overall better code, show common mistakes, and how to avoid them.
If you are interested in writing good code and want to be a good programmer I highly recommend you to read this classic book. Additionally, I recommend you motivating your colleagues or teammates to also read it. I promise that your codebase will get way cleaner if you apply even only some of the rules Robert C. Martin presents in his book.
Clean Architecture is the next of the three books I want to present to you from the clean coding series. As you probably already imagine by the title, the book is about best practices for building up a clean software architecture.
The author does not provide strict lines to go for, but rather offers a ruleset for software architecture that can be applied independently of the type of project you are working on.
From my own experience, I can promise you that by applying these “universal rules of software architecture” you can drastically improve the architecture not only of your current but all of your future projects. The book is a no-brainer that you can take out from time to time from your book-shelf and have a read again.
Even if you are not a software architect by yourself and only apply the rules by someone else, every programmer needs to understand how to build a clean architecture.
The third and last book of the clean code series I read by myself and want to propose to you is Clean Coder. The book can be seen as the follow-up to Clean Code and is not directly about writing code but the work as a professional software developer.
The book is in my opinion essential if you plan to start a career as a professional developer, just entered your first job, or just still didn’t have a read on this goldmine of takeaways. The topics of this book cover the very basics like professional behavior on the job over practical techniques, communication, time management, and many other essential topics.
Overall, the book will lead you the way to get to a professional level, away from, but not exclusive to, the actual development work.
Refactoring: Improving the Design of Existing Code
“Refactoring: Improving the Design of Existing Code” written by Martin Fowler with Kent Beck is about the process of code refactoring and how to proceed with legacy code by showing various practical examples.
Besides the practical examples, the authors discuss more general concepts regarding the process of refactoring. It can be said that the book is a classic when it comes to the topic of software development books and can almost be seen as a kind of lexicon which various best practices.
So if you have a tough time fighting with legacy code or just want to have a general guideline on the topic of refactoring you definitely should have a read.
Head First Design Patterns
The last book I want to propose to you is “Head First Design Patterns (A Brain Friendly Guide” written by Elisabeth Robson and Kathy Sierra which is with almost 700 pages a huge bible including almost all classical design patterns a programmer should have heard of.
The book has various practical code examples and is (just like the title suggests) written in very easy language and does its best to support you to understand really understand each of the principles.
For example, it provides at the end of each section questions a naive coder and maybe you would ask. The book is also very well illustrated and even it was first published in 2004 still has its place as a beneficial read.
Note for provided product links: Because I get commissions for purchases made through links in this post, you can support my work as a writer if you like.