An encomium to the art of programming
In my years toiling in the forge of enterprise IT—crafting systems both intricate and monumental—I have grown deeply enthralled by the grace and cogency of my medium. Her workings, wondrous and nigh-magical for the observer, are yet secrets given freely and generously to the curious seeker. As I have seen her monuments grow grander, added to by successive generations of hands—mine own amongst them—I have felt the joy of the artisan. Yet I have also been saddened at the obscuring of her logical, artless mechanisms under layers of increasingly baroque architecture. While I possess not the impudence to call this ostentation, I admit to fearing the day when these layers would grow so thick and numerous that most programmers will be unable to perceive the edifice through the facade. Worse still, a day when looking beyond a single marvellous facet to perceive the whole will be deemed both arduous and unnecessary.
It is my humble thesis that this day has now arrived, and is indeed well in the past. The architecture of the computer program has grown in scope and sophistication to where it now undergirds all human endeavour. And such growth has come with the accumulation of strata of complexity that are impenetrable to all but the most determined.
But this is not my lament, dear reader. A fear of difficulty was never the weakness of a worthy programmer, and I find not my fraternity lacking in courage or determination. Nor is complexity our bane, because this is the nature of our art. Her monuments are not simple monoliths, rough-hewn and solid. Hers are citadels of wonderful intricacy, surfaced in flowing mathematical tapestries.
No. My true lament is for the increasing throng of "simplicity" peddlers I find crowding the courtyards of our mighty monument. These are not the true masters who have seen the face of our muse and recognised her simple elegance. No, they are those who waylay the seeker with promises of a simple truth or system that will bestow mastery without the need for "archaic and burdensome" knowledge. This one framework! This one library! This one new tool! And now comes artificial intelligence, the greatest of them all; sold as a factotum capable of elevating any with the requisite coin beyond the capabilities of the highest masters.
I condemn this as a temptation to lead my brethren astray from true knowledge and mastery! I condemn this as a calumny against the cogency of computer and software architecture! I condemn this as avoidance rather than resolution of complexity, if it be so burdensome!
That with time I have witnessed the industrialization of our craft is no surprise; the colossus of modern software architecture requires a legion for its upkeep. I am also grateful for the plethora of tools and techniques that have enriched my craft. And indeed I feel no malice towards any practitioner of my craft in whatever they create or wherever they do so; whether deep in the heart of the machine, or upon its outermost walls. However, I reject the notion that scale and complexity make ignorance of our medium's truths not only tolerable but also expedient. I reject "cheap and fast" as the guiding cynosure for our craft that justifies the truncation of its doctrine. And most of all, I reject the mirage of false simplicity offered by tools that promise ability without skill—feigning the futility of true mastery.
And so I make my stand. Facing a deluge of mediocrity threatening to drown out artistry, watching the shadow of false simplicity cloud true knowledge, hearing rabid prognostications of how artificial intelligence will render human skill obsolete: I am compelled to act, however modest my contribution. I set myself to the task of collecting and sharing knowledge of our craft in defiance of those who wish her truths forgotten; in the hope, dear reader, that you will join me in this small rebellion.
“Though wise men at their end know dark is right,
Because their words had forked no lightning they
Do not go gentle into that good night.”
— Dylan Thomas https://poets.org/poem/do-not-go-gentle-good-night