What reference books should devs have handy on different CS subfields?

wintermute21 profile image John Best ・1 min read

Say you were starting a new role soon, what CS books should you always have as a reference?


markdown guide

I'd have a language reference book, and a platform reference book.

If we are using a lightweight management process, like Scrum, I'd have a book on that too.

I may also have a variety of specific technology books (e.g., OpenGL, Vulkan, Metal, CUDA).

I also tend to have a bunch of "best practices" books for the language being used. Like Effective C++, Modern C++ Design, C++ Coding Standards, et cetera.

My "library" of must have books are: Code Complete, Writing Solid Code, Debugging the Development Process, Design Patterns, AntiPatterns, Clean Code.

One of my colleagues I highly respect strongly recommended these books to me as ones I should add to my library: Influencer, Getting More, Measuring and Managing Performance in Organizations, The Power of Habit, Drive, Test-Driven Development, Growing Object-Oriented Software, Refactoring.

And although all those books may be available in electronic form, I prefer actual books.


Anything you recommend for SQL/SQL Server/Database Design?


Sorry, I haven't needed to work with SQL since the late 1990s. At that time, I just used the Microsoft book that came with MS-SQL.

That particular project had a full-time dedicated database architect who constructed all the ERDs, models, schemas, and stored procedure APIs. And he co-ordinated with the database administrators so everything would scale to the needs of the project.

He was awesome. I wish I knew what tools he used, because the output was very nice. But because of that, all the gory details were already ironed-out and given to us developers on a silver platter.

At some point after I left the project (and the DBA had also moved on), the project moved from MS-SQL to IBM DB2. I've always wondered how well that transitioned.

In general, I think the publisher Addison-Wesley produces top-notch books. Rarely do they ever print a stinker. My next favorite publisher is O'Reilly, but sometimes they have mediocre or stinkers so you need to be a little more careful.


I would rather have cheatsheets around, not books, especially not hard cover ones, they do not have a good search algorithm, so they cannot be "handy at need".

Also I learn more new (relevant for nowdays) techniques and solutions from conferences, as example see my Advanced JavaScript 2017 talks playlist

Books are great for building a solid knowledge base, but in my fields (servers and web development) things are changing too fast to wait/read books

Dev.io topis on books
all the first 10-15 google search results on "top software books" are ok


Agreed. I read books more for learning concepts and use articles, talks, and documentation for learning technologies.


That makes sense.

Thank you. :)