Do It Yourself Mashups
No innovation has struck the Web development community quite like mashups.The complete freedom that they offer proves vexing to some application designers and developers (What database should I use? How can I use SQL with this?), yet liberating to others (There is no limit to the applications I can build.).
I confess that I hardly know where to begin.I became computer savvy in the era when the connection between data and application was pretty straightforward.Even for data that was used in multiple applications, the requirements were pretty clear, and the location and format of the data were well known.As a college professor in the early 1990s, I described every application as fundamentally a database.The purpose of the application was to make the data in that database useful.For example, a word processing document was, fundamentally, a database of words, with an interface that organized and presented that data in a way that made sense to the user in that context.
Mashups are radically changing the data-application equation.If I can get at data, chances are I can use it in just about any application, whether or not that application already exists.And chances are that application will be unlike anything built before.At worst, it will have a unique twist to an already-established concept.
I've already written geographic mashups using Microsoft's Virtual Earth as a part of an ASP.NET application.Virtual Earth has an API that makes it exceptionally easy to call maps in just about any configuration, and overlay data on those maps from other Web sites or from local databases.
The next step is user-created mashups, those that enable individuals to build or customize data-logic combinations for their own unique needs.Users determine what data they need, what operations have to be performed on it, and how it is presented, then go ahead and do the implementation.
Sound far-fetched?Not as far-fetched as you might think.As an example, Yahoo's Pipes (pipes.yahoo.com) lets anyone combine, manipulate, and filter feeds into a unique feed.It provides a visual editor that allows you to represent feeds and actions as boxes, and connect them with wires.(A technically inclined person has to appreciate the Pipes name, which also refers to one particular method of moving data from one process to another on a computer).
Once you've built a Pipe, you'll be able save it on our server and then call it like you would any other feed.Further, you can use the output from a Pipe as input to yet another application, similar to the way you would use a Web service.
The trend is clearly lurching toward individual user control of both data and logic.IT professionals may cringe at the concept, but perhaps business is coming to the conclusion that line and staff employees with better information is superior to IT control of computing resources and applications.We know how this story usually ends – workers end up with bad data or unsupportable applications, IT costs rise, and the pendulum goes back to centralized IT control.Mashups may change that equation, and may put users permanently in charge.
Posted by Peter Varhol on 02/16/2007