The Architecture of Open Source Applications
Amy Brown and Greg Wilson (eds.) Lulu.com, 2011, 978-1-257-63801-7 License / Buy / News / Contribute / FAQ |
Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters. In contrast, most software developers only ever get to know a handful of large programs well—usually programs they wrote themselves—and never study the great programs of history. As a result, they repeat one another's mistakes rather than building on one another's successes.
This book's goal is to change that. In it, 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.
If you are a junior developer, and want to learn how your more experienced colleagues think, this book is the place to start. If you are an intermediate or senior developer, and want to see how your peers have solved hard design problems, this book can help you too.
…a wonderful book and a wonderful contribution to the industry.
– Grady Booch
Follow us at http://third-bit.com/blog/archives/category/aosa or search for #aosa on Twitter.
This work is made available under the Creative Commons Attribution 3.0 Unported license. Please see the full description of the license for details.
All royalties from sales of this book will be donated to Amnesty International.
Paperback and PDF copies of this book may be purchased from Lulu.com and other online booksellers. All royalties from these sales will be donated to Amnesty International. If you do buy a copy, please do so directly from Lulu:
Paperback | |||
Lulu | Amazon | Lulu | |
You pay: | $35.00 | $35.00 | $10.00 |
Lulu gets: | $3.74 | $0.94 | $2.79 |
Amazon gets: | $17.50 | ||
Amnesty gets: | $14.98 | $3.78 | $7.21 |
2011-06-02: | A chapter on PyPy is now being written. |
2011-05-31: | A Russian translation is now under way. |
2011-05-30: | A Japanese translation is now under way. |
2011-05-29: | People are now writing chapters on Mailman, and SQLAlchemy. We would like lots more: please check out (and add to) our wish list. |
2011-05-27: | Chinese, Portuguese, and Spanish translations are now under way; please contact the coordinators if you would like to help. |
2011-05-27: | We have added a recommended reading page. |
2011-05-25: | Several people have reported that Lulu.com will not ship to a PO box in some countries, only to a street address. There does not appear to be much we can do about this (but please contact Lulu support and let them know you would like this fixed). |
2011-05-23: | We are working to produce various e-book formats, and will upload them to Lulu.com as soon as they are available. (It turns out to be a lot harder to produce good-looking e-books from LaTeX than it ought to be in the early 21st Century.) |
Dozens of volunteers worked hard to create this book, but there is still lots to do. You can help by reporting errors, by helping to translate the content into other languages and formats, or by describing the architecture of other open source projects. Please contact us the coordinators for various translations listed below, or mail us directly at aosa@aosabook.org if you would like to start a new translation or write a chapter yourself.
Translations | ||||
---|---|---|---|---|
Chinese (Simplified) | Liu Jiang | |||
Chinese (Traditional) | Kenneth Ho | |||
Japanese | Takagi Masahiro | |||
Portuguese (Brazilian) | Rogerio Atem de Carvalho | |||
Portuguese (European) | António Melo | |||
Russian | Nikita Pchelin | |||
Spanish | Sebastian Kreft and Diego Bravo Estrada | |||
New Chapters | ||||
Mailman | Barry Warsaw | |||
PyPy | Benjamin Peterson | |||
SQLAlchemy | Michael Bayer |