I've been watching the various Internet platform plays with some interest recently. It's old news that Google is trying to leverage its search engine might into an overall dominance of the web services space. Amazon's S3 initiative is similar, and pretty useful to a developer, too, but I don't get the impression that Amazon is trying to take over the world with S3: it smells too experimental, like it's nothing more than a side-line to their e-commerce business. I've been playing around with Facebook's API recently, and there are a lot of things to like about their approach – but again, Facebook isn't going to take over the world either (though they seem well positioned to grind MySpace into the ground, at long last).
But a recent ZDNet post about Microsoft's "Cloud OS" got me thinking. Unlike Amazon and Facebook, but just like Google, MS does have the resources and the vision to take over the world. And the fact that they've (sort of) chosen the metaphor of an "operating system" to describe what they're doing shows the breadth and extent of their commitment to providing a set of basic, necessary and extensible services to Internet developers. Google is moving in the same direction, of course, what with the introduction of Google Gears and similar services, and I suspect that when all is said and done, they're going to have a fairly full-featured set of API's.
But I'm only hearing the "OS" metaphor from Microsoft (let me know if Google is talking that way anywhere). That's natural, to some degree, of course: MS has earned their current pinnacle of world dominance precisely through their control of the desktop operating system, so of course they would want to extend this to their next attempt to dominate the world.
But I wonder if it will actually work. I don't think you'll be able to make money – or much money – off of web services directly. You can't charge for a web-serviced based "operating system" the same way you can charge for a desktop OS. (Amazon's trying it with S3, but that's only in the enterprise market, and it doesn't lend itself well to your standard mash-up.) The point of this sort of platform play really has to be about controlling the platform, and that's the one thing you can't do with web services. If you're writing an application for Windows, and don't like the Win32 GDI, you can't really replace it with X-Windows (even though there technically ways to do it), or with Quartz. But if you build your entire application around web services, it's not that difficult to rip out Microsoft's mapping application and replace it with Google's (or vice versa). Unless I'm missing something obvious, you really can mix-and-match web service API's in a way that you can't mix-and-match OS API's.
So I'm not saying that this isn't all pretty darned cool – really, it's quite exciting, a new revolution in the making. And probably Google and MS will find ways of making money off of their API's indirectly, in ways that aren't really clear to me. But I'd be quite interested in hearing how executives at either company answer the question, "So when we've got this all rolled out, how's it going to make us any money?"