view issue

The Software Inferno
Download PDF version of this article

by Alex E. Bell | December 16, 2013

Topic: Development

  • View Comments
  • Print

The Software Inferno

Dante's tale, as experienced by a software architect


Alex E. Bell, The Boeing Company


Preface

The Software Inferno is a tale that parallels The Inferno, Part One of The Divine Comedy written by Dante Alighieri in the early 1300s. That literary masterpiece describes the condemnation and punishment faced by a variety of sinners in their hell-spent afterlives as recompense for atrocities committed during their earthly existences. The Software Inferno is a similar account, describing a journey where "sinners against software" are encountered amidst their torment, within their assigned areas of eternal condemnation, and paying their penance. In an attempt to preserve some of the original Inferno's spirit and archaic prose, I have reused a few translated fragments of Dante's original text taken from SparkNotes3 and am grateful to include this classic material.

The topology of the Software Inferno is captured in figure 1 and describes the setting for the sorrowful tale you are about to read.

The Journey Begins

Midway through our software project, I found myself in a dark wood, the right road lost. I cannot well recount how I entered it, so full was I of discontent at that point where I abandoned the true path. Yet, the true path is what I had hoped this journey would restore to my troubled soul, and I will now tell of the things I have seen.

From amidst the darkness of the wood, I looked on high and saw a hill whose shoulders were cloaked by the rays of the sun, whose crest I was drawn to in hopes of reacquainting myself with the true path. As I climbed higher and higher among the perilous ridges and furiously flowing waterways, I came across three beasts blocking my way. The beasts were a nasty and snarling lot, well known for tormenting not only strangers such as myself, but also for being at odds with one another. A difficult task mine would be to satisfy the coincident demands of the Cost, Schedule, and Quality beasts as a condition of passage. Given my wayward state of mind, I was able to successfully quell the wrath of only two of these beasts at any given time, and had little choice but to descend from the hill and ponder an alternate course for reacquainting myself with the true path.

While I was falling back to the low place from where I had started, before my eyes appeared one who through long study seemed to be a noble woman. "Have pity on me, I am lost!" I cried. "Whatso thou art, or shade, or real woman?" Responded she, "I was born Augusta Ada King, to parents Lord Byron and Anne Isabella Byron, resided at England, and became Augusta Ada King, Countess of Lovelace." Replied I, "Art thou then that Ada Lovelace and that fount from which flowed the first computer program?" Attested she did, "Indeed it is I."

The Software Inferno; UML Representation of the Software Inferno

I recounted my woeful tale to the Countess Lovelace of having lost the true path, my thus-far futile attempts to rediscover it, and the horrible beasts I had previously encountered while ascending the mountain trail. Said she to me, "Thee it behooves to hold another course." To my great relief, Lady Ada, the Countess of Lovelace, offered to serve as my guide in the quest for the true path but warned that the journey ahead would involve passing through the Software Inferno, a horrible place of eternal punishment for those who have committed sins in the realm of software development.

The countess bade me to follow, and I behind her kept.

Ante-Inferno

"Leave every hope, ye who enter!" read the inscription on the gate at the edge of the Software Inferno. Here were sighs, laments, and deep wailings resounding through the starless air. Strange tongues, horrible cries, words of woe, accents of anger, voices high and hoarse, so were the unwelcoming environs of the Software Inferno.

As we approached the Inferno's edge, the countess said that the woeful sounds we heard were those of software developers condemned to the Ante-Inferno. These developers were the wretches who could not decide whether they should for all time labor with conscience and morality using the skills of their trade for good, or to use those skills to promote evil, thievery, and illicit self-benefit. These were the hackers, the rogues, who either disrespected the true path by lucid choice, or failed to unambiguously endorse it by way of indecision. Both Heaven and Inferno have denied them entry, so they shall forever wallow here, tormented by ankle-biting bugs and typing on keyboards with the products of their strokes going nowhere, of importance to no one.

The countess beckoned that I follow her to the edge of a nearby river separating us from the first circle of the Software Inferno. Coming toward us in a boat, an old man with white ancient hair cried, "Woe to you, wicked souls! I come to ferry you to the other bank, into eternal torment, into heat and misery, into the Software Inferno!"

Into the boat stepped the countess, and I behind her kept.

Canto 1 - Limbo

