Are Mashups the 'Agile' Part of Web 2.0?
I've been into computers since I was 4 years old. I went to an esteemed (so they tell me) computer science school, or at least that's what they tell me. I've worked for every kind of software shop: the Big 6 (now 4) consultancies, a couple of startups, and even 'the Big O' (yes, Oracle). So I thought I was familiar with most techniques, theories and approaches to software development. Well, it seems I missed one.
About 8 weeks ago Deepak Alur, JackBe's ever-vigilant VP of Development, sent me a link to a video that was hilariously entitled 'Does My Bus Look Big In This?'. The co-presenters, Martin Fowler and Jim Webber, are apparently well-known personalities in the Agile community. They build a reasonable case for an 'Agile' SOA that is essentially ESB-less and they manage to work in a bunch of one-liners at the same time. What I didn't realize was that the video was just the beginning of a proverbial Agile blizzard.
Soon after I met Ira Gluck and Karen Castilon from Command Information, one of JackBe's newest partners. As it turns out, Command Information has a ton of Agile expertise and approached JackBe because they viewed mashups as a solution that matched the goal of Agile. They even delivered a paper on mashups at the Agile 2008 Conference in Toronto a few weeks ago.
But my string of Agile coincidences didn't t stop there. Marko Banjanin, a masters student at Erasmus University Rotterdam, contacted me to ask for help in investigating the relationship between agile project management methodologies and the development of enterprise mashups. In true Web 2.0 collaborative style, his research includes a survey (http://www.surveymonkey.com/s.aspx?sm=DWPADhdeuSC3ShDN8BIicA_3d_3d) that any mashup-aware technologist is welcome to participate in.
And I continue to see Agile everywhere I look. Borland, that long-lived purveyor of software development productivity tools, has 'gone Agile', it seems, and is telling everybody about it. And then there's the CIO.com case study of an Agile project gone terribly, terribly wrong.
Which brings me [belatedly] back to the question I started with: are mashups the Agile part of Web 2.0? For those of you who want to play in this game but, like me, are Agile noobies, I'd refer you to the Wikipedia entry for Agile. For me, the first few seemed sentences cover the most important characteristic of Agile:
That leaves RIAs and mashups. Certainly, RIAs are software development tools that result in applications that can be deployed easier than their desktop counterparts. But do we talk about RIA development in two to four weeks? Perhaps so. Certainly JackBe's own experiences with RIA tools bears this out.
And then there are mashups. At JackBe, we often see mashups created in time spans from minutes (yes, really) to a few days. The longer ones typically have some mitigating circumstance such as multi-step service interfaces (thank you, Salesforce.com) or a sophisticated RIA UI that fronts them. And just like an Agile project, we often iterate through many versions/renditions of a mashup, adding more sources services or a better presentation interface. That sounds Agile-ish, I think.
So perhaps both mashups and RIAs can lay claim to the Agile Web 2.0 crown. If you're an adherent to the Agile creed, I'd love here what you think!





