The Architecture of Open Source Applications

The Architecture of Open Source Applications

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.

Our goal is to change that. In these two books, the authors of four dozen 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 these books provide unique insights into how they think.

If you are a junior developer, and want to learn how your more experienced colleagues think, these books are the place to start. If you are an intermediate or senior developer, and want to see how your peers have solved hard design problems, these books can help you too.

There is also the fourth book in the works – 500 lines or less.

GitHub contributions graph

After reading Mark Story‘s “Coding every day” post, I started checking my own GitHub contributions chart once in a while.  Until today, I haven’t noticed that the chart has two different modes.  One is your public contributions, seen by people who are not part of your organization’s and private projects.  Here is how mine looks. (Notice the “Public contributions” title of the graph).

github public contributions

Yeah, I know, pathetic.  And here is how the full contributions chart looks like, for me and people who have access to see my private projects activities.  The graph is for the same period. (Notice a simpler “Contributions” title of the graph”).

github contributions

 

Could be better, but not as bad anymore.  Now with that I’ll try to push more stuff to the Open Source side of things again.