We keep talking about a world of Software + Services. I saw a slide recently that talked about this almost in the form of "Client / Server 2.0"
The idea went like this
- First we had the PC / Mainframe era. It was either anarchic on the PC or Controlled and restricted as a central service
- Then we had the client / Server era. PCs consumed central services but both halves were smart.
- Then the Internet came along. Web sites gave you what they gave you, and didn't provide services to be consumed, the client was relatively "dumb"
- Then the internet evolved into providing services which could be consumed ...
is this the much talked about web 2.0 ? No. I find that to be one of the more irritating buzz phrases of the moment. Is it about services ? Not really. Is it about user generated content. Kind of, but not really either. I found a good quote recently about web 2.0 (and I can't find it again), but the gist was that that it is about services that become better as you add users. Lots of people using a Search engine doesn't make it better. Lots of people using X-box live doesn't make that better. Lots of people using MySpace, Twitter, or Facebook does make them better. And that is partly because each participant contributes.
Software + Services is a way of providing that "Client / Server 2.0" so that the whole is more than the sum of the parts. The revelation of the X-box 360 for me has been Xbox live. I was expecting it to be the media centre extender but I still haven't set up a permanent media centre at home. But I've used Xbox live a lot, not as a way of playing against other people, but as a mechanism for getting new games, demo games and videos; these services give me a better experience of the Xbox, but they couldn't exist without the sophisticated client platform the 360 provides.
The folks at Bungie have taken this a step further. Actually they've taken things several steps further. The first thing is they put a data recorder into Halo 3. This lets you go to "saved films", (their video linked from that page is pretty amazing.). The game is re-rendered in real time from the saved data, but you can move the "Camera" view point around in real time. Fire a rocket, pause the action fly round to the target and watch it fly in and hit in slow motion. Race through to that heroic moment where you took on an enemy tank and view it from all angles. Didn't see the enemy who killed you, find them on a replay. It adds a whole new dimension to the game, last night I spent more time playing with saved films than playing the game. But there's more. The saved films will let you capture clips or stills and upload them via Xbox live. I can send links to my "friends" on X-box live.
But the service is better than that. Bungie's web site displays my pictures to to the world , not just people on Xbox live. And of course I can download them to my PC, crop them and then push them up to a blog post using Windows Live Writer. Writer too is an example of the software + Services model. The PC is better at editing a blog post than any of the blog sites I've looked at. Writer uses a published web service API to interact with sites: instead of the PC platform benefiting from the service the blog service is getting something extra from the PC platform.
Of course there are people who offer software-as-a-service, in other words the PC becomes a (relatively dumb) terminal to run applications in the browser; this does have a place, but replacing an application that runs on the PC with one which delivers less running in a browser isn't compelling. So Software + Services can help us to span platforms (X-box and PC in this case), and combining a service "in the cloud" with a smart client produces a new class of applications which do more. Posting a picture from a console game (in this case of an Alien about to be hit by a fuel rod cannon shot) to a personal web page might be a trivial use of the capability, but 5 years ago it would have seemed impossible.