Beautiful Code

Well, the feline has apparently been debagged: in his keynote at SIGCSE 2007 on Friday, Grady Booch mentioned the book that Andy Oram and I are putting together for O’Reilly. It’s called Beautiful Code: Leading Programmers Explain How They Think, and contains essays by more than thirty great software developers on, well, beautiful code. It isn’t on O’Reilly’s public site yet, but it’s already listed on Amazon. The contents are:

  1. Greg Wilson: Foreword
  2. Brian Kernighan: Beautiful Brevity: Rob Pike's Regular Expression Matcher
  3. Karl Fogel: Subversion's Delta Editor: Interface as Ontology
  4. Jon Bentley: The Most Beautiful Code I Never Wrote
  5. Tim Bray: Finding Things
  6. Elliotte Rusty Harold: Correct, Beautiful, Fast (In That Order): Lessons From Designing XML Validators
  7. Michael Feathers: Framework for Integrated Test: Beauty through Fragility
  8. Alberto Savoia: Beautiful Tests
  9. Charles Petzold: On-the-Fly Code Generation for Image Processing
  10. Douglas Crockford: Top Down Operator Precedence
  11. Henry Warren: The Quest for an Accelerated Population Count
  12. Ashish Gulhati: Secure Communication: The Technology of Freedom
  13. Lincoln Stein: Growing Beautiful Code in BioPerl
  14. Jim Kent: The Design of the Gene Sorter
  15. Jack Dongarra and Piotr Luszczek: How Elegant Code Evolves With Hardware: The Case Of Gaussian Elimination
  16. Adam Kolawa: Beautiful Numerics
  17. Greg Kroah-Hartman: The Linux Kernel Driver Model: The Benefits of Working Together
  18. Diomidis Spinellis: Another Level of Indirection
  19. Andrew Kuchling: Python's Dictionary Implementation: Being All Things to All People
  20. Travis Oliphant: Multi-Dimensional Iterators in NumPy
  21. Ronald Mak: A Highly Reliable Enterprise System for NASA's Mars Rover Mission
  22. Rogerio Atem de Carvalho and Rafael Monnerat: ERP5: Designing for Maximum Adaptability
  23. Bryan Cantrill: A Spoonful of Sewage
  24. Jeff Dean and Sanjay Ghemawat: Distributed Programming with MapReduce
  25. Simon Peyton Jones: Beautiful Concurrency
  26. Kent Dybvig: Syntactic Abstraction: The syntax-case expander
  27. William Otte and Doug Schmidt: Labor-Saving Architecture: An Object-Oriented Framework for Networked Software
  28. Andrew Patzer: Integrating Business Partners the RESTful Way
  29. Andreas Zeller: Beautiful Debugging
  30. Yukihiro Matsumoto: Code That's Like an Essay
  31. Arun Mehta: Designing Interfaces Under Extreme Constraints: the Stephen Hawking editor
  32. TV Raman: Emacspeak: The Complete Audio Desktop
  33. Laura Wingerd and Christopher Seiwald: Code in Motion
  34. Brian Hayes: Writing Programs for "The Book"
  35. Andy Oram: Afterword

I’m proud to have worked on it, and even prouder of the fact that royalties from the book will be donated to Amnesty International. My only regret is that Frank Willison isn’t here to enjoy it with us. I hope you all enjoy reading it as much as I hope he would have.

Later: for those who have left comments / sent email asking, “Why isn’t XYZ included?”, the answer is probably one of:

  • we weren't able to reach them,
  • we asked, but they declined, or
  • we didn't ask this time around, but if you can talk them into contributing to Volume 2, please do so.

In the wake of posts about Shopify's support for white nationalists and DataCamp's attempts to cover up sexual harassment
I have had to disable comments on this blog. Please email me if you'd like to get in touch.