My Book Shelf
This is a list of books that I have read / am reading / want to read. I first thought about calling this page ‘Recently Read Books’, because I don’t want to list all of the books I have ever read. However, I do intend to keep adding to this list without deleting previously read books. So, it is more like a list of books I will read from now (2009) on. 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.
Non-technical books are listed in gray, so they are easy to distinguish. There are surprisingly few of them anyway.
All books have a rating between 1 (don’t waste your time) and 5 (go, buy this book now).
On the wish list
- The Lean Entrepreneur: How to Create Products, Innovate with New Ventures, and Disrupt Markets by Brant Cooper and Patrick Vlaskovits
- The Founder’s Dilemmas: Anticipating and Avoiding the Pitfalls That Can Sink a Startup by Noam Wasserman
On the desk
On the shelf
Running Lean: Iterate from Plan A to a Plan That Works by Ash Maurya (Rating: 5)
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: 3)
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: 3)
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 Symbolby 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 an eighth son of an eighth son is going to become a wizard. But what happens to an 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 Prachett’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.