My top five picks on technological / technical books I read in 2021 and some honorable mentions. I also read some fiction and non-fiction, in fact I finished a great science fiction series, Remembrance of Earth’s Past made up of three books: The Three-Body Problem, The Dark Forest and Death’s End by the Chinese author Liu Cixin, which is one of greatest science fiction series I ever read (I’m a big fan of Russian literature and science fiction). But for this list I picked the top tech-related ones.
# 5. Your Computer Is On Fire
Edited by Thomas S. Mullaney, Benjamin Peters, Mar Hicks and Kavita Philip
This book is a collection of powerful essays from a great number of authors: Janet Abbate, Ben Allen, Paul N. Edwards, Nathan Ensmenger, Mar Hicks, Halcyon M. Lawrence, Thomas S. Mullaney, Safiya Umoja Noble, Benjamin Peters, Kavita Philip, Sarah T. Roberts, Sreela Sarkar, Corinna Schlombs, Andrea Stanton, Mitali Thakor, and Noah Wardrip-Fruin. Technology doesn’t happen in a vacuum. Much is talk about how “tech will change the world”, “create experiences”. Well, this is intrinsically political. Is about we live, share, trade and connect. Nothing more political than that.
I would never say judge an essay by its titles, but only take a glance at the titles could give a hint and take your attention. And yes, the essays here are great and direct to the point as the titles make clear. And if you work with technology, I urge you to give this book a chance.
- Part I: Nothing Is Virtual
- The Cloud Is A Factory
- Your AI Is A Human
- A Network Is Not A Network
- The Internet Will Be Decolonized
- Capture Is Pleasure
- Part II: This Is An Emergency
- Sexism Is A Feature, Not A Bug
- Gender Is A Corporate Tool
- Siri Disciplines
- Your Robot Isn’t Neutral
- Broken Is Word
- You Can’t Make Games About Much
- Part III: Where Will The Fire Spread?
- Code Is Not Empowerment
- Source Code Isn’t
- Skills Will Not Set You Free
- Platforms Are Infrastructures On Fire
- Typing Is Dead
In times like theses in which tech is under (the much needed) public scrutiny, is important to broader our view of technology as “technical-only” and understand the tangled web of political, social and power dynamics in place.
# 4. Sooner Safer Happier
One review title on Amazon says Most honest book I have read in last 4 years. I agree. Because it speaks against the so-called Agile Industrial Complex that broke agile, or well, Agile™. I already wrote about this book earlier this year and even made a whole talk around it, which I called PeopleOps (content in pt-br) and made a mix with another great book, Team Topologies.
Is a much needed look at Agile landscape that spoke a lot with me and how I see the landscape.
# 3. Cloud Native Patterns
Cloud Native Patterns: Designing change-tolerant software by Cornelia Davis is a brilliant book. The historical perspective the author gives us helps build our mental models and see the patterns that we are so deep that we even realize are constructions. Like the “request/response” model that permeates much of our development and the move to more reactive systems like the Event Driven Architectures.
This is a must read for everyone in the Cloud field. The patterns covered are:
- Event-driven microservices
- App redundancy
- Application configuration
- The application lifecycle
- Accessing apps
- Interaction redundancy
- Fronting services
- Cloud-native data
# 2. The CDK Book
In the 2021 I developed a lot with AWS CDK. In fact, I started nothing on AWS without using it. Is a powerful tool.
I made talks about CDK at:
- DevOps Extreme
- AWS Community Day — Brazil
- And another session on TDC Future
And 2021 was an exceptional year for CDK with a great spotlight in the work by Matt Coulter and off course, the launch of CDK v2, which comes with some significant improvements. No more problems with versioning and a model better to understand. The CDK Book is The DynamoDB Book this developer tool deserved.
This year I even contributed with code for CDK!
# Honorable mentions
This was a year I had a deep dive in DDD — Domain Driven Design, so my honorable mentions is all about DDD:
- Domain-Driven Design: Tackling Complexity in the Heart of Software, the "blue book" by Eric Evans, who "started thee fire". I also read before, but now after some years working with architecture in mind I come with fresh eyes and a much broader understanding than before.
- Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy, this book didn’t make the cut on my top 5 because I didn’t finish yet. I’m in about the middle and loving it. I think the author, Vlad Khononov, makes a great work of "organize" the content around DDD and gives new insights.
- Implementing Domain-Driven Design,also by Vaughn Vernon takes you far beyond "DDD-lite" approaches that embrace DDD solely as a technical toolset, and shows you how to fully leverage DDD’s "strategic design patterns" using Bounded Context, Context Maps, and the Ubiquitous Language. Is not as solid as Khononov’s book, but the breakdown could help a lot make more sense of the mind map DDD gives us to tackle complexity.
- Domain-Driven Design Distilled by Vaughn Vernon aims to be a concise, readable,and actionable book on DDD. "Distilled" is a term used even in Evan’s book and sometimes this book looks like a "DDD-lite" guide, but I think it serves as a good introduction
- The No BS TS book covers every single video in the popular No BS TS video series by Jack Herrington. Everything from basic types to generics, using Typescript with React and into Design Patterns.
# 1. Crafting Interpreters
Ever wanted to make your own programming language or wondered how they are designed and built?
If so, this book is for you.
As we move in creating the Lox language the author gives some historical background, trade-offs and every meaningful step. Even if you are interested in creating your own language, you will learn a ton by reading this book. You will be a better developer.
The author is kind enough to let everyone read for free the web version.