The countess and I disembarked from the ferryman's boat and found ourselves at the edge of the Software Inferno's outer circle, also known as Limbo. The countess confessed that she herself was a Limbo inhabitant and had only been granted a short respite to act as my escort. She explained, "Through no fault of our own, we who have been condemned to Limbo are guilty only of being born too early in history, too young to have been aware of or to have properly paid homage to the visionaries responsible for shaping the software engineering environment as you know it today."

Among the luminaries I recognized joining the countess in Limbo were the likes of George Boole (formalizer of Boolean algebra), Gottlob Frege (developer of first-order predicate calculus), and Grace Murray Hopper (Cobol inventor). They suffered from the same fate as the countess: being born too early to have shown proper reverence to software-engineering demigods such as Alan Turing, Grady Booch, James Rumbaugh, Ivar Jacobsen, Alan Kay, Bran Selic, James Gosling, and others contributing to the basis of modern software engineering.

Presumably in exchange for having lived virtuous lives, the lone merciful consideration bestowed upon the blameless souls relegated to Limbo was the absence of misery such as that suffered by the unfortunates condemned to the more inward circles of the Software Inferno.

On led the countess, and I behind her kept.

Canto 2 - Lust

As the countess and I approached the Inferno's second circle, pine we did for the relative comfort of the circle we had just departed, as the inundating and blinding light emanating from the circle ahead bothered our eyes. It originally appeared as if the glow ahead was born of a single source, but our ever-growing nearness showed that it was actually an assemblage of many individual light beams, each specifically focused on a single one of the circle's many inhabitants.

The countess explained that the sins committed by these woeful souls were ones of lust. It was not a fleshly lust that these tormented souls were guilty of, but a lust for power, fame, fortune, and riches, at the betrayal of reason, commitment, and responsibility. These miserable wretches salaciously stoked only their selfish desires, regardless of the impact on those closest to them, without regard for their personal integrity, and in absence of good conscience. Among the condemned here were those who ignored or breached their wedding vows, denied their children an involved parent, or failed to honor their own parents in old age. Their blind pursuits were made in the name of the next deal, the next promotion, the next bonus, or anything else that was a means of accruing celebrity, power, or standing.

It was here, amidst the doom of the Inferno's second circle, where these obsessed souls would be eternally admonished with fitting punishment. A blinding spotlight focused on their each and every move, affording them the single-minded attention that they had sought during their earthly days. So intense their illumination, the cylinders of light tormenting these souls prevented them from sleep and overwhelmed the natural blush of all that coexisted in the circle with them. For all of perpetuity, these ill-fated wretches were condemned to seeking shelter from the beams that followed their every move.

From the brightness led the countess, and I behind her kept.

Canto 3 - Gluttony

The countess and I slowly regained the comfort and use of our eyes as the extreme brightness of the previous circle waned. Coincidently, a new assault commenced on another of our senses in the form of horrible noises emanating from the Inferno's third circle which lay just ahead. A curious sight awaited as we entered this circle: its inhabitants had the bodies of pigs, but they appeared to have retained their earthly heads from past days. The most repulsive sounds of slobbery and crudeness came from their mouths as they wallowed from trash heap to trash heap, eating all in sight, attempting to satisfy their unrelenting appetites with an absence of any and all grace.

The countess explained that the souls doomed here were guilty of wasteful, excessive, and inappropriate consumption during their past lives. Their gluttony was largely stoked by immense wealth that had suddenly fallen upon them as the result of IPOs, buyouts, and soaring stock prices. Fueled by their newly found prosperity, they gorged themselves with the finest foods, drank to excess, became dependent on prohibited substances, and contentedly watched their bellies grow fatter and fatter as badges of their success. The wealth that they had acquired robbed them of moderation, self-control, and any remembrance of those in the world who knew not from where their next meal might come.

So did the gluttonous spend eternity atoning for the lifestyles of their earthly days: eating filth- ridden, rotten, and vermin-infested scraps of food that were unfit for beast, let alone human.

Away led the countess, and I behind her kept.

Canto 4 - Greed

The rhythmic, metallic, clinking sounds emanating from the Inferno's oncoming fourth circle were unlike anything my ears had heard before. The clamor became louder as the countess and I approached, and soon we were enlightened about its origin: pennies. Pennies were steadily falling from the sky, without end, often striking the heads of those wretches condemned to this fourth circle, and then clinking to the ground, striking other pennies that had fallen before them.

