Acronyms, Vocabulary and Concepts of Web 2.0
Ron Burns Director, Software Product Management EBSCO Publishing
Web 2.0
The O’Reilly Brainstorm
Web 1.0
DoubleClick Ofoto mp3.com Britannica Online personal websites screen scraping Publishing content mgt systems directories (taxonomy) Stickiness
Web 2.0
Google Adsense Flickr Napster Wikipedia blogging web services participation wikis tagging ("folksonomy") syndication
Web 2.0
Web 2.0 Technology Concepts
• Open Software and Development
– Open Source Software and Code
• Exposing and Accessing Data
– API, WS, REST, RSS, SRW/U, OAI-PMH
• Combinations of Development Concepts
– AJAX, AII, Mashups/Remix
Web 2.0
Open Software and Development
“Web 2.0 is an attitude not a technology. It's about enabling and encouraging participation through open applications and services. By open I mean technically open with appropriate APIs but also, more importantly, socially open, with rights granted to use the content in new and exciting contexts.“
http://internetalchemy.org/2005/07/talis-web-20-and-all-that
Web 2.0
Open Source Software (OSS)
• Source code available for the public to copy, modify and redistribute without paying royalties or fees
– GNU General Public License, Apache Software License, …
• Evolves by community development (individual programmers
as well as large companies)
• Mozilla (Netscape)
• Operating Systems: Linux, BSD • Server Software: Apache, Tomcat, MySQL • Coding Languages: Perl, PHP, Python, Ruby on Rails • SourceForge.net, 100,000+ open source software projects
Web 2.0
Scripting Languages
• No compiling, fast development, quick updates and deployment • JavaScript, no longer captive to old browsers or popups • Perl, a favorite among sys admins and backend developers • Ruby on Rails
– Open Source, interpreted, cross-platform, scripting language – Simple, straight-forward, extensible, and portable – Object-oriented from inception – Borrows features from many languages, “Better Perl than Perl“ – Made for rapid development
Web 2.0
Software Releases
• Software as a service, not as a product • Daily updates and system administration become key process, cost advantage over competitors • “Release early and release often“ • “The perpetual Beta” • Users as co-developers, open source development practices • Real time monitoring of user behavior
– Which new features are used – How are features used
Web 2.0
Managing Web Sites
• Free Software and Services • Wiki* • Blog*
• RSS* and ATOM for syndication • Folksonomy or Tagging* • Greasemonkey
* further described in separate sessions
Web 2.0
Device Agnostic Software
• No longer limited to the PC • iPod/iTunes combination, designed to span multiple devices • Biggest area of growth, more types devices will connect • Phones and cars, applications for being data providers
– Real time traffic monitoring – Citizen journalism
• Office Productivity Suites
– MS Live, Office Online – Sun/Google, OpenOffice.org and Google Toolbar
Web 2.0
Exposing and Accessing Data
“Think syndication, not coordination… about syndicating data outwards, not controlling what happens when it gets to the other end of the connection… Organic web services… Design for hackability and remixability“
http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html
Web 2.0
Data
• Specialized databases power key web sites
– Google's web index, Yahoo's directory, Amazon's products, eBay's products and sellers, MapQuest's maps, Napster's songs
• Database management is core, "infoware" vs software • Who owns the data? • Affects competitive position if others can license
– MapQuest Yahoo, Microsoft, Google – Amazon / Bowker Amazon “Enhanced”
• Proprietary software led to the Free Software movement • Proprietary databases will result in a Free Data movement
– Wikipedia, Creative Commons, etc
Web 2.0
API
• API (Application Programming Interface) • Companies with data stores (eBay, Amazon, Google) create APIs for developers to hook into • Provide public access to information that would have been private previously, changing the way people interact with web sites • The building blocks of web services
Web 2.0
Web Services
• Interoperable interaction over networks, with an interface described in a machine-processable format (WSDL) • Applications interact with Web Services using messages defined in the WS’s interface • These messages are typically via SOAP(Simple Object Access Protocol) or REST(Representational State Transfer), over HTTP with XML in conjunction with other Web-related standards
• Disparate applications can use web services to exchange data (e.g., between Java and Microsoft Windows and Linux applications) • Interoperability by open standards, OASIS and W3C
Web 2.0
REST
• Representational State Transfer • Provide XML data over HTTP, in a lightweight approach • The blogosphere is mostly REST-based, downloading XML files (e.g. RSS) that contain lists of links to other resources • REST developer interfaces: eBay, Bloglines, Yahoo… • Amazon offers SOAP and REST
– High value B2B (i.e. Amazon and ToysRUs) use the SOAP – But overall, 95% of usage is with the lightweight REST service
• Simple, "organic" web services
Web 2.0
SRW/U
• SRW: Search and Retrieve on the Web • SRU: Search and Retrieve with URL’s
– http://deimos.oclc.org/SRW/etdcat?query=nuclear&maxRecords=9
• Allows users to search remote databases • XML, HTTP, and SOAP(SRW) or URL(SRU) perform tasks traditionally done using proprietary solutions (e.g. Z39.50) • CQL (Common Query Language), designed for human readable • OCLC open source projects
Web 2.0
OAI-PMH
• Open Archives Initiative Protocol for Metadata Harvesting • Data Providers use OAI-PMH to expose metadata • Service Providers use “harvesters” to collect metadata from repositories via OAI-PMH, then build value-added services • Dublin Core Metadata Initiative (DCMI), optional metadata
– Title, Subject, Publisher, Date, Format, Language, etc
• Software available that supports OAI-PMH:
– GNU EPrints from University of Southampton – DSpace from MIT Web 2.0
Combinations of Development Concepts
“Interaction interfaces to provide value above and beyond what the solitary sites can add themselves “
http://bokardo.com/archives/two-kinds-of-interfaces-for-web-20
“Google Maps' simple AJAX (Javascript and XML) interface was quickly decrypted by hackers, who then proceeded to remix the data into new services”
http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html
Web 2.0
AII, Mashups, Remixing…
• AII (Application Interaction Interface)
– Built on top of the APIs, a web application – Provide value beyond what solitary sites
• Google's lightweight programming model has led to the creation of numerous value-added services in combination with other internet-accessible data sources • Housingmaps.com – combines Google Maps with Craigslist apartment/home listings as interactive housing search tool • Andale.com – interfaces to eBay, Froogle, Shopping.com… • Kayak.com – interfaces to all travel and airline sites
Web 2.0
AJAX
• Asynchronous JavaScript and XML • Then: Page refreshes, Java Applets, Flash • Now: Web applications with rich UIs, PC-like interactivity
– Google, Gmail, Maps, Suggests
– Zimbra high-end corporate-style e-mail (think MS Outlook)
• AJAX is a collection of technologies
– Standards-based presentation using XHTML and CSS – Data interchange and manipulation using XML and XSLT – Asynchronous data retrieval using XMLHttpRequest
– JavaScript binding everything together
Web 2.0
AJAX
• Instant field checking • Single screen interfaces • User actions are a JavaScript call to the AJAX engine (not an HTTP request) – simple data validation, editing data in memory, some navigation • Transparent, data from server requested asynchronously, via XML, no pause to user’s application experience • Other Examples:
– Flickr, Amazon A9, Kayak.com, Sabre air scheduling
Web 2.0
O’Reilly’s Web 2.0 Core Competencies
• Services, not packaged software, 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 • Customer self-service
• Software above the level of a single device • Lightweight user interfaces, development models, and business models
Web 2.0
Links and References
• http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-isweb-20.html
• http://bokardo.com/archives/two-kinds-of-interfaces-for-web-20/ • http://uie.com/articles/ajax/ • http://internetalchemy.org/2005/07/talis-web-20-and-all-that • http://www.oclc.org/research/software/srw/default.htm • http://www.loc.gov/z3950/agency/zing/zing.html • http://www.rubyonrails.org • http://en.wikipedia.org
• http://www.usatoday.com/money/industries/technology/maney/200510-11-tech-industry_x.htm • http://www.openarchives.org
Web 2.0
Thank You