November 4, 2009
This article was contributed by Koen Vervloesem
At the end of October, NLUUG held its Fall Conference with the theme The Open Web. Steven Pemberton, researcher at
the Centre for Mathematics and Computer Science in Amsterdam and involved
with the web since the beginning, set the stage with his keynote about the
different dimensions of openness.
On a conference that focuses on an open web, it's natural to sit back
first and think about what we mean by "open". Pemberton gave some obvious
examples of technologies that are bad for openness on the web, such as
proprietary media formats, Flash, and so-called "Web 2.0" sites, which lock
your own data in silos. On the other side, there are technologies such as
XML, CSS, and RDFa that promote openness.
Device-independence
The discussion is not so much about technology as it is about how people are
(ab)using it. Pemberton showed an example of the web site of the Dutch
national airline KLM, which blocks browsers they don't "support". Other web
sites block users if their screen size is "too small", or they redirect the
user to a mobile version of the web site, even if the user wants to browse
the full site on his smartphone with a high-resolution screen. So these web
developers decide how, or if, a certain class of users sees the web site,
just because they are too lazy to implement their web site in a
device-independent way.
According to Pemberton, we have all the technology to design
device-independent web sites at our disposal. For example, with XForms the designer can describe
what a form control is meant to do instead of implementing it, e.g. as a
radio button. The form description can then be mapped to specific controls
dependent on the device, such as different controls for a desktop browser
or a cell phone, or even a voice menu on a phone call.
Web 2.0 walled gardens
Another challenge for the open web are the myriad of Web 2.0 sites that
have entered our lives during the last five years or so. Since the monetary
value of a Web 2.0 site comes from advertising sales targeting its
user-generated content, these web sites tend to lock-in their users. This
places an immediate burden on the user: does he choose LinkedIn, Xing, or
Plaxo for his professional social network? Or does he have to use them all
because some of his contact use LinkedIn and other ones Xing?
According to Metcalfe's law, the value (or utility) of a network is
proportional to the square of the number of nodes. This means that when you
split a network (social network, instant messaging network, e-mail
distribution system, etc.) in half, each part only has one quarter the
value of the combined network and the total value is
halved. Looking at the case of LinkedIn and Xing, this makes sense:
fragmentation is not good for the users.
Moreover, without standards for migrating data between services, users
that value their freedom of choice face a nightmare. What if the social
network goes out of business? What if the web site crashes and has no
backup? Without data portability, you lose your data in both
situations. The web site's owners can impose terms of use that cause other
significant problems for users: Pemberton told the story of someone's Facebook
account that was deleted because he used screen scraping to download all the
email addresses of his friends.
A web site for every home
The solution to these walled gardens sounds simple: "Publish your
data yourself and let others aggregate it." According to Pemberton,
we already have all the technology at our disposal to achieve data
portability. Mark your site up with RDFa, an extensible way
to embed rich metadata within web documents, and a W3C recommendation since
October 2008. "RDFa is CSS for meaning", Pemberton
summarized. "This is also why you should have your own web site. APIs
and XML feeds are just poor substitutes for having your data right on your
own web site." Drupal, a leading
open source content management system, already has RDFa support.
As an example of what is possible with RDFa, take Flickr. It hosts a lot
of photos for its users, and it is a convenient web site. If everyone starts
publishing their photos on their own web site, a lot of this convenience
gets lost. However, if these web sites use RDFa, someone can write
an aggregator that can be a "Flickr killer" yet remains open.
Pemberton concluded his talk by admitting that there is still a
lot to be done before the open web is user-friendly enough
that users can take control from locked-in social networks.
Creating your own web site is still
not an easy task for John Doe, let alone creating a Facebook-like web site
on your own server. Moreover, there are still some technical
challenges. For example, how do we control who can see which information
from our web site? A possible solution is a distributed social network
using OpenID for authentication, which is
a work in progress.
Another case of lock-in in social networks are the countless "social
applications", widgets on a social network that give the user some
information or are just for fun. A MySpace application will not work on
LinkedIn. However, Google is working on a solution. Chris Chabot, Developer
Advocate at the search giant, talked about OpenSocial, a set of open APIs to
create applications for social networks. Applications implementing the
OpenSocial APIs are interoperable with any social network that supports
them. Among the supported social networks are MySpace, Plaxo, and
LinkedIn.
Today's technology for the future open web
Apart from this "holistic" topic of openness, the conference also had a
fair number of strong technical talks. For example, Henri Bergius talked
about location-aware applications with GeoClue. Now
that computing is becoming more and more mobile, location is becoming an
important parameter for applications. The GeoClue project is a D-Bus
service that applications can use to become geo-aware. GeoClue supports a
lot of flavors of location: GPS, GSM, Wi-Fi, IP addresses, and so on.
On the KDE front, Sebastian Kügler talked about freeing the web from
the browser and gave a demo of Project Silk, while Frank
Karlitschek talked about the Social
Desktop integration of web communities into desktop applications. Both
KDE developers talked about their respective projects to LWN in mid-October.
A nice real world example of the advantages of open APIs came from Karl
Vollmer, the developer of Ampache, a
web-based audio and video streaming solution. In 2002, the previous
developer of the project added an XML-RPC API, but never documented
it. Moreover, it was an "ad hoc" format with custom date encoding. The
result: for over four years there were no other implementations of the
API.
Vollmer replaced the old XML-RPC API in November 2007 by a documented
and simple-to-use REST (representational state transfer) API. After two
years, nine successful implementations of the API have appeared: Amarok 2
has it, there is an Android implementation, a Python GTK interface
(Quickplay), a plug-in for SqueezeCenter, a Rhythmbox plug-in, a WebOS
plug-in, support in the UPnP media center Coherence, and even an iPhone
application (Amphone). The example of Ampache is a good reminder that we
don't get an open web by using undocumented and ad hoc formats.
From Flash to HTML 5
Gnash developer Bastiaan Jacques
talked about the role of Flash in the open web. But why do free software
proponents have to care about Flash? "Because it has nearly 100
percent market penetration," Jacques says. Indeed, over the last few
years, Adobe Flash has become so ubiquitous that it is difficult to imagine
the web without it.
However, with the proprietary Flash technology in its current state, the
web will never be a truly open web. The Gnash developers reverse engineered
parts of the Flash technology to create a free software Flash player, and
this works relatively well. Gnash has even some better security and privacy
features than Adobe Flash. For example, it blocks Flash cookies by
default.
In the meantime, the Gnash project is facing some challenges. The Open Media Now! foundation was
started in 2008 to fund Gnash development, but, because of the
economic crisis, the four full-time developers were cut back to
zero. Another challenge is that proprietary codecs cannot be distributed
with Gnash, which may affect the end-user's experience.
To conclude his talk, Jacques stressed that Flash is not a part of the
open web, but that we are stuck with it. Moreover, "Gnash is a
relevant project because existing content must remain accessible and people
are notoriously slow to transition to new (read: open)
technologies." For new content, Jacques recommends HTML 5.
This brings us neatly to the last speaker, Paul Rouget, who is
Technology Evangelist at Mozilla. He gave a bunch of demos of new
technologies in Firefox 3.5 and HTML 5. His take-home message:
Today the web is full of sexy and fun stuff. With
HTML (5), CSS, SVG and JavaScript we have a very powerful platform to
implement nearly everything you find in Adobe Flash and Microsoft
Silverlight. And contrary to the proprietary competitors, these are not
black boxes and they work on nearly all modern browsers.
Conclusion
What the NLUUG conference showed clearly is that we already have almost
all building blocks for the open web. XML, CSS, SVG, RDFa, XForms, OpenID,
OpenSocial, and HTML 5 are all existing or emerging standards in the open
web toolbox, although it still is a technical challenge to build a
user-friendly open web upon them. An equally interesting evolution can be
seen in KDE projects like Project Silk or the Social Desktop, that are
doing their best to bring the web to the desktop. However, ultimately the
openness of the web depends on the people that are creating the
content. Pemberton made it clear that this not only means the web masters,
but also the users: the ubiquity of user-generated content on the current
web brings power to the users, who can choose to remain locked in a
comfortable walled garden or to be free and boldly go where no one has gone
before.
(
Log in to post comments)