Thursday, June 9, 2011

The Architecture of Open Source Applications

A group led by Greg Wilson and Amy Brown has put together Volume 1 of a new book called The Architecture of Open Source Applications.

Wilson was previously the editor of Beautiful Code, a book I found very interesting and stimulating. One of the chapters in Beautiful Code is written by the founders of my day job, but that's not the only, nor even the primary, reason that I enjoyed the book. It's just quite a good book.

The Architecture of Open Source Applications at first blush looks to be relatively similar: it is a collection of contributed essays by a variety of authors; the common thread is that each author is writing about a particular Open Source project. From the overview:

the authors of twenty-five open source applications explain how their software is structured, and why. What are each program's major components? How do they interact? And what did their builders learn during their development? In answering these questions, the contributors to this book provide unique insights into how they think.


The book looks quite intriguing, with a substantial list of well-known authors contributing their thoughts on important projects. Here's the table of contents:

  • Asterisk Russell Bryant

  • Audacity James Crook

  • The Bourne-Again Shell Chet Ramey

  • Berkeley DB Margo Seltzer and Keith Bostic

  • CMake Bill Hoffman and Kenneth Martin

  • Eclipse Kim Moir

  • Graphite Chris Davis

  • The Hadoop Distributed File System Robert Chansler, Hairong Kuang, Sanjay Radia, Konstantin Shvachko, and Suresh Srinivas

  • Continuous Integration C. Titus Brown and Rosangela Canino-Koning

  • Jitsi Emil Ivov

  • LLVM Chris Lattner

  • Mercurial Dirkjan Ochtman

  • The NoSQL Ecosystem Adam Marcus

  • Python Packaging Tarek Ziadé

  • Riak and Erlang/OTP Francesco Cesarini, Andy Gross, and Justin Sheehy

  • Selenium WebDriver Simon Stewart

  • Sendmail Eric Allman

  • SnowFlock Roy Bryant and Andrés Lagar-Cavilla

  • SocialCalc Audrey Tang

  • Telepathy Danielle Madeley

  • Thousand Parsec Alan Laudicina and Aaron Mavrinac

  • Violet Cay Horstmann

  • VisTrails Juliana Freire, David Koop, Emanuele Santos,
    Carlos Scheidegger, Claudio Silva, and Huy T. Vo

  • VTK Berk Geveci and Will Schroeder

  • Battle For Wesnoth Richard Shimooka and David White



At least 75% of these projects and authors are well-known to me; this is a very impressive list.

The book is available online under a Creative Commons license.

However, it only took me about 5 minutes of poking around before I made up my mind, and clicked through to buy a physical copy.

Hopefully it's at least as interesting as Beautiful Code was, and perhaps it will even be better?

Oh, and by the way, they're already planning a Volume 2, and Tiago Espinha, one of the Derby committers, has signed up to write a chapter about Derby! Yay!

No comments:

Post a Comment