Beautiful Code

Sunday 11 November 2007

Beautiful Code is a different kind of O’Reilly book. First off, the cover isn’t an “O’Reilly cover”:

Cover of Beautiful Code: blue with birds

Second, instead of an in-depth examination of a single topic, it’s a browsable anthology of essays by a wide range of writers about a wide range of topics, loosely tied together by a single theme: Beautiful Code. Here beauty is widely interpreted, with each author applying the adjective as they see fit.

Some essays work better than others, of course. Andrew Kuchling’s piece about how to implement Python dictionaries so that they perform well for all of their varied tasks was very interesting, reviewing all the various optimizations and tradeoffs. Not to turn this into a Python vs. Ruby thing, but Yukihiro Matsumoto’s piece, Treating Code as an Essay, was fluffy and inconsequential. That’s the price you pay for having an assortment of pieces by different authors.

The other essays cover a wide gamut, from the design of Linux kernels to audio-enabling emacs to the Mars Rover mission to designing software for Stephen Hawking:

“Professor Stephen Hawking can only press one button,” was the one-line spec we were given,

begins Arun Mehta’s When a Button is All That Connects You to the World. One of the fascinating aspects of these essays is that although they are all about code, they come from such diverse domains, that you can’t help but learn new views on topics you already know a lot about.

I haven’t read all of the pieces in the book, but the ones I’ve dipped into have been thought provoking. It’s an interesting collection of essays, each by someone who cares a great deal about their code. If you care about yours, Beautiful Code can only deepen your appreciation of it.


Regarding the cover O'Reilly has a whole series of books with that style of cover:

* Prefactoring
* The Art of Project Management

Most of the "Theory In Practice" series is like that:

Add a comment:

Ignore this:
Leave this empty:
Name is required. Either email or web are required. Email won't be displayed and I won't spam you. Your web site won't be indexed by search engines.
Don't put anything here:
Leave this empty:
Comment text is Markdown.