Anyone remember TerraServer? About five years ago, it was one of our higher profile demonstration sites - over 1TB of satellite imagery data crammed into a single SQL Server database. That doesn't sound nearly as impressive today when I've got a single 500GB USB2 drive humming quietly under my desk, but at the time it was a big deal. TerraServer lives on, incidentally, now with a .NET web service and over 3TB of data, but I digress...

What made TerraServer fantastic was the ability to zoom in right down to street level from a satellite image; there was nothing neater than being able to see your own street or somewhere you recognised as part of a satellite image. But the interface was a little lame; you were simply pulling down static images.

This week, however, I came across a fantastic piece of software called Keyhole that lets you browse similar images in a vastly more interactive manner. You can zoom in or out, create virtual flights where you move around the world, even tilt the images so that you're viewing the terrain of a country. Keyhole adds geographical elevation data to the images, to give them a 3D effect, and it's truly one of the most mesmerising experiences I've had from a piece of software. It caches the data so you can view it offline, and it even allows you to fly over Mars using imagery from NASA.

Two things make this work effectively - the ultra-powerful graphics accelerator cards that are available even on laptops these days, and (brace yourself) the use of web services. I've no idea whether Keyhole uses standards like SOAP under the covers or not, but regardless of the wire format, it's about as visual a demonstration of a web service as any I've come across thus far. Without a remote server and an HTTP-based web service, this application simply couldn't exist.

The only pity is that there's a limited amount of imagery covering Europe, although Greater London and Paris are both covered. Nevertheless, definitely something to experiment with - you'll get hours of enjoyment out of it!