The third aspect of Web 2.0, which is often under-appreciated, is the process aspect. This has changed people’s expectations of what software can do, and how it should be delivered. This category includes open source, continual beta and quick release cycles, and some new business models.
Not all of the things that are important in Web 2.0 are new, of course. Open Source software has been around for a long time, but I would argue that it has never been as popular as now, where more people have the ability to contribute their time and talent to projects for which they’re not directly paid (unless they’re lucky enough to work for a company that supports such projects).
The concepts of continual beta and quick release cycles are new though. It wasn’t that long ago that you could only buy consumer-level software in boxes with pretty pictures and printed manuals, either in stores or by calling companies. For expensive software that needed consulting services to install and configure sales reps would visit if you worked for a large enough company. To take part in a beta program you needed to know someone who worked in the company and sign an NDA, and it was a small, tightly-controlled circle.
These days the Web 2.0 browser-based applications don’t need hand-holding to install and configure, so the server load is the big constraint on how many people can take part at once. There are several flavours of beta programs: invite some “thought leaders” and ask them to invite their friends in the hope they’ll blog a lot about it (Gmail did this, you got 6 invites, then 50, then you could invite 250 of your closest friends to take part, most of whom already had gmail accounts); unlimited invites starting with a small circle; sign up on a waiting list; allow in anyone from certain companies (dopplr does this, with the twist that the members can then invite anyone they like).
The “continual beta” bit comes from the fact that these applications are updated quickly; these updates are often tried out on some of the users before being rolled out to all. Flickr apparently had hundreds of incremental releases in 18 months from February 2004 to October 2005 (stated in O’Reilly’s Web 2.0 Principles and Best Practices; I couldn’t find an online reference other than that report). The line between a beta and a non-beta application seems to be a fine one; the only distinction in many cases that the user can see is the word “beta” on the web site. Continual releases give users a reason to come back often, new features can be tested and fixed quickly. Of course, this sort of system doesn’t really work for fundamental software such as operating systems, databases, browsers, identity providers, and directory services, where you want full-on security and regression testing, but it does work for the Web 2.0 applications that run on those bits of fundamental software.
And in keeping with the user-created tenets of Web 2.0, platforms such as Facebook that enable third-party developers to write applications to run on that platform also fulfill the function of continually adding features to the application without the owners needing to code anything, or pay people to add features. The users do it all for them – use the platform, add features to the platform, market their added features. The owners supply the hardware and the basic infrastructure (which needs to be stable and reliable) and the users do the rest. At least, that’s the theory and the hope.
Which brings us to the business models. How do people pay for the hardware, software, programmers, marketing? There are a number of ways in which Web 2.0 companies try to cover the bills for long enough to survive until they can be acquired by some bigger company. One is advertising. Google and its competitors have made it easy for even small web sites, such as bloggers in the long tail, to make some money from ads. It’s more than enough to pay the bills for some sites, since it’s now cheap or free to build and launch a site. Some sites are free when you watch the ads, but you can pay for an ad-free version. Or free for private use, but cost something for commercial use. And then there’s the variant where a basic account is free, but you have to pay if you want more features, such as uploading files, or uploading more than a certain number of photos. A variant for open source software is that the software is free, but you need to pay for support or real help in configuring it, or to get new releases more quickly.