UPDATED - There's a new term stomping around the online world lately: mashup (or mash-up, depending on where you...
read it). Ugly neologism though it is, the concept is catching on quickly.
What's a mashup? It's a Web site that gets all or part of its functionality by combining services exposed as APIs by other Web sites.
That's a bit abstract, so let's take a look at a random example from the hundreds of mash-ups out there: PackageMapper. Visit the site, and you can enter a FedEx (or DHL or USPS) tracking number to see the progress of the package towards your house plotted on a map.
If you had to sit down and write that whole application from scratch, it could take a good long while to get right. But of course the developer did no such thing. Instead, he's calling public APIs provided by FedEx to get tracking information, and public APIs provided by Google Maps to construct maps, and combining the results together. Voila! A mash-up!
Not every mashup is particularly useful (do we really need to plot the locations of buyers of 1984, mined from Amazon wishlists, on Google maps?), and many have no visible means of support (though there's always Google AdWords waiting to be mashed in). But this notion of taking bits of functionality that are already laying around and recombining them to form something new is suddenly making Web development much more like desktop development, in its use of library code instead of writing everything from scratch every time you need it. Directories like Mashup Feed and its parent site Programmable Web are springing up for those who want to track this new phenomenon.
Coupling Web applications together through easy APIs is getting its share of attention from Microsoft as well. Recently Microsoft CTO Ray Ozzie introduced the Live Clipboard, a cross-browser DHTML control designed to make it possible for end-users to add connectivity between Web sites, and between the Web and their local machine, without developer intervention. And if you happen to be doing your mashing with Microsoft's cutting-edge tools, you can enter the Mash It Up With Atlas contest, a hardware giveaway that could leave you holding a new Xbox 360 system.
For more evidence of Microsoft's interest in this bandwagon, you need look no further than the recently-launched Windows Live Developer Center on MSDN. Like the other MSDN Developer Centers, this landing page pulls together a bunch of information for developers, in this case related to the properties that have been grouped under the "Live" online banner: Search, Messenger, Virtual Earth, and so on. What's interesting is the branding that's being applied to the combined offering: "Platform and Services for Web Mashups." On the one hand, it's fair to say that they've found a parade and are just trying to get out in front of it: certainly far fewer mashups in the wild are using APIs from Microsoft than from other sources. But on the other, Microsoft is moving aggressively to make well-documented APIs to their Web properties available, and things like Virtual Earth and MSN Search should make fine building blocks for your future mashing activity.
The Web being what it is, no particular language or platform has a monopoly on building mashups. If you can parse and generate XML and HTTP, you can probably play in this arena. But I can't help thinking that old-time VBers may have a bit of an advantage here in the long run. What is a mashup, after all, but the latest rendition of component software on a new stage?
If you were comfortable 10 years ago adding value by sticking a careful selection of custom controls together inside a VB shell with some glue code, then you already understand the thought processes that go into building a mashup. Sure, the syntax may be a bit different, and you'll be using VB.NET and ASP.NET and a modern IDE instead of that pokey old Windows 3.1 box. But the underlying thought processes and metaphors are the same as they ever were.
Undoubtedly, many of today's mashups will fade to 404 pages as their creators' enthusiasm and money run out. But others will have staying power. The key to getting into the latter group is going to be the same as with any other class of software: identify a real need, figure out how to solve it with a minimum number of moving parts and without writing any unnecessary code, and execute it with talent and professionalism.
Mike Gunderloy is the Senior Technology Partner for Adaptive Strategy, a Washington State consulting firm. You can read more of Mike's work at his Larkware Web site, or contact him at MikeG1@larkfarm.com.