Thursday, December 20, 2007

Open source's limitation

The last five years has seen the triumphant emergence of open source software. Linux, Apache, MySQL, and Firefox in particular have been huge forces for good across the industry.

By providing free reference code for key applications, open source has lowered costs for everyone else, encouraged innovation, and prevented vendor lock-in that seems so prevalent in IT.

Open source is also part of a fascinating cultural movement, spreading the wonderful idea that ideas - including code - should be free from control by any organisation or individual.

There is one limitation to this model - it only works for code (or system designs in general). If I want to actually run the application, I need to purchase hardware.

This might seem a trivial limitation, but it's already becoming important. Can you imagine an open source version of Google? No, because you would need to invest tens of billions of dollars to even run it! How about an open source Expedia, or Flickr, or Facebook? In fact, have you ever seen an open source website? Not even Wikipedia - if someone copied their code and created a clone website, they'd be pretty angry!

So far as I know, all these websites run on open source technology - Linux, Apache, PHP, etc. But they aren't open source themselves.

Some code only needs to be run once, for example, websites - the whole point of the URI is that you don't need two of them that do exactly the same thing! Other code can be re-used in many different places - I call this system software - operating systems and other applications 'under the hood'.

And that's the fundamental limitation of open source - in a world of web applications, it's only used as system software. When all applications are web applications, you won't have an open source office suite, an open source graphics package, or indeed any open source consumer applications except the browser / operating system which is local to every client.

It's not a bad thing - system software is what drives the entire internet - it just needs to be recognised that, on the web, open source's role will be restricted to under the hood.

No comments: