The shackles of safety

Saturday, 19 Aug 2006

Paul Ingevaldson:

On the surface, it always appears easier to install an outside package and not have to deal with the problems associated with customized development. Cost overruns, missed deadlines and unfulfilled expectations are no fun. […] But perhaps more important is the cost of opportunities lost by using software that everyone else uses.

If you have custom software, you can usually accommodate a new requirement at a reasonable cost. With an off-the-shelf package, this is often impossible. If a strategic initiative can’t be accomplished because of the shortcomings of the packaged system, then the cost could be incalculable. This is the true cost of off-the-shelf. You must learn to use the software the same way most everyone else uses it.

I wonder if Dell could have developed its logistics system under this type of constraint. I wonder if FedEx and UPS could have revolutionized the shipping industry when faced with this type of scenario. I wonder if Cemex in Mexico could have become a high-tech cement producer using this approach.

It’s hardly news that business types struggle to understand software.

Perhaps interesting is the promise that libre software brought to this scenario: start with an off-the-shelf package, but employ your own (small) cadre of programmers whose job is to maintain and modify the software.

The potential benefits are immense. Since you’re not starting from scratch, the initial risk is much smaller. At the same time, you are not bound to the interests of a vendor, who will only implement features that make business sense to support, i.e. ones that many vendor customers (are likely to) want. In fact, systemic changes to suit your needs and your needs alone are not only an option, but one with a clearly calculable risk at that. Even contributing all custom development back to the community, the company still comes out with the (potentially tremendous) net gain of being able to take the software exactly where needed, and all for the cost of a couple of programmer salaries, which is certainly no greater expense than a vendor support contract.

I first heard of this concept a few years ago, sitting in a talk by one John “maddog” Hall, whose enthusiasm was contagious. (Don’t miss the chance if you can see him speak – he is great.) He gave several examples of companies that have employed this approach with grand success.

Of course, in practice, this is unlikely to happen in textbook fashion for two reasons. The obvious one is that to even realise that this is a reasonable course of action runs counter to an off-the-shelf MBA’s mode of thinking. At the same time, the libre software landscape doesn’t exactly make this a no-brainer. Libre software is no less prone to bloat, overengineering and inflexibility than any other software development endeavour.

The bottom line comprises underperforming companies full of unhappy users supported by a frustrated IT staff.

There has to be a better way.

Via James Robertson.