Open Source: Not about TCO

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

Dan Lyke, Thursday February 10th, 2005

Wrote this for a thread on the Chugalug mailing list, it's here in the archives.

Donald Rudder writes:

> I agree, free is not always cheaper .... The trick is to higher an OSS
> geek to customize the app for your company for less that it would cost
> to buy something off the shelf.

I actually think that the "cheaper" argument doesn't work. Whether or not you believe Microsoft's TCO numbers, playing that game turns IT into a commodity, and leads to the sort of thinking that eventually gets the IT group outsourced.

But if IT in your company is a commodity, then the company is losing valuable competitive advantage by not leveraging its information resources as far as it should. What your company has over its competitors may be things like product or resources, but those things can change. Blink and Pepsi has taken the lead. What your company really has over its competitors are the business processes that make your company tick, and the culture of innovation that let those business processes evolve faster and more effectively than your competitors.

That's why you should be using open source.

This seems kind of counter-intuitive at first, "I should be using, and giving back to, open source, which everyone can run, to give me an advantage?"

Exactly. If you use proprietary software, you're locked into the Microsoft (or, to a lesser extent, SAP or Computer Associates, or Oracle) way of thinking. Any of your competitors can go to those companies and buy a similar business process to yours.

If you're really interested in innovating, you need to be building these capabilities not on the advice of some 24 year old who just graduated who's been trained to be an Oracle consultant by parrotting their business process line, but on the hard-fought experience of your own company, and the wisdom of the people who've guided that company to its success.

And for that you need a software infrastructure that's agile, you need to be able to get into the guts of the processes that make your company tick and be able to customize your computer systems heavily. And to do that you need in-house expertise able to reconfigure and add features to your software. You need to nurture these abilities so that a VP can walk down to the IT guys and say "I was wondering, what would happen if we...".

You need to nurture these abilities so that a front-line worker can go to the IT guys and say "my job would be easier if we...".

You don't have that sort of flexibility with commercial software.

So why not just develop everything in-house and keep it all proprietary to your own company, then? This one's slightly less obvious.

It's fairly obvious that the economics of software development support having lots of customers per developer. The more customers who use a given feature, the more money sloshing about to support the developers. So while you're out-innovating in terms of supporting your business process, you still need your developers to be feeding that larger customer base, which may include your competitors.

How does the open source software give you that advantage? Two ways:

First, working within an open source framework ensures that your developers are not writing one-off hacks, but are building maintainable, flexible software. They're cleaning up that afternoon of "can we try it this way?" into a reconfigurable system, and making sure that the code integrates in a way that's maintainable.

Second, your competitors are innovating fast. And your competitors have their own business processes. Companies are like people, one size doesn't fit all, and it's not like you can drop the innovations which make your groups run smoothly into just any other company and have like returns. These things need to be tailored. So giving the software which runs your internal business processes back to the open source community doesn't automatically give other companies your secrets, but it does let them rework your code to be more maintainable and flexible, so that it will match their processes as well as yours.

More flexible more adaptable systems evolve faster, and faster means your business processes can improve that much more quickly.

The real competitive advantage isn't "can we do the same thing, only cheaper". Blowing away the competition is all about "how can we do more?"

*That* is what open source is about.

If you're thinking in terms of "TCO", someone is about to eat your lunch. At that point you've lost, and IT is just another bottom-line expense.

Open source is about changing TCO into ROI.