My Bashing Mash-ups
post has itself been bashed by some folks whose opinions matter to me so I need to try another way to express the point I was trying to make. I wasn't bashing the idea of platforms for mashups - i.e, intelligently designed APIs that expose functionality for other people or services to use. I was bashing the notion that people were going to build serious enterprise applications that way (even though the phrase "enterprise mash-up"
seems to be well along the hype curve). A huge problem for enterprise applications is getting all the different information sources and silos to make sense to each other, and this semantic integration challenge is simply too difficult to attack with the level of sophistication I've seen implemented so far in most mash-ups. Take a look at any of David Linthicum's books on application integration (or just read his blog called "A CEO's Guide to EAI, SOA, and Business Integration"
) for war stories. Enterprise applications aren't assembled in a weekend, but that seems to be the typical effort expended in creating a mash-up. So we're at very different points on the continuum.
Of course, maybe my dispute is just about the names of things, and we all know how contentious names are. Perhaps we're just expanding the notion of "mash up" to include any combination / integration of information from multiple sources, and we can dispense with making any distinction between the categories of mapping and transformation tools, integration servers, message-oriented-middleware, process control engines, EAI, etc. and just call it all "mashware." When every use of software-as-a-service is viewed as a mashup, I'll surrender and stop thinking of mashups and enterprise apps or complexly-choreographed web services as being on a continuum, but until then let's not eliminate all nuance in our discussions about building things.