
Ask HN: What technical books are you reading? - 6ak74rfy
I remember reading somewhere that many (most?) software developers don&#x27;t read even one technical book a year. I was curious what books the HN community is reading?<p>I recently picked up Operating Systems: Three Easy Pieces because I need to brush up my OS knowledge for work.
======
mrburton
1\. Building Evolutionary Architectures - A great book for those looking to
build an IT department that can meet the business needs of today and create an
organizational mindset that allows you to still be nimble and evolve to meet
future demands.

[https://www.amazon.com/Building-Evolutionary-
Architectures-S...](https://www.amazon.com/Building-Evolutionary-
Architectures-Support-Constant/dp/1491986360)

2\. Building Microservices - A great book by Sam Newman which Building
Evolutionary Architectures is effectively written upon IMHO. This book is
really more technical and gets into the weeds of building out systems using
microservices and it also touches based on CI/CD.

[https://www.amazon.com/Building-Microservices-Designing-
Fine...](https://www.amazon.com/Building-Microservices-Designing-Fine-Grained-
Systems/dp/1491950358)

3\. Inside the Minds - Although this book is old and talks about XML as an
emerging technology, it's exceptional in showing you how various CTOs think
and define their roles in different companies. It really drives home the
importance of having IT support business vs. just building out technical
solutions.

Note: Buy this book used and save yourself a lot of money. I got it for $2.58.

[https://www.amazon.com/Inside-Minds-Technology-Officers-
Peop...](https://www.amazon.com/Inside-Minds-Technology-Officers-
Peoplesoft/dp/1587620561)

4\. Release It! - A very good book that talks about important concepts in
building systems that can be released often. It talks about things like
Bulkheads, and circuit breakers; also mentioned in Sam Newmans book,. If
you're company doesn't have CI/CD in place and a proper release model, then
you should certainly read this book.

[https://www.amazon.com/gp/product/1680502395](https://www.amazon.com/gp/product/1680502395)

I have more books, but I don't want to flood this post.

~~~
alkhatib
I'd be interested in getting more recommendations, maybe you can have it
somewhere else and link it here? A blog/gist/Google Doc?

Thanks.

~~~
mrburton
Sure, I can compile a list of books. I'll do that later this week. You can
email me at my username + gmail. I'll also post it on HN.

------
tracer4201
Designing Data-Intensive Applications: The Big Ideas Behind Reliable,
Scalable, and Maintainable Systems

[https://www.amazon.com/Designing-Data-Intensive-
Applications...](https://www.amazon.com/Designing-Data-Intensive-Applications-
Reliable-Maintainable/dp/1449373321)

I read through this book last year when I saw it recommended on HN. I
recommended it to engineers on my team at work.

I’m reading it for a second time now, and just finished chapter 2 today. It’s
dense but an amazingly detailed and thorough text.

------
Jtsummers
Related to tech but not technical:

 _The Psychology of Computer Programming_ by Weinberg. It's a bit dated
(references PL/I, tapes and punch cards), but the content on team structure
and programming psychology is actually pretty good and mostly seems to hold up
(based on my own observations of myself and offices). It's one of a variety of
books I've read recently that hasn't really taught me anything "new", but has
connected dots between topics or given me better terms or frames of reference
to discuss the topics.

Technical:

 _The Reasoned Schemer_ by Friedman, et al. Not using this for anything in
particular, but I wanted to do something fun that was programming. It's been a
very enjoyable read. About 2/3 through it but got distracted by moving and
other things. I'll pick it up after the move next week.

My objective is to read at least one full book per month this year (I often
have several books I'm reading at a time, not always to completion). So far
I'm on track with that. A variety of topics: system dynamics and systems
thinking, project/team management and dynamics, then various technical topics
like the above or mathematics.

------
shortcord
I’ve been reading Game Programming Patterns off and on. Not a game developer,
but it’s a pretty light read and interesting to see how design patterns apply
to making video games.

Next up after that I’m gonna finally finish Practical Object Oriented Design
in Ruby by Sandi Metz. I started this one after reading 99 Bottles of OOP.

Longer term project is to read through The Little Schemer and the other books
in that series like The Reasoned Schemer, The Little MLer, etc.

------
stanfieldecho
I'm juggling several books currently:

1\. Computer Networking: A Top-Down Approach 6th Edition. 2\. TCP/IP
Illustrated, Vol. 1 2nd Edition. 3\. Interconnections: Bridges, Routers,
Switches, and Internetworking Protocols 2nd Edition. 4\. Engineering a
Compiler 2nd Edition. 5\. Flex & Bison. 6\. Sed & Awk. 7\. K & R. 8\. The Unix
Programming Environment. 9\. Advanced Programming in the UNIX Environment.
10\. Linux Kernel Development. 11\. The Go Programming Language. 12\.
Introduction to Operating Systems Abstractions.

I recently discovered how much easier it is to use markdown for basic note
taking, I have been just using html, which is part of the reason I took a
break from reading, ha.

~~~
zapperdapper
Nice list. I was just leafing through Internetworking with TCP/IP Vol 2 by
Comer. Excellent book and a good one to add to your list. A bit old now, with
non-ANSI C code, but still very interesting!

------
slipwalker
I second the Building Evolutionary Architectures. Also enjoyed "Kotlin
Programming: The Big Nerd Ranch Guide" ( [https://www.amazon.com/Kotlin-
Programming-Nerd-Ranch-Guide/d...](https://www.amazon.com/Kotlin-Programming-
Nerd-Ranch-Guide/dp/0135161630/) ).