Countess Ada explained that the wretches condemned to the Inferno's fourth circle had demonstrated a habitual pattern of greed for wealth and material in their earthly days. Among the casualties of this greed were the programmers, designers, analysts, administrators, testers, and architects upon whose backs their wealth was gained, with nary a hint of appreciation offered for their hard work, loyalty, and dedication in return. The countess continued to describe that many of these greedy souls failed not only to justly reward their benefactors, but also to give back to community, to charity, or to educational institutions with even the smallest crumbs.

The woeful inhabitants of the fourth circle of the Software Inferno were without shelter, and were forever under the deluge of falling pennies interrupting any attempt to sleep or rest, providing them ample time to reflect on their past greed.

The countess bade me to follow, and I behind her kept.

Canto 5 - Anger

My still-ringing ears were gratified to be spared the raucous din of falling pennies. But, the red glow and heat emanating from the nearing fifth circle did not bode well for the potential discomfort of other senses. As the countess and I approached, the heat became more difficult to bear, and the source revealed itself: innumerable piles of paper rubbish burning with flames shooting up high into the sky. The pitiful souls inhabiting this arid wasteland were desperate with thirst and appeared intent on its reprieve by dropping their buckets into the many wells dotting the terrain, amidst the burning piles, and hopeful of lapping any cool water that might be contained therein.

The countess explained that the parched wretches condemned to the fifth circle were the angry, those who poisoned their software organizations from the inner cores. Their incessant vitriol, opinionated bullying, unending negativity, and caustic attitudes destroyed all prospect of harmony and collaboration in the workplace, creating only strife and misery for those around them. Not only did these toxic souls decline to apply their self-proclaimed wisdom to act in the place of the leaders whom they condemned, but they also undermined the efforts of any who attempted to assume those leadership roles themselves.

As more closely I watched, the angry who had hoped for cool water with which to slake their thirsts instead spat out the water that they retrieved with their buckets, for it was poisoned, just like the workplaces they had poisoned in the past.

On led the countess, and I behind her kept.

Canto 6 - Heresy

The radiant heat of the previous circle soon yielded to metallic sounds that I believed to be shackles, clanking amidst irregular movement. As we approached the Inferno's sixth circle, the origin of these sounds became more clear. Their origin was from the many groupings of exactly nine people, chained to one other, with each individual intent on trudging in a direction and pace of his or her own choosing.

The countess explained that these chaotically traveling souls were strongly at variance with well-established beliefs and laws of software engineering developed by experts on the subject. Their unabashed contempt for universally accepted truths spawned decision making that wrought great damage upon software projects in their charge. Some challenged Fred Brooks' sacred counsel1 in futile attempts to rise above their failings by adding new people with woefully insufficient qualifications to rescue already-late projects. Others flaunted their derision by disregarding software design patterns sanctified by the Gang of Four2, instead opting for inelegance of their own in attempts to solve problems whose solutions were already proven, well known, and time-honored.

The wretches condemned to this circle would spend eternity reliving the torment they had inflicted on others as the result of their heretical actions. As members of these shackled groups, they would be forever reminded how even the simplest of wills is difficult to execute in their number, and that nine people are not able to arrive at their desired destinations nine times faster than a single individual.

On marched the countess, and I behind her kept.

Canto 7 - Violence

As we approached the Inferno's next circle, the sounds of clanking shackles gave way to agonizing cries of torment that would suddenly and forcefully begin, but then gradually fade into moans of hopelessness and despair. Again and again, and much to my horror, our ears heard this cycle of misery repeat. I was certain that my eyes would soon fall upon a torture chamber overrun with miserable souls being tormented and made to suffer by horrible monsters, but I observed nothing of the sort. Instead, I saw many people on the ground who were either asleep, writhing in pain, foaming at the mouth, with discolor of skin, or with other symptoms of horrible pestilence.

The countess explained that these moaning scourges were condemned to the Inferno's seventh circle for committing acts of software violence against innocent and unsuspecting people. In front of our very eyes were the phishers, malware creators, and cybercriminals whose acts of hostility caused damage to the wealth, privacy, and general welfare of fellow netizens. Some had even inflicted great strife upon the unsuspecting and undeserving simply for sport, as hobby, merely to dispose of their restlessness.

