Annotated Bibliography
Reading a wide range of books around a topic adds to the richness of my understanding. Here are a few suggestions for interesting reading on ideas related to XP.
Philosophy
Sue Bender , Plain and Simple: A Woman's Journey to the Amish , HarperCollins, 1989; ISBN 0062501860.
Examines the value of simplicity and clarity.
Leonard Coren , Wabi-Sabi: For Artists, Designers, Poets, and Philosophers , Stone Bridge Press, 1994; ISBN 1880656124.
Wabi-sabi is an aesthetic celebration of the rough and functional.
Richard Coyne , Designing Information Technology in the Postmodern Age: From Method to Metaphor , MIT Press, 1995; ISBN 0262032287.
Discusses the differences between modernist and postmodernist thought including an excellent discussion of the importance of metaphors.
Philip B. Crosby , Quality Is Free: The Art of Making Quality Certain , Mentor Books, 1992; ISBN 0451625854.
Breaks out of the zero-sum model of the four variablestime, scope, cost, and quality. You can't get software out the door faster by lowering quality. Instead, you get software out the door faster by raising quality.
George Lakoff and Mark Johnson , Philosophy in the Flesh: The Embodied Mind and Its Challenge to Western Thought , Basic Books, 1998; ISBN 0465056733.
More good discussion of metaphors and thinking. Also, the description of how metaphors blend together. The old software metaphors drawn from civil engineering, mathematics, and so on are slowly morphing into uniquely software engineering metaphors.
Bill Mollison and Rena Mia Slay , Introduction to Permaculture , Ten Speed Press, 1997; ISBN 0908228082.
High-intensity use in the Western world has generally been associated with exploitation and exhaustion. Permaculture is a thoughtful discipline of farming that aims for sustainable high-intensity use of the land through the synergistic effects of simple practices. This has some parallelism to XP. For example, most growth occurs at the interactions between elements. Permaculture maximizes interactions with spirals of interplantings and lakes with wildly irregular edges. XP maximizes interactions with on-site customers and pair programming.
Attitude
Christopher Alexander , Notes on the Synthesis of Form , Harvard University Press, 1970; ISBN 0674627512.
Alexander started by thinking about design as decisions resolving conflicting constraints, leading to further decisions to resolve the remaining constraints.
Christopher Alexander , The Timeless Way of Building , Oxford University Press, 1979; ISBN 0195024028.
Outlines Christopher Alexander's view of architecture and construction. The relationship described between designers/builders and the users of buildings is much the same as the relationship between the programmers and the customer.
Ross King , Brunelleschi's Dome: How a Renaissance Genius Reinvented Architecture , Penguin Books, 2001; ISBN 0142000159.
Extreme architecture and construction. Brunelleschi refused to be intimidated by problems, a great example of the principle of opportunity.
Field Marshal Irwin Rommel , Attacks: Rommel , Athena, 1979; ISBN 0960273603.
Examples of proceeding in apparently hopeless circumstances.
Dave Thomas and Andy Hunt , The Pragmatic Programmer , Addison-Wesley, 1999; ISBN 020161622X.
Dave and Andy couple technical skill with an attitude that I call extreme.
Frank Thomas and Ollie Johnston , Disney Animation: The Illusion of Life , Hyperion, 1995; ISBN 0786860707.
Describes how the team structure at Disney evolved over the years to deal with changing business and technology. There are also lots of good tips for user interface designers and some really cool pictures.
Office Space , Mike Judge , director, 1999; ASIN B000069HPL.
A view of life in a cubicle.
The Princess Bride , Rob Reiner , director, MGM/UA Studios, 1987; ASIN B00005LOKQ.
"We'll never make it out alive."
"Nonsense. You're just saying that because no one ever has."
Emergent Processes
Christopher Alexander, Sara Ishikawa, and Murray Silverstein , A Pattern Language , Oxford University Press, 1977; ISBN 0195019199.
An example of a system of rules intended to produce emergent properties. We can argue about whether the rules are successful or not, but the rules themselves make interesting reading. Also, an excellent if too-brief discussion of the design of workspaces.
James Gleick , Chaos: Making a New Science , Penguin USA, 1988; ISBN 0140092501.
A gentle introduction to chaos theory.
Stuart Kauffman , At Home in the Universe: The Search for Laws of Self-Organization and Complexity , Oxford University Press, 1996; ISBN 0195111303.
A slightly less gentle introduction to chaos theory.
Roger Lewin , Complexity: Life at the Edge of Chaos , Collier Books, 1994; ISBN 0020147953.
More chaos theory.
Margaret Wheatley , Leadership and the New Science , Berrett-Koehler Pub, 1994; ISBN 1881052443.
Uses self-organizing systems as a metaphor for management.
Systems
Albert-Laszlo Barabasi , Linked: How Everything Is Connected to Everything Else and What It Means , Plume Books, 2003; ISBN 0452284392.
Many of the networks in programming, social and technical, are "scale-free" as described in this book.
Eliyahu Goldratt and Jeff Cox , The Goal: A Process of Ongoing Improvement , North River Press, 1992; ISBN 0884270610.
The Theory of Constraints is a way of understanding systems and improving their throughput.
Gerald Weinberg , Quality Software Management: Volume 1, Systems Thinking , Dorset House, 1991; ISBN 0932633226.
A system and notation for thinking about systems of interacting elements.
Norbert Weiner , Cybernetics , MIT Press, 1961; ISBN 1114239089.
A deeper, more difficult introduction to systems.
Warren Witherell and Doug Evrard , The Athletic Skier , Johnson Books, 1993; ISBN 1555661173.
A system of interrelated rules for skiing. The big improvements come when adopting the last few rules because being a little off balance is very different than being on balance.
People
Tom DeMarco and Timothy Lister , Peopleware , Dorset House, 1999; ISBN 0932633439.
Following The Psychology of Computer Programming , this book expanded the practical dialog about programs as written by people, and in particular as written by teams of people. This book was my source for the principle of "accepted responsibility."
Tom DeMarco , Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency , Broadway, 2002; ISBN 0767907698.
Applying the concept of margins to software development.
Carlo d'Este , Fatal Decision: Anzio and the Battle for Rome , Harper-Collins, 1991; ISBN 006092148X.
An example of ego getting in the way of clear thinking.
Robert Kanigel , The One Best Way: Frederick Winslow Taylor and the Enigma of Efficiency , Penguin, 1999; ISBN 0140260803.
A biography of Taylor that puts his work into a context that helps show the limits of his thinking.
Gary Klein , Sources of Power , MIT Press, 1999; ISBN 0262611465.
A simple, readable text on how experienced people make decisions in difficult situations.
Alfie Kohn , Punished By Rewards: The Trouble with Gold Stars, Incentive Plans, A's, Praise, and Other Bribes , Mariner Books, 1999; ISBN 0618001816.
This book shook my illusion that I could control other people by giving them just the right kind of reward.
Thomas Kuhn , The Structure of Scientific Revolutions , University of Chicago Press, 1996; ISBN 0226458083.
How paradigms become the dominant paradigm. Paradigm shifts have predictable effects.
Patrick Lencioni , The Five Dysfunctions of a Team: A Leadership Fable , Jossey-Bass, 2002; ISBN 0787960756.
An easy-to-read description of some of the things that can go wrong on teams and what you can do about it.