The Architecture of Open Source Applications


3 Books on The Architecture of Open Source Applications
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.
The above quote from their website depicts what the three books on their website are all about. Here you can read about some of the greatest open source projects, about how their software is structured and why. 
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-

Follow them on their blog at http://aosabook.org/blog/
or on Twitter at @aosabook and using the #aosa hashtag.