A new book for software developers takes a lesson from architecture. Not the structures themselves, though--the learning process for the designers. The Architecture of Open Source Applications by Amy Brown and Greg Wilson takes developers on a tour of 25 open source applications, explains how each is structured, and--most importantly--why.
The inspiration, as explained on the book's website, is the way that architects study. They examine thousands of buildings in the process of learning to become architects. They study critiques of those buildings. They know what has come before them when they embark on the designs of the future.
Software developers, however, generally only know a few programs really well. They tend to not spend much time studying the software of the past. This way of learning fails to take advantage of one of the greatest benefits of open source: being able to see what works and what doesn't before you make the same mistakes.
You also don't necessarily have to be a developer to enjoy this book. You might skip the sections that get into the details of a program's construction, but the introduction to each piece and conclusions about their design could be interesting and helpful to anyone interested in FOSS.
The entire book is available under a CC-BY 3.0 license. You can also purchase paperback or PDF copies from Lulu.com, which the authors recommend over purchasing through Amazon. Profits are donated to Amnesty International, but because of the structures of the two sellers, books sold through Lulu result in a $14.98 donation, whereas Amazon sales result in only a $3.78 donation.
The authors are also still interested in contributors who who like to add new information about other open source projects or to write translations.