The Holy Java

Building the right thing, building it right, fast


Books that most influenced the way I think about software development

(so far)

  1. R.C. Martin: Clean Code – A Handbook of Agile Software Craftsmanship(2008)
    • The essential importance of testing
    • All the basic principles of good code: Don’t Repeat Yourself (no copy&paste!), Single Responsability Principle, code cohesion, size of classes & methods, the importance of naming
  2. M. & T. Poppendieck: Implementing Lean Software Development – From Concept to Cash(2006)
    • This book persuaded me that lean/agile development is the only feasible way to develop software – and showed me how to do it
  3. ? Specification by Example

Other inspiring reading lists:


The talk how we decide helped me to understand that different decision making modes are suitable in different situations and how important it is to understand and be aware of our own thinking/deciding process. Another talk taught me that the most important thing to succeed is to know (and communicate) why. Finally I got support for my opinion that what motivates us isn’t money, but purpose, mastery, autonomy. I summarize these talks in the post The 3 Most Important Things I’ve Learned This Year (2011).


Books read recently (selection)


  • Difficult Conversations: How to Discuss What Matters Most 5* – handle difficult conversations at work and with loved ones by focusing on a “learning conversation” – explore and share the underlying emotions, the impact on one’s identity and self-image, and discuss what happened / should happen without blaming or judging but with acknowledging the contributions of each party and the fact that everyone’s “story” matters and has a grain of truth. Adopt the “and stance” (ex.: “I am devastated about breaking with you – and I still think it is the best thing to do for us) rather than focusing on the conflict-laden all-or-nothing thinking. A lot in common with Nonviolent Communication (importance of exploring and communicating emotions, of avoiding blame and judgement). Quotes: “difficult conversations do not just involve feelings, they are at their very core about feelings.” “The point is this: difficult conversations are almost never about getting the facts right. They are about conflicting perceptions, interpretations, and values. [..] Interpretations and judgments are important to explore. In contrast, the quest to determine who is right and who is wrong is a dead end.” A great overview/summary of the book by Break Through Consulting (PDF, 16 pages).
  • The Goal: A Process of Ongoing Improvement by Eliyahu M. Goldratt – 4* – a great classic in lean thinking in the form of a novel
  • Nonviolent Communication: A Language of Life: Life-Changing Tools for Healthy Relationships by Marshall B. Rosenberg – 6*
  • The Innovator’s Dilemma: When New Technologies Cause Great Firms to Fail (Management of Innovation and Change) [in progress?]


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: