02 March 2011

Legacy of Crumbling Legacy

A software middleman's pitch to work on a re-write of legacy code might read like
...WANTED FOR HAZARDOUS JOURNEY. SMALL WAGES, BITTER COLD, LONG MONTHS OF COMPLETE DARKNESS, CONSTANT DANGER, SAFE RETURN DOUBTFUL. HONOR AND RECOGNITION IN CASE OF SUCCESS.
This ad was also allegedly placed in London newspapers by explorer Ernest Shackleton (1874-1922). Shackleton's fame followed several harrowing Antarctic expeditions to reach the South Pole -- none of them successful.

The excuse for dishing up the heaping spaghetti bowls of legacy code developers increasingly encounter is short-sighted profit-taking.

Thinking of legacy code, I think of a leg -- a leg dragging a ball on a chain. Few in the business sphere seem to consider a long-view. And to be fair to those folks, what good is a long view when just about everyone is one thin access card away from permanent severance? It's a current cultural deficiency.

Executive Consultants

If you're an executive, executive consultants aplenty are ringing your bell to tell you what you should already know...the obvious.

Amusement and amazement differ by two letters. The made-up word amuzement describes my impression of executive consultants making a living by
Stating the obvious.
In the scholarly sounding article The Financial Implications of Technical Debt, a well-regarded Agilista, Jim Highsmith, states the obvious. Devoid of cynicism, I might imagine an executive's response to reading this article as something akin to
No shit Sherlock
Surprisingly, the apparent reality given the Gartner Group Executive offerings, is that most CIOs must eat this shit up like it's revelatory Kool-Aid.

Mr. Highsmith springs a new acronym on me: CoC or Cost of Change. And to think, I snicker at vacuous acronyms like ROI.

To my amuzement, thinly cloaked business science is music to executives. But here's the executive summary:
If the CoC graph is somehow an ah-ha moment for you, shit's already oozing into your tassel loafers.
Two all-too-common software developer head-scratchers when burdened with fixing the plague of legacy code, or recovering from the prolonged ignorance of technical debt are
  1. How did this crap ever work? and
  2. How could they have waited this long?
There are business sectors notorious amongst developers for letting their software infrastructure crumble while they wring out every copper-wire of short-term gain.

Most seasoned contract developers can tell you what those sectors are. There is something about having wads of funny money to incinerate that somehow manifests organizational stupidity. A startup must spend judiciously. Yet
An organization that falls within the fat, dumb and happy Venn diagram can burn cash for heat.
Do you know who invented the copper wire? Fat, dumb and happy. The legend goes like this
Two fat, dumb and happy managers spotted a copper penny. Henceforth, the copper wire.
In the distant past, the practice of wringing out profit without re-investing in infrastructure was disparagingly known as:
"Running the company into the ground"
Today, turning a blind eye to re-investment is standard operating procedure. Companies decree institutional thumb twiddling until the door handles fall off.

Perhaps the pendulum will swing back to judicious re-investment.