Download PDF of this issue.
Welcome to the sixty-ninth issue of De Programmatica Ipsum, about Architecture. In this edition, we elevate the Big Ball of Mud to the rank of major architectural pattern; in the Library section, we review "The Architecture of Open Source Applications" by Amy Brown and Greg Wilson; and in our Vidéothèque section, we watch "Architecture: The Stuff That’s Hard to Change" by Dylan Beattie.
On June 25th, 1999, Brian Foote published a seminal article that became, for a short while, one of the most commented pages of the early Internet, at least by struggling software developers and prospective architects. Such was the impact that it "was twice featured in Slashdot" (kids: that is the 1999 equivalent of "this article hit the homepage of Hacker News"). After almost exactly 25 years since that publication, one question still lingers: when are we going to accept defeat?
It is not uncommon for software engineers to be eventually decorated with the grade of "software architect" in their careers. Logic would suggest that the latter, the better, but I have seen many a fresh graduate with such a stamp on their job offer, and a correspondingly worried look upon their faces. For the responsibility is high, yet the job description is as vacuous as one might expect from the almighty software industry. Graduate students get very little coaching from their alma maters before becoming "architects", so they wander in life asking themselves how to become one, let alone how to be good on the job.
Most software developers are ejected from academia into the jaws of the business of software with little preparation. Of course, they are equipped with good enough knowledge about some more or less relevant programming language, and maybe some algorithm, hopefully including the venerable linked list reversion, indispensable to pass the dreaded coding interview. But not much more.