I recently attended AgileCoachCamp and convened a discussion on whether Agile values, principles and practices would be applicable to Web 2.0 projects. Being relatively new to Web 2.0 from a developer perspective I suspected that the answer would be something like “Duh, of course Declan!” But I was really interested in exploring this intersection and I was not disappointed…
- Harness collective intelligence
- Web as a platform
- Data (it’s all about the data)
- End of the release cycle (i.e. continuous release)
- Lightweight programming and business models
- Software above a single device
- Rich user experience
And Mike threw in his own equation …
Web 2.0 = (You + Me) to the power of Us
Responding to Change
It turns our that Flickr updates its web site software as frequently as every 30 minutes. They release to a limited audience and collect feedback. They use these metrics to determine whether to roll out the changes to a wider audience.
I know a lot of agile teams struggle with getting timely end-user feed because of organizational and technical obstacles. Web 2.0 uses the web itself to amplify end-user feedback.
Test Driven Development
I have always thought that the core agile practice is TDD so I was interested if Web 2.0 technologies posed any unique TDD challenges. There are certainly Web 2.0 technologies out there such as rSpec for Ruby and various xUnit frameworks. Seems like there could be a weak spot with some of the RIA products such as Flex and AIR although there is TDD support for Silverlight. And the architectural separation of data in REST interfaces seem to makes REST applications inherently testable by mocking out REST interfaces.
So Web 2.0 seems to provide a suitable platform for test driven development. I wonder how prevalent TDD is in Web 2.0?
Hacking vs Sustainability
One miconception I constantly run up against is that agility is a licence to hack. It is hard to appreciate the discipline that is required to honestly do agile development until you try it. And early in a project it is often faster and easier to hack something together. But you pay for this many times over as the technical debt accumulates and cost of change rises and rises.
It seems that time-to-market pressure and rapid technological change might push companies to make rash decisions that impact their longer term sustainability.
Brothers in Arms
The panel seemed to agree that agility is tailor made for Web 2.0 projects. They truly can be brothers in arms.
I have a nagging fear that some in the Web 2.0 space regard agile practices as being too much process? If true, the irony would be truly breath-taking!
This is a topic which I will dig into deeper – I will be working with a Web 2.0 startup in the next few weeks and hope to learn much more …