What to read as a developer
Tags: programming, books, webdev
Published: 2023-02-14 14:44:23

I have seen a lot of articles here about what books you should read as a developer and even some about what books you **must** read. I often feel that articles telling developers what they must read lead to junior developers getting stressed over the fact that they haven’t read all the books listed or that they have no clue about how to understand the information in some of them.

This article is not a list of books you should read or must read, it is rather a discussion about the major parts you should read about and how to think when looking for books to expand your knowledge. We can also say that this article is written from the perspective that you like to read books, want to read books about programming, feel that you should read more books about programming, or something like that. The goal is not to tell you that you have to read books to be able to work as a developer. Instead it is to tell you that there are some good books to read and how you can think when looking at what to read.

As a start, if you see yourself having a main programming language, read books about it. Reading books about your main programming language gives you perspectives on how other people see the language that you work with. This is because they have to teach or discuss certain parts of it. It can also give you insight into how certain parts of the language are designed and why it was designed in that way. From a learning perspective it can also be easier for you to see examples in a language you have worked with for a while when trying to learn new concepts.

There are probably people around you with different roles in the team. Ask them for pointers to books, blog posts, web sites and other things that you can read to understand their work in the team better. Asking for something to read tells them that you are interested in learning about what they do without taking up their time in the beginning. Spending time talking with them about what they do gives you a bit of knowledge about their field of work but it also takes time from the two of you, showing that you spend your own time learning about what the other roles are doing shows that you appreciate the work they do. I am not saying that you shouldn’t talk to them to discuss what they do, I am rather saying that you can build on top of that with more knowledge and appreciation for them.

Try to find another programming language that you have never worked with before, read something about the foundations of it, and try it out for something small. What can you learn from the philosophy of this other language? Didn’t find anything to learn? Try doing it again or letting the knowledge sink in for a while.

However, the books that I would consider most important to read are books that have a more general approach to development, books where the programming language used in the book isn’t the most important thing. These are books that give you knowledge that you can use even if you switch programming languages for some reason. This is where I feel that I can list some books for you to read, books that discuss our work at a higher level and not spend time arguing about if you should end your lines with a semicolon or not when writing JavaScript.

For the more general parts we are talking about books like the following:

- The Pragmatic Programmer (David Thomas and Andrew Hunt)
- Code: The Hidden Language of Computer Hardware and Software (Charles Petzold)
- Refactoring (Martin Fowler)
- Clean Code (Robert C. Martin)
- A Philosophy of Software Design (John K. Ousterhout)

There is no best time to read each of the books that I listed above. Instead, read one of them when you feel that you have the time to do so. I am not saying that you must read these books, just saying that they are good to read.

Do you work with web programming? Read something about design. Interested in how designers think? Read something about design. Perhaps something like Don Norman’s classic The Design of Everyday Things. If you want to learn more about how to think about UI design as a developer you could perhaps read Refactoring UI by Adam Wathan and Steve Schoger.

That other people say that a book gave them something specific doesn’t mean that the book will give you the same things or anything at all. We are all different.

And don’t forget to read a couple of novels, poetry or things like that from time to time. All your reading should not be for work. We need to relax from time to time and books can help with that too.

So, please stop telling people what books they **must** read and start talking about books that gave you something. I would suggest you talk about what each book gave you, and at what time in your life. Just a change from “you must read this” to “I think you should read this at this point because it gave me this when I read it” will help the discussion a lot. Learning more about what the people around us do and showing interest in their work can lead to many new things in our own field of work. And don’t forget to read books, both to evolve in your work but also to relax, dream away, go on adventures to other places and so on.