More carefully I watched, and now understood the cause of their despair. While these wretches slept, becoming defenseless and unsuspecting, small flying worms appeared from the sky, alit on their skin, attached, and deposited toxins in them to inflict unspeakable pain and suffering when they awakened. Some attempted to avoid sleep with hope of avoiding the worms that wrought the virus and disease, but it was for naught. Comfort and refuge for these wretches was elusive for all of eternity as retribution for their sins.

Onward strode the countess, and I behind her kept.

Canto 8 - Fraud

As we approached the Inferno's eighth circle, the countess and I were besieged by an overwhelming stench that became more foul with each step taken. Which sins could have been committed by the miserable wretches here to deserve such reckoning? Explained the countess, "The souls condemned here are the frauds, liars, and deceitful: ones who feigned expertise, knowledge, and relevance of technology to others in their past lives, purely for their own advantage."

Ahead of us dwelt the self-proclaimed advocates, crusaders, and evangelists of technologies such as UML, XML, Agile, MDA, object orientation, and the like. The fraudulent and deceptive were condemned here for having misdirected the adoption or usage strategies of technology on software projects in which they had had a role. These wretches willfully, and without apology, preyed upon the naïve and desperate, falsely convincing them that their pet technologies would bring relief to the torment-stricken for motivations of self-interest.

In the distance I spied a massive body of liquefied pulp, clearly being the source of the stench that fouled our nasal cavities. There were thousands of miserable souls wallowing in this morass, each struggling to stay above the surface of the simmering, bubbling, and putrid stew. Feeding this morass was a stream of material falling from the sky, in what seemed to be an endless supply. The countess explained that materials feeding the pulpy sewage in which these wretches floundered included unneeded UML diagrams, unachievable schedules, irrelevant training material, flowery PowerPoint charts, and other products that the admonished had caused the creation of in their past lives. It was a fitting manner for the fraudulent and deceptive to spend eternity bathed in the stinking waste of their own creation.

On led the countess, and I behind her kept.

Canto 9 - Treachery

The Software Inferno's innermost circle lay ahead, situated atop a great mountain of substance and color whose like I had never before seen. Higher and higher the countess and I climbed, amidst a stench that my nostrils knew not could be more foul than the putrid stew we had left behind in the eighth circle below. When we could climb no more, before us labored countless wretches, dumping shovelfuls of the mountain's body onto the souls of the eighth circle far below, providing the source of the noxious stew in which they wallowed. Said the countess to me, "The souls condemned to the ninth circle are guilty of sponsoring and acting upon errant guidance given by the fraudulent wretches stewing in the eighth circle with great impact to programs in their charge, without challenge, and in defiance of the more sage."

Great had been the struggle to bite my tongue thus far on the journey, but no longer was I able. With consent of the countess, I called to the nearest wretch having a load of foulness in his shovel, "Sir, which act of treachery did you commit to be condemned to this horrible place?" Replied he, "I am falsely accused of treachery, yet guilty only of being deceived by the fraudulent." Responded I, "Is it not treachery that you dismissed the counsel of your wisest sages, to the harm of your charge, because it came at the risk of forsaking the fruit and spoils promised by the fraudulent, upon which you relied for your own glory?"

Cried I to another miserable soul within earshot, "You sir, which treachery have you committed to be eternally condemned to a forsaken place such as this?" Replied he, "I am also falsely accused; my guilt is only failure to act against the angry." Responded I, "Is it not treachery for you to force your people to drink from a poisoned well and suffer its effects while you contentedly drink from your private one having fresh water?"

As fate would have it, not only were the treacherous forced to languish amidst the stench of products whose creation they had sanctioned, but their backs eternally strained under their burden.

From the Software Inferno led the countess, and I behind her kept.

The True Path

Thus completes the catalogue of evil filling the Software Inferno, of the people condemned therein, and of the admonishments cast upon them. I observed much suffering, horror, and despair in my travels but am now much the wiser for having done so and am confident that this journey provided the enlightenment necessary to return my feet onto the true path.

My journey served as a reminder that simultaneously placating the three beasts—Cost, Schedule, and Quality—is even more challenging when working amongst those who commit sins such as those condemned to the Software Inferno. In fact, I now believe that my inability to secure safe passage beyond these temperamental beasts early in my journey was reprimand for not having worked more diligently to help rid past projects of such sins and sinners.

