got net?

Kevin Hazzard's Brain Spigot

About the author

Welcome to Kevin Hazzard's blog.
E-mail me Send mail

Recent posts

Recent comments

Authors

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010

Adopting the New Is Easy, Shedding the Old Not So Much

Towel dispender overloadingDo you work for a company that has a technology plan that looks like this? I ran into this scene a while back and felt compelled to snap a picture of it. For those who can't see the image, it depicts a wall with three different towel dispensers mounted on it. Actually one of the devices is an air-powered hand dryer. But it's in the same genre. We can imagine that over time, the size or form-factor of the towels that could be purchased changed which prompted the addition of a new dispenser. Then someone decided to add an air-powered hand dryer. But the older systems were never removed. They just kept adding on as their circumstances changed. I've actually seen walls with four or five differently-sized towel dispensers in place, most of them defunct.

When I snapped this picture, James Avery, Justin Etheredge and I were on the way to CodeStock in Knoxville, Tennessee. Like all good geeks, we had been talking about the virtues of good software architecture along the way, which is to say that we were really just complaining about the problems of bad software architecture. And when I saw this image, I couldn't help but think about how it represented the way in which many of our application architectures grow over time.

When a software system is new, it may be clean and well designed. More importantly, there are usually stewards who care about the way in which change takes place. But, over time, the original stewards leave to do other things. And the new caretakers either don't understand the spirit of the original design or they don't have a mandate to grow the system organically. In this state of affairs, when new requirements are encountered, the natural response is to create new sub-systems, not to evolve or depricate the old ones.

So, there it is. The natural state of application architecture is ugly. A few years back, everyone was talking about business agility. The television and magazine adverts all focused on how truly agile businesses could absorb new technology more quickly than their less agile competitors. Quite the contrary, I think that an agile business focuses on shedding the old stuff in balance and concert with its attempt to adopt new technology. Justin did a nice piece on Emergent Complexity that addresses this concept from a coding perspective. Check it out.


Posted by kevin on Thursday, December 04, 2008 1:49 PM
Permalink | Comments (4) | Post RSSRSS comment feed

Comments

Andy United States

Thursday, December 04, 2008 3:50 PM

Andy

Couldn't agree more, Kevin - great insight. The challenge I frequently see is in describing to the business the value of removing an older technology after a new technology has been introduced. All too often, technical choices seem to get simplified to "we'll do the new ones like this and the old ones like that".

I guess maintenance cost and general stability/clarity of software architecture are hard to put a dollar value on - particularly in the consulting industry.

Speed Dating United States

Sunday, December 14, 2008 6:58 PM

Speed Dating

Some technology is so outdated that it's impossible to improve on it. It's necessary to scrap old technology in this case and implement a whole new system for scrap. I think the problem is when new technology is scrapped instead of being further developed to satisfy the needs of the users. The problem is that not all technology is understood by everyone; and also some programmers don't want to take chances with programs they did not start from scratch. They feel more comfortable at times starting every anew.

Rumah ABi United States

Tuesday, December 16, 2008 11:07 PM

Rumah ABi

The challenge I frequently see is in describing to the business the value of removing an older technology after a new technology has been introduced

winrar United States

Saturday, January 17, 2009 11:12 PM

winrar

lol you're so funny!

Comments are closed