26 June 2007

The smallest Linux computer in the world

By Andrew Clifford

IT is getting smaller, faster and cheaper all the time. The effects on enterprise IT will be profound.

The smallest Linux computer in the world is the Picotux, and it is really tiny. It is 35mm x 19mm x 19mm, and weighs just 19 grams.

The Picotux has been around for a couple of years. Its main use is in automation, to network-enable other devices, not as a general-purpose computer.

The Picotux is a super example of how processors, storage and networks are getting smaller, faster and cheaper all the time.

This trend will continue. New developments, such as quantum computing, offer unimaginable leaps forward.

Let's fast-forward a few years, and imagine a device:

What difference would this make to how you run your IT?

This is an important question because if we can not answer it we may have no part in the future. Even if our imaginary device never actually comes about, it represents the direction we are heading in and we need to understand our response.

This is a difficult question because our perceptions of IT are so bound by the restrictions of yesterday, when IT was so expensive and so cumbersome that it had to be centralised.

This is not just about hardware. IT management and design have assumed a centralised and technologically constrained model. When we talk about enterprise architecture, project portfolio management, IT security, and nearly any other aspect of IT management, we assume that there is a central organisation that has control over IT. Designing IT as a series of architectural layers - application server, database, data storage, network - is deeply rooted in restrictions of technology.

Enterprise IT will not disappear. An organisation's IT - the storage, processing and communication of information - is too valuable an asset to be ignored, or left to the vagaries of end-user spreadsheets.

But we do need to think what system architectures and management structures will make sense in our future unconstrained world, and start moving towards these.

I think the key to this is structure. Just because you will be able run everything on a single device, it does not mean that you should. Some structure makes sense because it helps us understand and manage. But what principles should we use to divide IT into chunks, and what rules should we have about the relationships between chunks?

My personal view is that system will become:

I may well be wrong. You may well have a different view. But the one thing certain about the future is that it is coming. We need to prepare ourselves for it, or risk being left behind.