Make your investment count

I recently had a conversation with a friend and fellow developer who was very excited. His company recently welcomed a new CIO to the organization, who had some, comparatively, progressive idea. One of his first actions was to increase IT development spending by several million dollars to tackle some projects that had had to be put off over the past few years, including renovating several applications that we’re quite performing up to expectations.

Unfortunately, while the CIO’s spirit was in the right place it became clear that his money was not.

The various development groups began developing applications the way they had always done, but made no effort to update their tools, techniques or practices. Instead of spending part of their substantial investment to introduce things like Agile methodologies, Test Driven Development, Web Standards, Source Control policies or automated builds, they proceeded to develop a whole new collection of applications like they had been developing them for years.

The group knew that these old practices had led them to a lot of pain in the past and needed to be revamped. But the organization placed value on raw lines of code and not the quality of what was being produced. As a result, those applications that needed “renovation” were simply ported from .NET 2.0 (and in some cases 1.1) to 3.5. Management was surprised when “upgrading” these applications did not result in large performance and stability increases.

Making a lot of changes to the way we work as developers can be scary. There’s a lot to learn, it seems complicated at the start, and no one wants to risk looking stupid. But it’s also important for us as individuals and software development in general to be willing to examine and investigate new techniques and tools that will make it easier to develop higher-quality code more efficiently. Keeping an open mind will unlock a lot of doors to improvement.

Companies need to understand that their code is an asset just like a building, vehicle fleet or piece of manufacturing equipment. You wouldn’t dream of letting those things fall into disrepair, so why are companies OK with their code base rot? When making an investment in IT, it’s important to understand where that money is going, and what it’s going to buy you in the long run. If you have a code base of dubious quality and pay for large teams to simply “plough ahead” you will just end up with a larger base of low quality code.

DotNetKicks Image
Print | posted on Sunday, August 02, 2009 10:05 AM

Feedback

# re: Make your investment count

left by Michael Collier at 8/2/2009 2:49 PM Gravatar
Good post. Well said.

# re: Make your investment count

left by Jon Kruger at 8/2/2009 8:35 PM Gravatar
I'm amazed at how IT "experts" are sometimes places in these CIO roles without any clue on how to develop software. CIOs obviously don't need to be involved in the day-to-day development of software, but they need to know enough to be able to hire the right person to do it. Unfortunately most CIOs have been in management for several years already and have forgotten everything they ever knew about software. All of this leads to lots of wasted money.

# re: Make your investment count

left by fruitmachine at 12/18/2009 6:12 AM Gravatar
Awesome, this was a really quality post. In theory I'd like to write like this too - taking time and real effort to make a good article... but what can I say... I procrastinate alot and never seem to get something done.

# re: Make your investment count

left by alcoholism treatment center at 1/9/2010 8:20 AM Gravatar
It helped me with ocean of knowledge so I really believe you will do much better in the future I appreciate everything you have added to my knowledge base .Admiring the time and effort you put into your blog and detailed information you offer!
Title  
Name
Email (never displayed)
Url
Comments   
Please add 4 and 7 and type the answer here: