This is a list of books that I have read / am reading / want to read. This list is structured like a stack, meaning new books will appear at the top of this page and older books are further down in the list.
All books have a rating between 1 (don’t waste your time) and 5 (go, buy this book, NOW).
On the wish list
On the desk
On the shelf
- The art of thinking clearly by Rolf Dobelli (Rating: ★★★★☆)
99 cognitive errors in bite sized pieces. Perfect for the knowledge snack in between.
- How To Win Friends And Influence People by Dale Carnegie (Rating: ★★★★☆)
There is some great advice in this book for “winning friends and influencing people”. In the context of organizations, I would like to work in, I find learning and growing collaboratively more important. For that, some of the advice need adjustment.
- The People’s Scrum: Agile Ideas for Revolutionary Transformation by Tobias Mayer (Rating: ★★★★★)
Tobias, in his unmistakable way, describes Scrum as a framework to be filled by the people for the people. Lots of good stuff and food for thought. No half measures here.
- Elon Musk series by Tim Urban (Rating: ★★★★★)
This was the best read of the year for me. The series goes into Elon Musk, Tesla (and electric cars in general), SpaceX (and space travel in general), as well as, most importantly an explanation of the thinking that enables Elon Musk to do what he does.
- An Agile Adoption and Transformation Survival Guide by Michael Sahota (Rating: ★★★★☆)
Michael Sahota ties agile adoption (practices) and transformation (mindset) to the dominant culture of the organization. Lots of links to other models.
- Fearless Change: Patterns for introducing new ideas by Mary Lynn Manns and Linda Rising (Rating: ★★★★☆)
Many helpful patterns, some of which I implemented myself.
- The Purpose Economy: How Your Desire for Impact, Personal Growth and Community Is Changing the World by Aaron Hurst (Rating: ★★★★☆)
A good overview of how the economy changes over time. And a helpful model to determine what generates purpose for yourself.
He distinguishes between a purpose and a cause, which I found helpful.
- Reinventing Organizations: A Guide to Creating Organizations Inspired by the Next Stage in Human Consciousness by Frederic Laloux (Rating: ★★★★★)
An excellent resource for how modern (teal) organizations are structured and how they operate.
“Teal organizations focus on its members’ abilities to self-organize and self-manage to achieve the purpose of the organization. The hierarchical “plan and control” structure typical of Orange Organizations is replaced with a self-organizing structure consisting of small worker teams that assume all the traditional management functions as well. Positions and job descriptions are replaced with roles, where one worker can fill multiple roles. Unlike the fixed structures of Amber, Orange and Green organizations, the organizational structure in Teal is fluid, changing and adapting as circumstances demand to achieve the organization’s purpose.”
There is also a free online wiki and a presentation on Youtube (1:43).
- Talking with Tech Leads by Patrick Kua (Rating: ★★☆☆☆)
Doesn’t align with my idea of a tech lead and leadership in general.
- Thinking fast and slow by Daniel Kahneman (Rating: ★★★★★)
Lots of interesting facts about how our brains work. Explained entertainingly with lots of experiments.
- The AI Revolution by Tim Urban (Rating: ★★★★★)
A super entertaining and interesting dive into artificial intelligence and what it means for all of us.
- Liftoff: Launching Agile teams and projects by Diana Larson and Ainsley Nies (Rating: ★★★☆☆)
Advice on how to get a team to gel faster and perform earlier and better.
The Mom Test by Rob Fitzpatrick (Rating: ★★★★☆)
Lots of good advice and useful tips for customer interviews. Talk about their life instead of your idea. Ask about specifics in the past instead of generics or opinions about the future. Talk less and listen more.
Rework by I don’t agree with everything, but by and large, the authors describe agile software development without the buzz words.
AngularJS: Up and Running: Enhanced Productivity with Structured Web Apps by (Rating: ★★★☆☆)
Good and helpful code examples.
- Lean Analytics: Use Data to Build a Better Startup Faster by
Great collection of metrics and which business models and startup phases they are important for. (Rating: ★★★★☆)
- The Lean Entrepreneur: How to Create Products, Innovate with New Ventures, and Disrupt Markets by Brant Cooper and Patrick Vlaskovits (Rating: ★★☆☆☆)
- The Founder’s Dilemmas: Anticipating and Avoiding the Pitfalls That Can Sink a Startup by Noam Wasserman (Rating: ★★☆☆☆)
- Running Lean: Iterate from Plan A to a Plan That Works by Ash Maurya (Rating: ★★★★★)
The best book on Lean Startup I have come across so far. Ash describes a repeatable, actionable process for building products in few understandable words.
- The Startup Owner’s Manual: The Step-By-Step Guide for Building a Great Company by Steve Blank and Bob Dorf (Rating: ★★★☆☆)
A lot of valuables lessons about how to start a successful startup with the Customer Development method, first described in his earlier book Four Steps to the Epiphany. The book is pretty thick though and written by a university professor. Don’t attempt to read it cover to cover.
- The Ultralight Startup: Launching a Business Without Clout or Capital by Jason L. Baptiste (Rating: ★★☆☆☆)
A lot of useful pointers. But many things in the book sound too enterprise-y for a startup.
- Structure and Interpretation of Computer Programs by Harold Abelson and Gerald Jay Sussman
I only read the first few chapters of this all time classic. I wanted to take the time to try out all the Lisp examples in Haskell. I will have to come back to this later.
- Agile Web Development with Rails by Sam Ruby, Dave Thomas and David Heinemeier Hansson (Rating: 4)
A great introduction to programming with Ruby on Rails.
- The Lean Startup by Eric Ries (Rating: 3)
The reference book on the Lean Startup methodology. Unfortunately, the book is missing structure. It’s a collection of great ideas and lots of examples.
- Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software by Scott Rosenberg
- The Passionate Programmer: Creating a Remarkable Career in Software Development by Chad Fowler (Rating: 4)
Chad Fowler makes you look at your current and future career as a software developer from angles you never did before. A great starting point to incite reflection on where you are and where you want to go in your professional life.
- Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation by Jez Humble and David Farley (Rating: 4)
The most complete coverage of CI I have come across including topics like configuration and infrastructure management. Great book.
- The Girl with the Dragon Tattoo by Stieg Larsson (Rating: 4)
It starts a bit slow, but about a third into the book the pace picks up and the action will keep you interested until the end.
- Continuous Integration: Improving Software Quality and Reducing Risk by Paul M. Duvall, Steve Matyas and Andrew Glover (Rating: 4)
A great overview of CI even though the tools (Ant, Cruise Control) that are used in the examples are past their prime.
- The Lost Symbol by Dan Brown (Rating: 3)
If you are not tired yet of Robert Langdon saving the world this book is worth reading. Definitely up there with the Da Vinci Code.
- Pyramids by Terry Pratchett (Rating: 3)
Yet another book of the Disc World series. As usual, it is very funny and an interesting read.
- The Presentation Secrets of Steve Jobs: How to Be Insanely Great in Front of Any Audience by Carmine Gallo (Rating: 4)
This book explains the presentation techniques of Steve Jobs and covers a lot of Apple’s history along the way. It will also help you to prepare presentations more effectively.
- Treasure Island by Robert Louis Stevenson (Rating: 3)
This book took me right back to my childhood when I used to listen to the audio book about the treasure hunt of Jim Hawkins and Long John Silver. A true all time classic.
- Logicomix: An Epic Search for Truth by Apostolos Doxiadis and Christos Papadimitriou (Rating: 5)
Brilliant. Loving it. The story of the quest for the foundations of mathematics in the early 1900’s from Bertrand Russel’s point of view in a comic. The history of maths has never been more enjoyable. Can’t wait for the next one. I suggest Alan Turing and the story of computers or Albert Einstein and the story of relativity/time traveling for the second book.
- Growing Object-Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce (Rating: 5)
The best book on test-driven development I have come across so far. Understandable and comprehensive. The first part gives a well-composed overview of how the authors understand TDD. The second part consists of a walkthrough of the implementation of an example application, where the authors apply the techniques described in the previous part. This part requires a bit of stamina to get through but is nevertheless important to see some concrete examples. The last part then discusses certain aspects in more detail.
- Getting started with Grails, 2nd Edition by Jason Rudolph and Scott Davis (Rating: 5)
Scott Davis convinced Jason Rudolph to bring the very popular first edition of this book up to scratch with the latest version (1.2) of Grails. If you want to give Grails a go (and you should) this is your starting point. You can expect a comprehensive introduction to Grails by implementing a sample application from scratch within only 162 pages. This book is available as free eBook on infoQ.
- Sourcery by Terry Pratchett (Rating: 3)
Number 5 in the Disc World novel series. We all know that the eighth son of an eighth son is going to become a wizard. But what happens to the eighth son of an eighth son of an eighth son? That’s going to be a wizard square: a sourcerer. This book furthers the story of Rincewind from the first two books. My favorite quote in this book: The city of Ankh-Morpork is “sprawling as randomly and colourfully as a pool of vomit outside the all-night takeaway of History.” Brilliant!
- Practices of an Agile Developer by Venkat Subramaniam and Andy Hunt (Rating: 5)
This book can be regarded the sequel of the bestseller The Pragmatic Programmer. The authors collected the personal habits, ideas, and approaches of successful agile developers and compiled them in a series of short tips, which are easy to understand and follow. Better still, they make it sound like common sense which makes you wonder why you would have ever done it differently. The book doesn’t go into any detail of the described practices, but rather tries to justify their existence.
- Struts: The Complete Reference, 2nd Edition by James Holmes (Rating: 4)
As the title suggests this book attempts to be the complete reference for Struts 1 (1.3.5 to be precise). The first half of the book is a great introduction to Struts and it’s most important plugins. In the second part, you will find detailed descriptions of Struts’ tag libraries, configuration files, and extensions, which is a great reference to read up on things while you are developing your Struts application.
- Agile Retrospectives: Making Good Teams Great by Esther Derby and Diana Larsen (Rating: 3)
The authors describe activities that you can use during retrospectives to set the stage, gather data, generate insights, decide what to do and close the retrospective. Some of the explained techniques sound a bit far-fetched, but you will definitely get a lot of new ideas to keep your retrospectives interesting.
- A Walk in the Woods by Bill Bryson (Rating: 3)
Bill Bryson walks (part of) the Appalachian Trail. With a length of over 2100 miles from Georgia to Maine along the East Coast of the United States, it is the longest continuous footpath in the world. As usual Bryson’s descriptions of the situations he encounters and the people he meets are absolutely hilarious and will keep you well entertained. Also as usual, Bryson did his homework and research the making of the trail thoroughly, so the book will teach you some history lessons as well.
- Kanban and Scrum: Making the most of both by Henrik Kniberg and Mattias Skarin (Rating: 4)
An objective and balanced comparison of Kanban and Scrum followed by a case study. I am glad the title changed from Kanban vs. Scrum to Kanban and Scrum. Like Henrik’s other famous book Scrum and XP from the Trenches you can get a free online book at InfoQ.
- Implementation Patterns by Kent Beck (Rating: 3)
Kent Beck describes, how to write code that “consistently communicates your intentions”. This book is similar to the ‘Clean Code’ book by Bob Martin I read earlier this year. However, it is not as well structured, but still worth a read.
- Java Power Tools by John Ferguson Smart (Rating: 3)
John Smart describes his favorite tools for application development with Java. If you have been around for a while as a Java developer many of these are probably familiar. Nevertheless, this book is a worthy read to gather more insight into how they all work and how to put them together. The book is pretty thick and probably more of a reference than a cover-to-cover read.
- Peopleware: Productive Projects and Teams (Second Edition) by Tom DeMarco and Timothy Lister (Rating: 3)
This book is a classic. Even though the first edition (and, therefore, most of the chapters) is from 1987 many of the issues described and the advice given about growing a team still apply today.
- Digital Fortress by Dan Brown (Rating: 1)
If you know anything about computers – and I assume you do, since you are reading this blog – don’t waste your time with this book. As a domain expert, the technically incorrect details will drive you nuts and if you have read any other book by Dan Brown you know the story already anyway.
- Tribes: We Need You to Lead Us by Seth Godin (Rating: 4)
A theory of what makes a group of people a tribe. According to Seth Godin, it doesn’t take too much: A common interest, a leader, and way to communicate. An interesting and entertaining read.
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin (Rating: 4)
A well-structured list of rules to produce clean code. You will find some you knew before, some you will finally understand and some that will be completely new to you. I definitely recommend this book.
- Mort by Terry Pratchett (Rating: 4)
So far my favorite of Terry Pratchett’s Disc World Novels. It tells the story of DEATH, one of the funniest and most cynical characters of the earlier books. DEATH is getting a bit tired of… well, his eternal job, so he decides to get an apprentice. Absolutely, hilarious story. Enjoyed it thoroughly.
- Test Driven Development: By Example by Kent Beck (Rating: 3)
A nice introduction to TDD by working through two examples. All in all a bit slim, but worth reading, if you are new to TDD.
- Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt (Rating: 4)
A book that gets you thinking about how you think and how to improve it. Andy Hunt gives many pointers about how to use your brain more efficiently on a day to day basis.
- Shackleton’s Way: Leadership Lessons from the Great Antarctic Explorer by Margot Morrell and Stephanie Capparell (Rating: 5)
The story of Sir Ernest Shackleton’s failed attempt to reach the South Pole in 1914 and how he managed to get every single one of his 27 crew members back home alive more than two years after being stuck in the Antarctic ice. If this wasn’t a true story but an action movie it would be way over the top. An unbelievable story that also teaches you invaluable lessons about leadership and people.
- Scrum and XP from the Trenches by Henrik Kniberg (Rating: 5)
This free eBook is still the best description of Scrum I have come across so far. If you want to know what Scrum is or how to get started using it with your team this is your starting point. Not surprisingly this is the most popular eBook on InfoQ.com ever. There is an updated version (2015).
Artist: Andre Martins de Barros