Skip to content

A Dark Art

April 11, 2015

Hai Scelto Me.

Capped in snow, the Alps lay glistening before him, in all their majesty. Ski slopes, vast lakes and even the funiculars were clearly visible. The crew of the early morning flight afforded him this rare treat. A grandstand view from the cockpit.

The brief was meant to be a short assignment. The computer application had, inter alia, hit a brick wall. Trouble-shoot, Fix and Report was the succinct demand.

“Che diavolo sta succedendo?!” And lots more colourful language was to follow at the Level 1 Crisis meeting. A production outage demanded an eviction from the CIO’s office. From then on it contained a ménage of Managers, DBAs and Developers. Much of that first morning was wasted simply waiting for people to arrive. There was much speculation on the cause of the seemingly meaningless error message. Eventually, only the useful remained.

She was standing by his bedside. He awoke to find her there. Dressed in white and statuesque in appearance. He watched her turn and walk away, through the far wall.

His first step in the diagnosis of the problem was to ask “What exactly is the problem?” What is the actual error message? Make sense of it. Verify it. Concentrate on the actual error message because the rest are usually noise, caused by the knock-on effect of the first error. At what precise point does the problem occur? Can it be re-produced on demand? Can you see the line of code that is actually causing the problem? In short, do not speculate! Remember, there may be several different errors, so eliminating the first (or last) error may give rise to the next one.

What is causing it? What has changed? If you do not know then you need to be granted “privileges” – to be able to logon to the Production servers, execute code in de-bug mode, and to invoke Profiler and PerfMon. Having obtained the metrics, then determine what they actually mean! Which ones are important? Which ones can actually be trusted? Actually making sense of such data is a dark art.

What can you actually do about it? What kind of short-term fix (“hack”) are you allowed to make? Can you fix it without re-factoring, by simply scaling-up or possibly scaling out. It is usually cheaper to scale up than to re-write code, because a re-write means time and money. Afterwards, implement a Tactical solution, and then the correct long-term solution. Don’t forget about it. Add it to the backlog. Deal with Technical Debt.

In the foothills of the mountains there lies a medieval city. Destroyed by Attila, rebuilt by the Venetians. Upon his arrival for the week-end, something drew him to the site of Lotto’s altar masterpiece. Benefactors masquerading as saints? The gathering was somewhat amused by the Guide’s interpretation of the master’s message.  Solemnly, the master is saying unto us, Salvation can be obtained through Religion and Politics!

The steep uphill ride in the funicular was brief. Just a short time to reflect on the Missing Panels; and the altarpiece’s original monastic destination. A destination worthy of the complete work.

In the cool of the evening he made his way around the Citta Alta, starting out from the grand Piazza. To the city walls with those panoramic views of the plains, and then back towards the Rocca. He never quite made it to the top of the hill. Something made him stop at the Porta dei Morti. A stranger enlightened him. “By removing the deceased via a secret door, the Devil shouldn’t know she had gone.”

The ringing of the bells drew the crowds into the Basilica. He joined the throng for the morning Service. Difficult to follow, for it was not said in the vernacular. The faithful amidst the sea of the curious. One uplifted, the other in awe of their surroundings, not least the Cupola. Gazing at Fantoni’s wooden carving, he felt her presence most strongly during the Confiteor. Hast thy chosen me?

The Daily Shout was a quick conference call catch-up with all the interested parties. It was usually kept short, to 30 minutes, but much more than a Daily Stand-Up. Daily Objectives and Deliverables. Attended by experts and decision makers. To remove blockers, showstoppers and meddlers. Think Big Picture, then Small Picture.

Having solved the immediate problem, his advice, to those who were prepared to listen, was to look at the bigger picture. A wider audit would ask more questions, such as, “Is the system designed to perform”?  Also, always establish a Baseline and then proactively monitor system performance to that baseline. But he struggled with grasping the other big picture.

The boys choir was bringing the mid-day service to an end. The queues were already forming in the side aisles. At the head of the aisle there was a wooden structure, with two entrances. Two seats separated by an impassable divide. A structure that facilitated a dialogue between two strangers in the presence of another. “Lei ti scelto. Perché lei sapeva te sarebbe d’aiuto. Preghiamo.”

The final two Gatherings were diametrically opposite in nature and purpose. The first was the review of the Audit Report, finally created after endless drafts caused by endless reviews. Most importantly such a report is not a blame game, but should focus on Lessons Learned. Recommendations should be prioritized. The final meeting had a lot less colourful language. The initial brief had been accomplished.

He drove north in the pouring rain. Along the winding road by the vast inland sea. “At the top of the mountain there lies a meadow. In the midst of it there stands a fortress, without guards. Strangers cannot enter but they will know of your coming.” The skies were clearing when he made the ferry crossing.

The shadows were lengthening as he began the final treacherous ascent on foot. Urged on by the final words of the instruction.  “Stare con loro. Pregate con loro. E il vostro lavoro sarà fatto.” Guided by her presence for the last time.


From → Uncategorized

Comments are closed.