by Michael Platt
Summary: The old models of how peoplepublish and consume information on the Web have been radically transformed inrecent times. Instead of simply viewing information on static Web pages, usersnow publish their own content through blogs and wikis, and on photo- and video-sharingsites. People are collaborating, discussing and forming online communities, andcombining data, content, and services from multiple sources to createpersonalized experiences and applications.
Commonly and collectively called "Web 2.0," these newcontent-sharing sites, discussion and collaboration areas, and applicationdesign patterns or "mashups" are transforming the consumer Web. Theyalso represent a significant opportunity for organizations to build new socialand Web-based collaboration, productivity, and business systems, and to improvecost and revenue returns.
This article will examine how technology, data and people cometogether to make up Web 2.0; how Web 2.0 is being used in the consumer spacetoday; and how these techniques and concepts can be used both inside andoutside the enterprise to provide new productivity and business opportunities.(11 printed pages)
Web 2.0
The Web as a Platform
The Read/Write Web
The Social and Collaborative Web
Web 2.0 in the Enterprise
Enterprise 2.0
Business to Community (B2C 2.0)
Conclusion
Web applications have undergone significant change over the lastdecade; ten years ago, there were no Web-sharing sites or applications, merelysites composed of static pages or ecommerce applications. Companies that hadcustomer-facing Web sites were able to connect with Internet-savvy consumersand use their Web sites as a channels to market and sell their products;corporate intranets were used mainly as places to post news and companypolicies. More recently, Web sites have become destinations for communities ofusers to create and share rich and complex data, such as music, images, andvideo, and to discuss and rate that content.
This phenomenon was dubbed "Web 2.0" in a seminaldiscussion paper by Tim O'Reilly in September 2005, and it continues expandingtoday. In essence, Web 2.0 is the collective realization that the ability touse the Web to write as well as read rich content—combinedwith support for social networking and the rapid spread of broadband access—allows people to interact with the Web, with onlinecontent, and with one another. It represents a fundamental change in the waypeople interact with content, applications, and other users; the new Web is aplatform for harnessing and promoting collective intelligence. People are nolonger merely consumers of content and applications: They are participants,creating content and interacting with different services and people. More andmore people are creating blogs, contributing to knowledge bases such asWikipedia, and using peer-to-peer (P2P) technologies. Sometimes referred to asthe network effect, this increase in participation and content creationpresents new opportunities to involve the user in deeper, more meaningful ways.
Tim O'Reilly originally defined the characteristics of Web 2.0:
· The Web as a platform
· Harnessing collective intelligence
· Data as the next Intel inside
· End of the software release cycle
· Lightweight programming models
· Software above the level of a single device
· Rich user experience
These can be grouped into three areas: the use of the Web as aplatform, the Web as a place to read and write rich content, and the social andcollaborative use of the Web.
Web 2.0 systems use the Web as a platform, as a huge range ofinterconnected devices which can provide a new level of rich and immersiveexperience for the user, an easy-to-use and lightweight programming model forthe developer, and a rapid and flexible deployment mechanism for the supplier. Web2.0 re-envisions the Internet from the user, the developer, and the supplier'sperspectives, each of which allows new and creative uses of the Internet.
The concept of service underpins all connected systems, including,of course, Web 2.0. A service-based system is based on the principle ofseparation of concerns through the use of loose coupling or message passing.Loose coupling allows functionality to be created as a service and deliveredover a network; for example, in the Web 2.0 world, diary functionality can beprovided by a blog engine and be delivered as a service to the end user orblogger over the Internet.
This delivery of software functionality over the Internet iscommonly called Software as a Service (SaaS) and underpins most Web 2.0 systemstoday.
When we consider the Internet as a platform, we can see that ithas to provide a number of important platform elements such as deviceindependence, rich and common user interface, a common programming interface,and a software or service deployment and management mechanism.
We are very familiar with software on a server providing servicesto software on a PC (in Windows or in a browser), which then consumes or displaysthem. While this is a well-understood model, it does not cover a number ofcommon cases, such as P2P systems or delivery to non-PC devices such as musicplayers, phones or navigation devices. We need a model which includes thesecases and understands a higher level of service than basic HTTP to connect them;it needs to address the concepts of a music service such as iTunes or Napster,or a phone service such as Skype. We need to have a model which addressessoftware above the level of a single device and a single service but whichincludes rich, high-level services interconnecting a mesh of different devicetypes in a symmetric manner.
Probably the best example of this type of high level service isXbox Live where gaming services are supplied between specialist hardwaredevices working in a peer-to-peer manner. This model is the general-purposecase of service-based computing, and it is what Microsoft is calling a Software+ Services model of computing.
The value of rich and immersive user experience has beenwell-understood in the PC world since the advent of Windows and has been afocus of browser-based applications for many years, with JavaScript and DHTMLbeing introduced as lightweight ways of providing client-side programmabilityand enriching user experience in what is commonly called Rich InternetApplications (RIA).
The ability of the Web to provide this RIA functionality wasfirst shown by Outlook Web Access (OWA) which used JavaScript and DHTML toprovide full Windows-type interactivity in the browser. The collection oftechnologies used to provide these rich and dynamic browser-based systems hasbeen called Ajax, standing forAsynchronous JavaScript and XML. Ajaxisn't a single technology or even a set of new technologies, but insteadseveral technologies being used together in powerful new ways to provide RIAfunctionality. Ajax includes:
· Standards-based presentation using XHTML and CSS.
· Dynamic display and interaction using theDocument Object Model.
· Data interchange and manipulation using XML andXSLT.
· Asynchronous data retrieval using XMLHttpRequest.
· JavaScript as the programming metaphor.
Ajax is a keycomponent of most Web 2.0 applications and is providing the ability to createWeb applications as rich and dynamic as Windows-based applications; indeed, weare now seeing the advent of Ajax-based applications that can work whiledisconnected from the Internet and thus provide offline functionality similarto Windows-based clients such as Outlook.
There are also sets of technology other than Ajaxwhich are increasing the value of the user experience in areas such ascommunications, voice, and video. Instant messaging (IM) is heavily used in Web2.0 applications to provide instant communications, and there are a wide rangeof agents and delivery options available for IM systems. Voice over IP (VOIP)systems allow voice and teleconference communication over the Internet as partof the user experience. And finally, the provision of real-time, stored andbroadcast video rounds out the client experience.
The breadth, richness, and flexibility provided by thesetechnologies transforms the user interface beyond a dynamic UI to a fullinteractive audio visual experience, with new, powerful ways for people tointeract with systems and one another still being explored.
In Web 2.0, the programming models, concepts and techniques aresignificantly different from those that have been used in the enterprise. Whilethey are services-based and underpinned with the concept of messaging passing,they use Representational State Transfer (REST) protocols, and focus onsimplicity and ease of use.
Web 2.0 programming is based on the concept of separation ofconcerns using a loosely coupled, message-passing-based model on top of anInternet-based, standard set of communications protocols (HTTP) which is oftencalled RESTful programming. It implies the acts of syndication and compositionwhere services are provided without knowledge of their use. This is verydifferent from a conventional tightly coupled, transactional andobject-oriented system. It has a different set of benefits, such as flexibilityand speed of implementation, and challenges, such as integrity and management.
The languages—such as Perl,Python, and Ruby—and frameworks used in Web2.0 are simple and dynamic, providing a low barrier to entry and reuse and highproductivity. The frameworks have built-in support for common design patterns,such as Model View Controller (MVC), and methodologies, such as agile softwaredevelopment. They are quick and easy to learn, use, and be productive in.
Web 2.0 applications are inherently composable and compositable;because they are built with lightweight programming models and standards-basedservices, new applications can be created by composing or "mashing up"present applications and services. Mashups are where applications and servicesare composed at the UI; composition is the more general case of services beingreused, but both are easily supported in Web 2.0 programming.
The concepts behind Web 2.0 strike a new balance between thecontrol and administrative ease of centralized systems and the flexibility anduser empowerment of distributed systems. Web applications are by naturecentrally deployed, so central services can manage applications and entire desktopsautomatically. SaaS builds on this concept to provide the idea of software andservices delivery over the Internet. Web 2.0 builds on top of SaaS to providesocial and content services over a SaaS mechanism.
This usage of SaaS by Web 2.0 as a deployment and releasemethodology provides all the well-known SaaS advantages of simple deployment,minimized management and administration and, probably the most important,continual update. Thus, one of the most touted features of Web 2.0 (and SaaS)is the concept that the system is being constantly updated and enhanced, oftenin real time in response to user requests. Of course, the issue with this "perpetualbeta" that the Web 2.0 community has yet to come to grips with is whathappens to downstream or offline applications or services when services or datathat they've come to rely on a Web 2.0 application to provide disappear orchange.
The second important area of Web 2.0 is the focus on data andcontent, and in particular the ability for people to create and interact withrich content rather than just consume it. If the original Internet providedread access to data, then Web 2.0 is all about providing read and write accessto data from any source. This ability for anyone to create content has causedan explosion of availability of content of all sources (and of all types ofquality) and has at the same time created a whole new set of issues aroundvandalism, intellectual property, and integrity of data.
As the bandwidth available to the end user continuouslyincreases, the richness of the content that can be sent over the Internetincreases. The original Internet was all about text; Web 2.0 started with musicand images and moved into voice and video. Now TV and movies are the contentareas that are being investigated as part of Web 2.0.
While people and organizations have been searching, uploading anddownloading all this "explicit" data and content on the Web, theyhave at the same time being creating a huge amount of implicit data about wherethey are going and what they are doing. This implicit or attention data of Web2.0 can be used to predict future behavior or provide new attention-basedfeatures. This is how the major search engines work; they monitor the queriesthat people make and use that data to forecast what people are likely to lookfor in the future. Of course, the collection, storage, and use of this implicitdata raise challenging questions about ownership, privacy, and intellectualproperty (IP) which still have to be satisfactorily addressed.
Another issue with the huge amount of data on the Web is findingthings and navigating ways through it. Search engines use the implicit data (orpage ranks) to find textual data but this does not work very well with imagesor audio data. In addition, in many cases the search engine may not have enoughcontextual information to provide a valid result. In these cases tagging of thedata becomes a valuable way of assisting with data navigation. Web 2.0 applicationsuse tagging and "tag clouds" extensively as a way of finding andnavigating through the vast amount of data available on the Web.
Tag data is data about data, or metadata, and one of the majorissues with data and content on the Web is that caused by the lack of standardsfor metadata and schema. It is impossible to cut and paste something as simpleas an address on the Web because there is no standard format for addresses. Weneed to understand the different levels of metadata and have standards for whatthat metadata is, in order to liberate data on the Web and, in particular, toallow applications to composite data. This standardization of metadata on theWeb is what the Microformats organization is trying to provide.
The third key element of Web 2.0 systems is the concept of socialnetworks, community, collaboration and discussion. People naturally want tocommunicate, share and discuss; this communication is a key part of understanding,learning and creativity. The unique element that Web 2.0 brings is that ofsocial networks and community which are typically enabled by blogs, discussiongroups, and wikis. In Web 2.0, the sheer scale and number of people on theInternet creates an "architecture of participation" where theinteraction between people creates information and systems that get better themore they are used and the more people who use them. This harnessing of thecollective intelligence creates systems which have more and better informationthan any one person could generate; it provides the "wisdom of the crowds."
There are a number of different types of collaboration that canoccur in Web 2.0 systems:
· Content-based—People gather and collaborate around a piece ofnews or content, typically in a blog or a spaces-type environment.
· Group-based—People gather around an idea or interest such as ahobby and discuss it in forums.
· Project-based—People work together on a common task or projectsuch as a development project, a book, or even something as large as anencyclopedia using wikis.
All three types of collaboration are supported by Web 2.0systems.
Organizations of all types and sizes from startups to Fortune 100companies and from all industry verticals have seen the explosive growth on theWeb of social and community sites in the consumer space such as MySpace,YouTube, and the deluge of Web 2.0 sites. Enterprises have witnessed the movesof major Web players such as Amazon, eBay, Live, Google, and Yahoo to includesocial and community elements, and the interest and demand that this hascreated. They are now actively investigating and in many cases building newcommunity-based portals and businesses for their own organizations; Web 2.0 ismoving into the enterprise.
Organizations are interested in using Web 2.0 techniquesprimarily in two areas: inside the organization to improve efficiency andproductivity, and from the organization to the customers to improve revenue andcustomer satisfaction. The use of Web 2.0 within organizations is called Enterprise2.0 and is likely to be the first area where Web 2.0 will be used byorganizations. The use of Web 2.0 by enterprises to face their customers andconsumers is similar to Business to Customer (B2C) activity but with a socialand community focus so it is called Business to Community or B2C 2.0. Interestin this use of the "community as a customer" is rapidly growing.
Enterprise 2.0 or Web2.0 in the Enterprise is a termcoined by Professor MacAfee of the Harvard Business Schoolin 2006 to describe the use of Web 2.0 techniques within an organization toimprove productivity and efficiency.
Through the adoption of Web 2.0 techniques, information workers,like their consumer counterparts, are able to control their own userexperiences with less guidance from IT, and thus create for themselves a moreintuitive and efficient work environment. The end result is improved workerproductivity, morale, and satisfaction. Properly understood and deployed, Web2.0 technologies, methods, and patterns can be used in the enterprise to greateffect, boosting overall organizational productivity and efficiency. In thissection, we look at some the elements of Web 2.0 that make this possible.
Providing users with a single user experience for all their needsincreases productivity, minimizes training costs, and encourages deeperadoption and usage. This includes access to information and applicationswhether they are connected or disconnected, whether they are using a mobiledevice or a laptop, or whether they are using a thin client or a smart client.The rich user experience support provided by Ajaxand graphics subsystems such as Silverlight enable the rich user experiencepeople expect in today's systems.
One of the tenets of Web 2.0 is the concept of user-createdapplications or "mashups"—of user-generatedapplications using lightweight programming models. These promise to provide adramatic change from the bottlenecks and constraints associated withIT-generated applications. With Web 2.0 techniques, users can easily createapplications specific to their own needs. However, many current compositeapplication strategies fall short by focusing on simply resurfacingapplications in an Ajax interface(UI) and failing to provide true user enablement. To capitalize on theuser-driven application opportunity, enterprises must provide departments andusers with a managed environment and familiar tools that allow them to easilycustomize or create their own workspaces and solutions.
The underlying use of the Internet as a platform in Web 2.0allows the simple, rapid, and flexible distribution of applications and datathroughout the organization, removing the user from fixed and inflexible ITupgrade cycles and allowing a new level of organizational support andresponsiveness for the user.
Data and documents are critical to any organization, andservice-based systems such as Web 2.0 allow data and document creation,modification and exchange with greatly reduced complexity and enhanced ease ofuse. The provision of data, content management, and collaboration systems whichcan support the rich content format and social techniques of Web 2.0 iscritical for the use of the read/write Web in the Enterprise.
Enterprises with large employee, partner, and customer bases havelong known the value of the knowledge living in employees' heads and in thedatabases and unstructured documents found across the organization. Attempts tocollect this information into knowledge management systems have been made inthe past, with varying degrees of success but Web 2.0 technologies such asblogs, wikis, and enterprise search for people and data may lower the bar toknowledge management and provide a new platform for collaborating on complexand creative tasks. It should, however, be noted that the real barrier toknowledge management is around social and value issues in organizations ratherthan technical ones; these barriers are not addressed by the Web 2.0technologies, so it is not clear whether Web 2.0 will successfully enableknowledge management in organizations.
In conclusion, many Web 2.0 techniques can be used inorganizations in such areas as rapid application development using mashups andblog- and wiki-based knowledge management.
The area of Web 2.0 usage in the enterprise that has the greatestpotential impact from an organizational and revenue perspective is in thecustomer-facing areas of organizations; it is possible that the whole customercontact, sales, and CRM cycle will be changed by the use of Web 2.0 techniques.In marketing, the opportunity to provide rich, interactive media and closecustomer interactivity through wikis and blogs will provide new ways ofcontacting and engaging potential customers. In sales, the use of new formfactor devices such as mobile phones to interact with the customer throughoutthe sales process is another major area for new development. In customersupport, the use of experts in the community to assist with problem resolutionthrough discussion groups creates whole new support models. The reasons forthis interest are:
· Revenue and growth. Newrevenue streams can be built and present revenue streams enhanced throughcommunity and social networking. In particular, the cost containment of thelast five years has given way to business-side interest in innovation-basedgrowth and revenue. The rapid growth and innovation in the Web 2.0 space isseen as something that companies want to emulate.
· Web-based economies of scale.Companies see that they can dramatically cut the cost of capital equipment andpeople by using a Web-based delivery model to communities of their customers.B2C 2.0 companies are planning to support tens of millions of customers withjust hundreds of employees.
· Flexible employment models.The use of contract and agency staff for delivery allows flexibility andagility. Agency and contract staff can be thought of as another, specializedcommunity and can be supported with Web 2.0 techniques, similar to customers.
· Community creation asevangelism and support. Customers are a business's best sales,marketing, support, and development organization. The creation of communitieseffectively outsources these cost centers, at zero cost. Indeed, with theinclusion of targeted advertising to the community, many of the present costcenters may become profit centers.
· Community leader advantage.Community dynamics are such that the first successful community is by far themost powerful and the organization that owns this community is the one whichcontrols the space. If an organization's competitors are first in the communityspace they will have very significant competitive advantage.
There are five areas in which Web 2.0 techniques can be used inworking with customer communities to provide Business to Community.
A large percentage of new product ideas and innovations inorganizations come from suppliers and customers rather than from in-houseresearch and development organizations. These customer-generated new productideas are more likely to be successful as they have come from the end users ofthe product. Clearly, organizations that can build a system which harveststhese ideas can gain significant benefits. The use of Web 2.0–basedcustomer and supplier communities as discussion forums and marketing focusgroup for new product ideas and incubation is a powerful technique forgathering ideas simply and cost-effectively. Many organizations are activelyinvestigating the use of community forums and discussion groups in the productdevelopment process.
An additional benefit of this community-based new productdevelopment is that the customers have a better understanding of the product orservice delivered when they are involved in its gestation and so the customeruptake of the product will be significantly enhanced.
Probably the best known application of Web 2.0 techniques inorganizations is in the marketing departments as viral marketing. The examplesof community and rich content such as video being used to generate and spreadbuzz about products and services are legion. There are two elements to thisviral marketing, initial interest generation and then viral dissemination. Theinitial interest generation is best done with the use of innovative image,video and movie content; it is not unusual to get millions of downloads of acreative video within hours or days of release, and ongoing interest in aproduct can be sustained by including an informational or tutorial element tothe content. The dissemination of this material is done by the Internetcommunity at large using IM, e-mail, or community forums. Again thisdissemination can be very rapid and widespread. Engaging video of a new productor service may be passed to millions of people in hours and surface inmainstream media such as TV or newspapers in days.
There are, however, some caveats about viral marketing: Firstly,the target audience needs to be well understood, and, even then, the materialmay not generate community interest and buzz. Secondly, an organization cannotcontrol the spread or use of materials; the use of viral marketing techniquesby the community in unanticipated ways is well-documented and can createsignificant issues for an organization.
The cost of sale is normally a significant part of the overallcost of a product or service. In a Business to Community 2.0 organization, thecommunity acts as the salespeople so the cost of sale is dramatically reduced,in many cases to zero. The customers themselves act as spokespeople andsalespeople for the organization. There is no need for a high pressure and highcost sales organization in community-based businesses; in many cases, it iscounterproductive and will actually stall sales.
Support is the second best known area for the use of Web 2.0techniques. Firstly, there is the use of IM and chat techniques for real-timesupport of products by organizations—secondly,the use of image capture and video for problem communication and resolution.The use of community-based product experts and self-help discussion groups isthe third and most important area: Self-help has been shown to work very wellin communities and is a very low cost way of providing very high qualitysupport. As with most society-based systems however the actual mechanics ofthese self-help groups is not simple and requires significant thought andexpertise.
Probably the least explored usage of Web 2.0 in the enterprise isfor training and education. The availability of high quality image and videoprovides a very low cost and simple way of providing training and demonstrationmaterials. This rich content, when integrated with subject matter experts inthe community and active discussion groups provides a powerful and simpletraining and education environment. While there has been relatively littleactivity in the training and education area today, it is certain to growdramatically in the future.
Organizations are learning to see their customers and employeesas communities with which they have both an online and offline relationship ina multifaceted community-based sales cycle: A retail specialty store may havean in-store lecture by a national expert which creates a community onlinearound a topic of interest moderated by that expert. As part of the onlinediscussion, community members visit the store to see particular items ofinterest and then order those items online within a community rewards scheme.
In summary, the Web 2.0 areas of rich content and community arebeing used successfully by organizations today, both internally for knowledgecapture and reuse, and externally to create communities of customers. Whilemost of the interest today is in the knowledge capture and reuse, there arestill significant cultural and social issues to the successful implementationof these systems which are not solved by Web 2.0 techniques. The lesswell-explored area of the use of customer communities has much greater promiseto the organization, yet comes with its own concomitant risks around IP andvandalism which have to be addressed.
Overall, the use of Web 2.0 techniques in the enterprise promisesto have profound and far reaching effect on how organizations work both internallyand externally, creating completely new and powerful ways of reaching, sellingand supporting customers as communities.
Michael Platt is director of WebArchitecture Strategy in the architecture strategy group at Microsoft Corp. in Redmond.He has extensive experience in architecting Web and enterprise applications forlarge multinational enterprises, and some 30 years of experience in the ITindustry. Michael has been with Microsoft for 10 years in a number ofmanagement, strategy, presales and consultancy roles. He has an Honors Degreein Electronic and Electrical Engineering and a number of publisheddissertations and patents.
This article was published in the Architecture Journal, a print and online publication produced by Microsoft. For more articles from this publication, please visit the Architecture Journal Web site.