Reading

I used to be an avid book reader. For some years, university education made me hate reading for fun, but since graduating I’ve started enjoying a book again.

Here’s a list of books that I’ve read since early 2019, along with tweet-long comments. Titles in bold are ones that I would highly recommend.
Hope you can find something interesting here as well!

2021

  • Snow Crash by Neal Stephenson
    It’s been a couple of months since I finished a book. Snow Crash was just fun! Turns out, I’ve missed that factor!

2020

Technical

  • The Design of Everyday Things: Revised and Expanded Edition by Don Norman
    The first book I finished this year, and it was awesome. I found new respect for professional designers. Whether you need to design better smartphones, APIs, cooking utensils, or just vent about difficult-to-use elevators or stovetops, this is for you.

  • Clean Code by Robert C. Martin

  • Domain-Driven Design Distilled by Vaughn Vernon
    Unfortunately, not what I was looking for. Maybe the material was too distilled, and needed that extra context and depth

  • Cloud Native Patterns: Designing change-tolerant software by Cornelia Davis
    Overall a solid book, and it picked up the pace as it went on. Even though it doesn’t cover any greenfield advances, it succinctly describes most of the things I’ve learned by practice when working with distributed software and not in a shallow way. Huge +1 for the hands-on examples that exist.

Non-Technical

Small-scale

2019

Technical

  • Designing Data-Intensive Applications by Martin Kleppmann
    A masterpiece. Whether you’re designing distributed systems, want to learn more about how databases work, or are just interested in software, it’s a must-read. It’s a bit on the heavy side, but it tied together so many ideas in a beautiful way.

  • Building Microservices by Sam Newman
    I read it immediately after “Data-Intensive Applications”; the two had some material overlap so I was drawing comparisons. Honestly, it was a bit scrappy, overall meh. I didn’t enjoy the style, but still conveyed some cool ideas in an approachable way.

  • The Go Programming Language by Alan A. A. Donovan, Brian W. Kernighan

  • The Mythical Man-Month by Frederick Brooks
    I’ve lost count of how many times I’ve seen people recommend “The Mythical Man-Month”. I borrowed it from a friendly library, and blasted through it during the January vacation. It indeed is “the classic book on the human elements of software engineering”.

  • Cracking the Code Interview by Gayle Laakmann McDowell

  • The Pragmatic Programmer
    It’s one of the books I wish I had read a few years earlier. I crunched through one of the earlier editions; while the tech mentioned might be outdated, I feel it still is one of the must reads for anyone trying to enter the field.

  • Sprint: How to Solve Big Problems and Test New Ideas in Just Five Days

Non-Technical

  • The Three-Body Problem by Cixin Liu
    If possible, go through it without being spoiled (don’t even read the back cover). I enjoyed the original translation as it was able to maintain a lot of exotic elements of the author’s native chinese and didn’t read like “just a book in English”.

  • So Good They Can’t Ignore You by Cal Newport
    This book changed the way I see my career, and software engineering in general. It helped me create a mental path of who I want to become, and how to achieve the goal to hone my craft and become an expert software engineer (it’s a long conversation).

  • Powerful: Building a Culture of Freedom and Responsibility by Patty McCord

  • L’Étranger (The Stranger) by Albert Camus
    A small book I read during a car trip. It put me in thoughts and provided hours of conversations. What more could I ask for?

  • ADP 6-22 Army Leadership and the Profession by United States Government US Army
    A little too militaristic at times, but it was actually very well written, and with minimal-to-none self-help crap. I was impressed that I could relate to both good and bad leadership examples that I’ve encountered in the real world. I would definitely re-read it.

  • Soft Skills: The software developer’s life manual by John Sonmez
    A little more self-help-y than I’d like; I will admit I gave up on the last chapters about hitting the gym etc. But as far as building a career, and a name for yourself, I’m glad I read it soon, and wish I had read it even sooner.

  • How to Win Friends and Influence People by by Dale Carnegie
    I had avoided reading this book, solely due to its title. I still cringe a little when I see it on my bookcase, or when recommending it to people; but I’m actually recommending it! After all these years, it continues being relevant, although many times I thought to myself “this could be summed as be a good person”. Don’t feel guilty about skimming over some of the example the author poses to strengthen their advice.