Proactive leadership, value-based action, and balanced judgment are required to tame these three beasts. The angry cannot be allowed to poison the workplace, the fraudulent cannot be allowed to derail the common good, and the treacherous cannot be allowed to lead with a wayward compass. Developing quality software, on schedule, and within budget is difficult enough without also having to deal with avoidable and crippling disturbances.

With my journey complete, I must now make haste and return to my earthly existence. Shout I must from the highest mountain all that the countess has shown me to be the true path. Leaders must heed the sage, create harmony, and actively rid workplaces of scourges. The self-absorbed must take inventory of their lives and readjust their priorities. The successful must remember those who help them succeed, and share fruit.

Many more will be my shouts as the result of what the countess has shown me to be good. But I lament not having any special power to make well the ear of the deaf, to sway the stubborn, to soften the angry, or to enlighten the fool, because it is for souls such as these that the Software Inferno patiently awaits.

References

1. Brooks, Jr., F. P. 1975. The Mythical Man-Month. Reading, MA: Addison-Wesley.

2. Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1995. Design Patterns. Reading, MA: Addison Wesley.

3. SparkNotes Editors. 2002. SparkNote on Inferno. SparkNotes LLC; http://www.sparknotes.com/poetry/inferno/.

LOVE IT, HATE IT? LET US KNOW feedback@queue.acm.org

Alex Bell is a software architect with The Boeing Company. He has written several pieces for ACM Queue including "Death by UML Fever" (March 2004), "UML Fever: Diagnosis and Recovery" (March 2005), "Software Development Amidst the Whiz of Silver Bullets" (June 2006), "DOA with SOA" (February 2007), and "Ground Control to Architect Tom..." (September 2007). He is also the author of "Death by Agile Fever" (September 2012. http://www.infoq.com/articles/death-by-agile-fever)

© 2013 ACM 1542-7730/13/1100 $10.00

acmqueue

Originally published in Queue vol. 11, no. 11
see this item in the ACM Digital Library

Back to top

  • ALEX BELL is a software architect with The Boeing Company. He has written several pieces for ACM Queue including "Death by UML Fever" (March 2004).

    For additional information see the ACM Digital Library Author Page for: Alex E. Bell
     

Comments

  • Chris | Tue, 17 Dec 2013 15:14:47 UTC

    Using UML to describe something should guarantee one a place in such an inferno.
  • Ladi Olaofe | Wed, 18 Dec 2013 22:21:47 UTC

    There should be a special circle alone for the OOP crowd for all the years this philosophy has ruined cs education
  • Alex Roston | Wed, 18 Dec 2013 23:10:16 UTC

    Shouldn't there be a hideous beast at the center of The Software Inferno; a goat-legged, three headed beast chewing on Gates, Zuckerberg, and Poindexter?
  • Stanley Lieber | Thu, 19 Dec 2013 00:26:43 UTC

    http://doc.cat-v.org/inferno/
    
  • Drunky | Thu, 19 Dec 2013 07:10:44 UTC

    There's nothing here about guest worker visa fraud, layoffs, or the cancer of the MBA. Nor anything about the goof or slime of recruiters.
    
    ERROR: this Inferno is not valid.
  • Barry Demchak | Fri, 20 Dec 2013 21:16:52 UTC

    But what of those wretched souls victimized by product managers and editors so busily chasing the next deadline that they neglect the divinely ordained marriage of code writer with hapless documentation specialist. Even as code writers are destined to sin, product managers rob them of redemption by facing them towards the false light of The Next Big Thing at the expense of Users writhing in reams of false and uninspired documentation. Oh the Humanity! (Even we miserable Readers suffer from benevolent but lost graphical artists warping the Truth through falsely drawn arrows even on the very UML intended to save us -- Figure 1.) Help me, oh Countess Guide, to discover the Truth!
  • Hans | Sun, 05 Jan 2014 06:17:58 UTC

    Your words always seem to be broad generalizations, or simply tearing down what you don't approve of (or perhaps simply don't understand). So many words with so little concrete advice that we could learn from and apply. It would be great to hear of your successes in "delivering quality software, on schedule, and within budget," as you put it.
    
    Surely there must be something beyond "embassies"? ;-) Give us something we can use!
Leave this field empty

Post a Comment:

(Required)
(Required)
(Required - 4,000 character limit - HTML syntax is not allowed and will be removed)