October 19, 2005

Web 2.O : Mashups, Folksonomies

figure1.jpg

Tim O'Reilly of O'Relly computer books, recently published an article on Web 2.0. Buzzwords such as 'folksonomy', AJAX and "Mashup" herald not only new terms but new methodologies and applications that are guiding next generation web development. This entry looks at a few of these in light of a resurgent generation of developers willing to again push boundaries to possibilities of the Internet's original promise.

O'Reilly makes the distinction betweeen 1st and 2nd generation methodologies and companies:

Web 1.0 Web 2.0

DoubleClick --> Google AdSense
Ofoto --> Flickr
Akamai --> BitTorrent
mp3.com --> Napster
Britannica Online --> Wikipedia
personal websites --> blogging
evite --> upcoming.org and EVDB
domain name speculation --> search engine optimization
page views --> cost per click
screen scraping --> web services
publishing --> participation
content management systems --> wikis
directories (taxonomy) --> tagging ("folksonomy")
stickiness --> syndication


O'Reilly identifies Google as a paradigm case for a Web 2.0 company, centered on the 'database' with core competency in 'database management', different from Microsoft, Oracle, Netscape and SAP and in line with companies like Ebay, Amazon and Napster. He writes every significant internet application to date has been backed by a specialized database: Amazon's product database, Ebay's database of product and sellers, Mapquest's Map Database, Napster's song database.

O'Reilly is interested in the notion of 'the long tail', leveraging the collective power of the small sites that make up the bulk of the web's content.
Companies and entities who thrive in web 2.0 embrace the web's power to harness collective intelligence: Google's Page Rank technology, Ebay's product as the collective activity of its users, Amazon using the science of user engagment and self-generated reviews, Wikipedia, collective encyclopedia and user generated error correction. Flickr , pioneering "folsonomy" and collaborative categorization.

The lesson here is that 'network effects' from user contributions are key to market dominance in the Web 2.0 era. O'Reilly identifies viral marketing, open source software and blogs using RSS for creating trackbacks to create an architecture of participation. O'Reilly also identifies lightweight programming models and the opening of API's such as Google maps to create mashups or new applications based on databases being remixed together (ie. housing maps - Google maps + Craig's List). The next race surrounds owning or create certain large classes of data surrounding location, identity, calendaring of public events and namespaces. The value of Google maps set the world on fire directly because of its simplicity because of its 'data for the taking and re-use".

O'Reilly identifies 'internet era' software as being delivered as a 'service' not a product which leads to the end of the software release (version) cycle) and continuous improvements occuring. Users should be treated as co-developers. Monitoring real time user behavior becomes a core competency of a company.

O'Reilly - "There's something very akido (using your opponent's force against them) in saying "you know, you're right - absolutely anyon in the whole world CAN update this article. And guess what, that's bad news for you."

The significant lessons here are : supporint light weight programming models that allow for loosely coupled or tripled systems, think syndication not coordination, design for hackability and remixability ("some rights reserved). Similarly, lightweight business models are the concomitant of lightweight programming (i.e. Google AdSense or Amazon Associates Fees + great sight). When commodity components are abundant, you create value simply by assembling them in novel or effective ways.

Useful software written above the level of a single device will command high margins (Itunes + Ipod). O'Reily is also hot on platform agnostic applications currently popularized by Macromedia's "Rich Internet Applications", AJAX, Gmail.

Summarizing the core competencies and innovations of Web 2.0 companies, it is worth quoting O'Reilly in full:

Core Competencies

Services, not packaged software, with cost-effective scalability
Control over unique, hard-to-recreate data sources that get richer as more people use them
Trusting users as co-developers
Harnessing collective intelligence
Leveraging the long tail through customer self-service
Software above the level of a single device
Lightweight user interfaces, development models, AND business models


Web 2.0 Design Patterns

In his book, A Pattern Language, Christopher Alexander prescribes a format for the concise description of the solution to architectural problems: "Each pattern describes a problem that occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice.

The Long Tail

Small sites make up the bulk of the internet's content; narrow niches make up the bulk of internet's the possible applications. Therefore: Leverage customer-self service and algorithmic data management to reach out to the entire web, to the edges and not just the center, to the long tail and not just the head.

Data is the Next Intel Inside

Applications are increasingly data-driven. Therefore: For competitive advantage, seek to own a unique, hard-to-recreate source of data.


Users Add Value

The key to competitive advantage in internet applications is the extent to which users add their own data to that which you provide. Therefore: Don't restrict your "architecture of participation" to software development. Involve your users both implicitly and explicitly in adding value to your application.

Network Effects by Default

Only a small percentage of users will go to the trouble of adding value to your application. Therefore: Set inclusive defaults for aggregating user data as a side-effect of their use of the application.


Some Rights Reserved.

Intellectual property protection limits re-use and prevents experimentation. Therefore: When benefits come from collective adoption, not private restriction, make sure that barriers to adoption are low. Follow existing standards, and use licenses with as few restrictions as possible. Design for "hackability" and "remixability."

The Perpetual Beta

When devices and programs are connected to the internet, applications are no longer software artifacts, they are ongoing services. Therefore: Don't package up new features into monolithic releases, but instead add them on a regular basis as part of the normal user experience. Engage your users as real-time testers, and instrument the service so that you know how people use the new features.

Cooperate, Don't Control

Web 2.0 applications are built of a network of cooperating data services. Therefore: Offer web services interfaces and content syndication, and re-use the data services of others. Support lightweight programming models that allow for loosely-coupled systems.

Software Above the Level of a Single Device

The PC is no longer the only access device for internet applications, and applications that are limited to a single device are less valuable than those that are connected. Therefore: Design your application from the get-go to integrate services across handheld devices, PCs, and internet servers.


Posted by at October 19, 2005 10:38 AM | TrackBack