If you think HTML and XHTML are the future of the
internet, think again. Microsoft and Macromedia are working
independently on new technologies that they hope will go beyond
HTML and make websites user-friendly.
The trouble is that unlike HTML, the presentation protocols
underlying these new systems are not industry standards - a
situation that is making some industry watchers nervous.
Microsoft and Macromedia both unveiled strategies for
next-generation internet applications in October 2003. Macromedia
said it was developing Flex, a server-based system that delivers
Flash-based applications in the browser to front-end clients. The
software was finally delivered last month.
The difference between Flex-powered software and normal Flash
sites is that Flex uses an XML-based markup language called MXML,
which allows developers to create Flash applications without
getting involved in Flash design.
Microsoft's plans lie with Longhorn, its next-generation Windows
client. In current Windows applications the underlying program code
is mixed with the user interface in a single program, but Longhorn
will split them up.
The traditional Windows application will contain all the
underlying code, but like Flex it also uses a separate XML-based
file, written in a Microsoft-spawned language called XAML, to tell
it what the application looks like. Just as MXML manipulates
Flash-based user interface controls, XAML supports the future
multimedia controls that are built into Avalon, Longhorn's 3D
vector-based graphics engine.
Client- not browser-based
With these new developments users could build a form of
application, based on web services, that bridges the divide between
the limited user interface available from a browser and a
full-blown PC client. The suppliers are labelling such applications
rich internet applications (RIAs).
"RIAs boost end-user productivity by delivering a familiar and
more productive user experience, which has an immediate impact on a
business' bottom line," said Steven Webster, technical director of
RIA consultancy Iteration::two, which works with Macromedia
technology.
Jeff Whatcott, vice-president of product marketing at
Macromedia, said this is the natural evolution of HTML-based
browsing. "HTML was defined for browsing. It is inherently
stateless," he said.
Instead of relying on server-side persistence, these new
architectures will hold the application state on the client
platform, ridding users of the traditional asynchronous "click and
wait" model that accompanies stateless browser-based
applications.
For example, a user comparing digital cameras on an RIA-based
e-commerce site might have slider bars to alter criteria, show you
animated results in real time, and let you fill out purchase
information on the same page.
The move towards RIAs takes elements from both the traditional
client-server and internet models. It puts more application logic
back on the client, and it relies on what the suppliers hope will
be widely used protocols to control how applications look and
behave and how they interact with the server.
There are two possible areas where they will be used:
customer-facing applications and enterprise software.
Since the multimedia client controls do not depend on the
browser to operate, RIAs will run inside or outside of the browser.
For instance, XAML will enable browser-based or browserless
applications out of the box, and Macromedia's fledgling Central
project provides Flash-based applications that run outside of the
browser, sitting on the desktop and connecting to the internet
sporadically to update information that is held on the client.
Tom Ilube, chief information officer at online bank Egg, has
already demonstrated a prototype browserless XAML-based application
that includes account information and videoconferencing with
customer service staff in a single window.
One of the advantages of an RIA is that it is constantly
connected, he said, and notifications from the server can spark
useful desktop animations. "If the Egg banking system detects
something, it can let me know in real time what is happening," he
said.
Browser-based software does such real-time feedback badly.
Dynamic HTML can provide some animation, but browsers differ in
their implementations which leads to incompatibilities. Microsoft
provides a notification mechanism for enterprise applications, but
the possibility for integrating this with innovative user
interfaces is limited.
The dangers of rich internet
The promise of a better user experience with RIAs may be a
sweetener, but there are hidden dangers, said Ovum analyst Neil
Macehiter. XAML-based applications will only work with Avalon, the
next iteration of the Windows user interface, and therefore
requires the Longhorn operating system.
"This is about reasserting control. This is very much about
saying, 'Amazon if you want to make your shopping experience really
compelling, [RIA] is the way to do it'. But one of the penalties of
that is that you might be restricting yourself in terms of your
customer base."
Macromedia's Flash technology is cross-platform, so the Flex
applications will not be tied to Windows. It is a de facto
standard, but not an industry-owned one. Will Macromedia submit its
protocols to a standards body? "We would like to do that, but it is
too early now," said Whatcott.
No more designer eye candy
Macromedia stands a good chance of converting developers to
RIAs, shedding the image of Flash among the software development
community as designer eye-candy. This summer it will ship an
integrated development environment, codenamed Brady, designed for
coding Flex applications and moving developers even further away
from the original Flash authoring environment, which focused on
designers.
Microsoft will not ship Avalon until at least 2006 and even then
it will take a while for it to build support for the system.
So where might XAML-based RIAs be used? "Inside the company,
somewhere where you control the desktop," said David Jobling,
senior architect at Microsoft integrator Avanade.
Apart from the better visualisation, Webster said
internet-delivered RIAs will make portable application delivery
easier. Staff can access the same application across the web. This
can be done today with some browser-based applications such as
web-based Outlook via Microsoft Exchange, but such software is
custom-coded. MXML and XAML will enable developers to piece
together components and hook them into back-end data sources more
easily with web services.
The web services component could be the saving grace for
companies worried about supplier lock-in, said Jobling, who drew a
clear distinction between the presentation layers and the back-end
data sources. "Our approach to future-proofing is to ensure that
when you build these applications you separate those two layers and
communicate via web services, so that you just build the user
interface," he said.
However, this misses the point of RIAs. If the idea is to put
more application logic into the presentation layer, leading to
benefits such as increased data manipulation and visualisation,
then recoding the front-end application will be more complex,
regardless of whether web services are used to communicate with the
back-end. RIAs will offer many benefits, but supplier portability
is unlikely to be one of them.