One of my favorite technical book series is The Architecture of Open Source Applications. Here is how the site describes the goal of the series:
In these two books, the authors of four dozen open source applications explain how their software is structured, and why. What are each program’s major components? How do they interact? And what did their builders learn during their development?
Any programmer will appreciate the value of that kind of detail. I certainly do! I’ve always wanted to write something in this style, so I was happy to get a chance recently with a post at work: Teardown: Refactoring Search from Django App to Microservice.
I tried to mention every major problem we ran into during the refactor, but I had to cut things just to keep the length down! It’s still a pretty epic read, just like my favorite chapters from The Architecture of Open Source Applications.