Lingo Explained : Technical Debt

What is technical debt?

A design or construction approach that’s expedient in the short term but that creates a technical context in which the same work will cost more to do later than it would cost to do now (including increased cost over time)

technical-debt-explained

Example

“Guys, we don’t have time to dot every i and cross every t on this release. Just get the code done. It doesn’t have to be perfect. We’ll fix it after we release.”

A quote from the past

“As an evolving program is continually changed, its complexity, reflecting deteriorating structure, increases unless work is done to maintain or reduce it.” — Meir Manny Lehman, 1980

Need a bit more info? Check out the presentation on technical debt at the International Conference on Software Engineering anno 2013 or Wikipedia.

Advertisements

IT Budget : Run, Grow & Transform

One method of coping with your IT budget is by working with the “Run, Grow & Transform – Your business”-model. In essence is sets you to categorize your budget into three areas.

20130613-221110.jpg

Run covers the general day to day expenses of keeping the IT infrastructure running. Actually, this is your “SIB” (“Stay In Business”). Think in terms of lifecycle management and the human resource costs to maintain your environment.

Grow covers the expenses for expansion of services or growth of the company. Things like extending your virtualization or storage farm probably fall under this category. This budget aims to help the organization introduce new capabilities or improve existing ones.

And Transform covers the costs are made to change your nature. Here you should think of things like implementing a shopfloor system when coming from a paper workflow within an industry. These initiatives might seek to identify, for example, the right technologies for new organizational capabilities; fundamental changes to business processes; or a new product or service offering.

20130613-221240.jpg

When managing a budget in this manner, you should be able to gather tour full “Run” budget and a part of the “Grow” budget. If you fail to do so, then you have lost the confidence of your board. This part of the budget is in reality the minimal level you need to stay on par. A lower level will force you to start phasing out services from your service catalog!

Organizations that have to trim IT budgets should avoid cutting Run initiatives. Such cuts would introduce operational risk. If an organization already is going through a tough stretch, the last thing it needs is a server, application or network failure. This really is your “Stay in Business” IT budget.

Grow budget items should tie directly to the organization’s strategic initiatives. These initiatives usually are not as mission critical as Run initiatives and often have some time flexibility, which means that they are good candidates for starting early when additional cash is available, or for deferral if cash is tight.

When finances are tight, transform initiatives often are the first to be cut or deferred—unless they are associated with key strategic initiatives that the organization views as essential to its continued operation. Even if the organization doesn’t deem certain Transform initiatives immediately essential, care should be taken when considering cutting or deferring them. That’s because Transform initiatives often are key to the organization’s long-term health. Failure to provide adequate resources to Transform initiatives can stunt an organization’s future success.

Outsourcing IT? Some wisdoms to preserve the long term.

Listening to the sales talk
Sales persons in regards to IT software always say it’s easy to install & use. Yet from experience we know that this is correct if it’s done without straying from the path they had in mind. This being a “default default default” installlation without attempting to do anything “custom”. I use the term “custom” here very lightly, as mostly deviating from using a superuser will turn the application useless. Yet sadly enough, such a default installation is something that never occurs, unless you want to accept the given application as an “island” within your IT environment.

Integration & Maintenance are key!
The biggest downfalls of software is situated within Integration and on maintenance. If the integration part isn’t advertised during the sales round, then you can probably forget about that. To be clear; integration meaning when you want to use the data from a given application into another.

Good maintenance is a bulletproof installation which will last for ages! To be honest, I have yet to see an external party who thinks about the long term and therefor set up a system that’s rock solid and won’t budge even if an earthquake occurred. Most vendors think merely in regards to sales, where an unstable application provides them with billable hours (“consultancy” or support services).

Simply Put
As every management book tells you, think about our TCO. What’s that first character stand for? TOTAL… being the costs you’ll accumulate over the years. Looking short term will give your a big increase on maintenance which should not be treaded lightly. F*cked up installations are dreadfull to manage and will (Note: WILL, not might) give you disruptions in your availability. How much is such a downtime worth to you?

Werewolves anyone?

I truly enjoyed the “Managing werewolves” article by Michael Lopp.

This isn’t role-playing: this is life or death

Werewolf is a game and games are fictionalized simplifications of life that allow you to explore extremes of social interactions in ways you normally cannot. In real life, there’s a subtle but detectable flow to how a group of people interact. People adopt standard roles and act according to discernible rules. Unfortunately, it’s an impossibly long set of rules, because the rules vary as much as each person is different. In Werewolf, on the other hand, there’s a very small set of rules:

  • Villagers, kill Werewolves as best you can.
  • Werewolves, kill Villagers as best you can.
  • Sleep when you’re told to.
  • Survive.

Interwoven within these rules is the actual game, and therein lies the brilliance of a solid game of Werewolf: It’s a crucible of people dynamics, improvisation, and intellectual combat. In just a few short hours of game play, you realistically experience some of the worst meeting scenarios imaginable—and the motivation to handle these scenarios with care and agility because, well, you don’t want to die. I’m optimistic and, sometimes, realistic. I don’t actually believe someone will deliberately lie under normal circumstances, or that they are purely evil. There are those who have agendas that don’t align with mine, which gives them incentive to work against my interests, but they’re not just out to screw me—they’re out to succeed. Just like me. In reality, most meetings aren’t high-pressure, survival-of-the-fittest lynchfests. Many meetings are well structured affairs with hardly a drop of blood spilled. But each time you speak in a meeting, you get a moment in the spotlight to demonstrate that yes, you understand what’s going on, you are clear about the rules of this particular game, and you’re in it to win.

You think your business has it rough?

Macworld features an article called “Ten business lessons from ‘Battlestar Galactica'”

A summary

  • 1. Tech isn’t always the answer. : Totally agree… IT-ers tend to always go for a tech solution where a human solution might suffice!
  • 2. Don’t neglect training. : I guess nobody will disagree here, but companies often don’t see the hidden cost of neglecting to do so.
  • 3. Some things can’t be outsourced. : I’ll repeat it again; Outsourcing is good, but don’t do it on stategical areas!
  • 4. Update your antivirus. : Personally I’d like to see this one renamed to “keep your organization up-to-date”
  • 5. Democracy doesn’t always work. : A simple Project Management lesson; It’s a democracy until the scope is set, then it’s dictatorship!
  • 6. Some problems can’t be killed. : Indeed, not all problems can be killed, just learn to cope with them.
  • 7. Seek strategic alliances with competitors. : So true! Being a stategic game fan, I found that alliances either make or break any outcome of a game. The numerous time I’ve “won”, is always due to making (and breaking!) stategic alliances.
  • 8. Don’t store all your backups in one place. : Better renamed to “don’t put all your eggs in one basket”.
  • 9. The mission can change at any time. : A bit like 4., the world keeps evolving, incorporate that in your strategy.
  • 10. Beware of visionaries. Zealots make bad leaders. – Awh, crap, that’d be against me… 😉