Web 2.0

 

Over­view

The last few years have seen the devel­op­ment of web-based tech­niques for com­bin­ing inform­a­tion from dif­fer­ent sources, for present­ing it in use­ful and con­veni­ent forms, and for improv­ing inter­ac­tion with and among your users. These tech­niques, gen­er­ally known as Web 2.0, provide a set of new oppor­tun­it­ies for using or re-using inform­a­tion to engage and retain your users.

To make best use of the tech­niques requires the inform­a­tion to be avail­able in the right form at the right time. XML provides a con­veni­ent com­mon format for this, let­ting you make bet­ter and more prof­it­able use of your information.

This course shows how you can provide bet­ter lever­age of exist­ing inform­a­tion, and trans­form oth­er­wise uncon­nec­ted resources into pro­duct­ive assets. Imple­ment­ing joined-up inform­a­tion involves tech­niques from the semantic web, iden­tity man­age­ment, and web ser­vices, as well as tra­di­tional resources like data­bases, repos­it­or­ies, and exist­ing web sites.

Classes for 2009

Build­ing Dynamic Web Applic­a­tions with XML

Taught by Norm Walsh.

One of the defin­ing char­ac­ter­ist­ics of “Web 2.0″ applic­a­tions is their dynamic nature. Where we used to speak of web pages, we now speak of web applic­a­tions. The dif­fer­ence is the product of new tech­no­lo­gies (XML, JSON), new design pat­terns (prin­cip­ally asyn­chron­ous com­mu­nic­a­tion), and broad sup­port for stand­ards in the browser (HTML, CSS, JavaScript).

This ses­sion will exam­ine each of these areas. We’ll explore how web stand­ards have enabled the deploy­ment of applic­a­tions on a web-wide scale. We’ll look at how new design pat­terns have made it pos­sible to cre­ate web pages that act like applic­a­tions. And we’ll look in some detail at how the under­ly­ing web pro­to­cols and data formats are used to power mod­ern Web 2.0 apps.

Build­ing and Doc­u­ment­ing Web APIs with JAX-RS and WADL.

Taught by Marc Had­ley.

Web 2.0 inter­faces and applic­a­tions are built on a back-end of data, for which the applic­a­tions and their serv­ers must have robust meth­ods of access, so that extens­ib­il­ity of con­trol and adapt­ab­il­ity to cir­cum­stances can be pro­grammed and documented.

This ses­sion will describe the use of the Java API for REST­ful Web Ser­vices (JAX-RS) to cre­ate Web APIs. It will show how to tie such APIs into back-end data and demon­strate use of the Java API for XML Data Bind­ing (JAXB) to trans­late data between Java objects, XML and JSON. This ses­sion will also cover use of the Web Applic­a­tion Descrip­tion Lan­guage (WADL) to describe Web APIs and describe both the bene­fits and poten­tial pit­falls of its use.

Smoke and Mir­rors: data source manip­u­la­tion for Web 2.0

Taught by Peter Flynn.

In an ideal world, all the data would be in the right place, in the right format, and avail­able at the right time. In real­ity we have to deal with miss­ing or broken data, down­time, and human error every day, espe­cially when mov­ing from Web 1.x to Web 2.x.

In this ses­sion, we will look at a vari­ety of ways of over­com­ing some of the defi­cien­cies of inform­a­tion sources. For new imple­ment­a­tions, espe­cially for organ­isa­tions mov­ing towards Web 2.0 for the first time, some solu­tions are presen­ted which can avoid com­prom­ising the res­ult­ing inter­face or break­ing the link in the inform­a­tion supply-chain.

Turn­ing the browser into a work station

Taught by Michael Sperberg-McQueen.

The Web pushes con­tent out from serv­ers onto users’ desktops. How much of the pro­cessing can we push out to the browser with it? Can we make our Web applic­a­tions dis­trib­uted not just in terms of the geo­graphic spread of the users but in terms of the CPU load? The more work we can per­form in the user’s machine, the less work must be done by the cent­ral server(s), and the less depend­ent the applic­a­tion is on net­work latency. Three tech­no­lo­gies can help.

First, data trans­form­a­tion in XSLT can run in the browser, instead of on the server, if we can work around the occa­sional gap in the exist­ing browser imple­ment­a­tions of XSLT. Second, Javas­cript can be used as a rel­at­ively simple glue to man­age XSLT trans­form­a­tions in the browser. Cross-browser lib­rar­ies make this easier than it would oth­er­wise be. Third, XForms can be used to turn the browser into an XML editor spe­cial­ized for a par­tic­u­lar vocab­u­lary and task, with soph­ist­ic­ated user-side val­id­a­tion of input and cross-field constraints.

© 2009-2012 XML Summer School Suffusion theme by Sayontan Sinha