------
segmondy
Flipping between these 3

Designing Data Intensive Applications

Control Theory for Engineers

Enterprise Architecture & Integration

~~~
chatmasta
> Enterprise Architecture & Integration

Curious about this one but not sure which you're referring to. Who is the
author?

------
devlife
The art of Unix Programming [https://amzn.to/2I2CVvX](https://amzn.to/2I2CVvX)

My first reading of this book convinced me to move away from Windows. I
usually read it at-least once a year.

------
gashaw
Growing Object Oriented Software Guided by Tests. So far I didn't learn
anything from it, and it's hard to read more than ~10 pages without falling a
sleep.

Next on my list are Software Architecture in Practice and Programming Pearls.

------
alkibiades
none. i rather spend my time outside of work on something else. currently
reading the brothers karamazov and moby dick.

------
injb
The No Bullshit Guide To Linear Algebra.

~~~
usgroup
What bullshit does it leave out ?

------
surfsvammel
Always rereading Effective Java.

------
karolist
I'll structure this in "current/future/recent_past" format if I may.

Currently:

* The Go Programming Language

[https://www.amazon.com/Programming-Language-Addison-
Wesley-P...](https://www.amazon.com/Programming-Language-Addison-Wesley-
Professional-Computing/dp/0134190440)

* Building Microservices

[https://www.amazon.com/Building-Microservices-Designing-
Fine...](https://www.amazon.com/Building-Microservices-Designing-Fine-Grained-
Systems/dp/1491950358)

Plan to do next:

* Designing Data-Intensive Applications

[https://www.amazon.com/Designing-Data-Intensive-
Applications...](https://www.amazon.com/Designing-Data-Intensive-Applications-
Reliable-Maintainable/dp/1449373321/)

* Designing Distributed Systems

[https://www.amazon.com/Designing-Distributed-Systems-
Pattern...](https://www.amazon.com/Designing-Distributed-Systems-Patterns-
Paradigms/dp/1491983647)

* Unix and Linux System Administration 5th ed, but probably just gonna skip/read chapters of interest, i.e. I wanna get a better understanding of SystemD.

[https://www.amazon.com/UNIX-Linux-System-Administration-
Hand...](https://www.amazon.com/UNIX-Linux-System-Administration-
Handbook/dp/0134277554/)

Read last month:

* Learning React

Good for a quick intro but I probably wouldn't read cover-to-cover again, some
sections are old, but overall an OK book.

[https://www.amazon.com/Learning-React-Functional-
Development...](https://www.amazon.com/Learning-React-Functional-Development-
Redux/dp/1491954620/)

* React Design Patterns and Best Practices

Really liked this one, picked a tonne of new ideas and approaches that are
hard to find otherwise for a newbie in JS scene. These two books, some time
spent reading up on webpack and lots of github/practice code made me not
scared of JS anymore and not feeling the fatigue. I mean, I was one of the
people who dismissed everything frontend related, big node_modules, electron,
complicated build systems etc. But now I sort of understand why and am on the
different side of the fence.

[https://www.amazon.com/React-Design-Patterns-Best-
Practices/...](https://www.amazon.com/React-Design-Patterns-Best-
Practices/dp/1786464535/)

* Flexbox in CSS

Wanted to understand what's the new flexbox layout is about since it's been a
while when I've done some serious CSS work. Long story short I made it about
half of this and dropped it - not any more useful than MDN docs and actually
playing with someone's codepen gave me better understanding in 5 minutes than
3 hours spent with this book.

[https://www.amazon.com/Flexbox-CSS-Estelle-Weyl-
ebook/dp/B07...](https://www.amazon.com/Flexbox-CSS-Estelle-Weyl-
ebook/dp/B072JHT5L4)

~~~
apodobnik
Designing Data-Intensive Applications is fantastic.

