Tim O’Reilly is one of those people whose every word needs to be read and thought over. So, when you get a long interview, its time for plenty of thinking! There are two key points which Tim makes:
The big challenge will be what the Internet operating system will look like. It won’t look like the current generation of either .NET or SunONE or anything else that’s out there right now. What we need is to get to the next step from today’s situation, where there are a bunch of non-standardized techniques that only the alpha geeks know about and can use. We’re in the roll-your-own phase of Internet development. Now we need someone to package up all the really useful bits — to put all the great peer-to-peer and other tools together as part of a “standard” platform that all developers can use to create software. It’s like when Microsoft came out with the Win32 API; they told developers that, instead of having to worry about the thousands of drivers for the PC, they could just write for the APIs Microsoft provided. Someone will need to do that for the Internet platform. Wouldn’t it be great if someone could put MapQuest’s functions into an operating system, for example? That way, I could put a query to find the distance between any two points into any application I wanted. You need to expose these things to the programmers, not just the users. Give us some interfaces!
What has to happen is for a half-baked OS to emerge, with lots of problems that nonetheless highlight the issues. Only then can someone solve the various problems with a systematic solution.
Consider Web Services, for example. There’s a lot of potential in both J2EE and .NET, as well as in XML standards like SOAP, but what is missing are the actual programmable components. These are the equivalent of all those PC devices that were so burdensome to write drivers for, and for which Microsoft offered a solution with the Win32 API.
To me, these programmable components are all the various large Web-facing databases, and the equivalent of the build-your-own-driver school of programming are the Web spiders that access those services programmatically. Web spiders, including unauthorized interfaces built by screen scraping, are one trail of breadcrumbs we need to follow when looking at the functionality that an Internet operating system will need to provide.
My take: the next OS needs to be “an enterprise server OS” — it needs to be server-centric (because what we will use on the desktops are Thin Clients) and it needs to be focused on the enterprises, especially those at the bottom of the pyramid. Disruptive innovations have a knack of starting in the lower-end of the markets. I think there is an opportunity to create an OS which builds on Linux and incorporates elements from the Application Server to create a transaction-oriented “higher-level” OS. What’s needed are the interfaces forthe eBusiness applications to become components and talk to each other. They are the modern-day “drivers” of business. The simplified user-end needs to be a Digital Dashboard which runs in a browser and can handle RSS+ (more than just the RSS tags to support enterprise events).