http://aosabook.org/en/index.html |
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.
You'll learn about the building blocks of their project and how they interact with one another. Getting unique insights directly from the contributors will be the key here, missing from most of the online lectures or tutorials.
Whether you're just starting in this field or are already an expert, these books will help you understand the underlying 'how' in problem solving and the way they reached the answer to their design problems.
Here are some of the open source projects talked about in these books-
- Git by Susan Potter
- GDB by Stan Shebs
- matplotlib by John Hunter and Michael Droettboom
- nginx by Andrey Alexeev
- Mercurial by Dirkjan Ochtman
- CMake by Bill Hoffman and Kenneth Martin
- Audacity by James Crook
Follow them on their blog at http://aosabook.org/blog/,
or on Twitter at @aosabook and using the #aosa hashtag.