By Jeremy Allaire
Editor's Note: This is the first in a four-part article
series to be published weekly.
Distributed Web Applications
Paralleling the release of ColdFusion 4.0 is a sea change
in the overall adoption of the Web platform. Increasingly,
Web clients and Web application servers are central to the
information infrastructure running the Internet, and an
emerging wave of technology, driven by XML, is opening up
the computing landscape to a class of problems that were
never before easily solved by software.
In-line with this release, we are introducing a set of
technologies that enable and solve critical problems in
distributed Web applications using XML. In this series
of articles I will outline the vision behind this technology,
and then provide rich technical details on the solution
provided in ColdFusion 4.0. This first article in
the series outlines the emerging platform opportunity, and
challenges faced in getting there.
An emerging business platform opportunity
Explosive adoption of the Web as a business computing platform
continues at a furious pace. Every day, tens of thousands
of companies and organizations are deploying more and more
substantial portions of their core operations on the Web.
Internally, every organization has seen the mushrooming
growth of Web servers that act as content and publishing
vehicles for information exchange and collaboration. Over
a 100 million end-users, who average 14 hours of Web use
a week, are reshaping the very fabric of how companies engage
society and the economy.
The opportunity to recast society and the world-wide economy
sits before us, and in fact, is unfolding now through the
ongoing innovative adoption of the Web by cutting-edge companies
and consumers. No one doubts the economic revolution underway
on the Internet.
Fewer people, however, understand the implications of the
infrastructure and platforms that are unfolding at an equally
unparalleled pace. Organizations worldwide are rushing to
deploy content and services on the Web. These mostly one-off
applications are deployed on Intranets for worker collaboration,
or business system automation, on Extranets and the Internet
as frameworks to serve partners and customers. What companies
don't realize in their efforts is that for every Web server
they deploy, and every database or application connected
to this Web, they are increasing the overall value of the
global network.
Metcalf's Law and the New Internet Economy
Metcalf's law suggests that the value of a network is a
direct function of the number of nodes connected to that
network. An apt observation, though rarely considered in
Web deployment considerations, this is at the center of
the global opportunity created by the Web. For in every
Web server and application deployed, every other node on
the network now has the potential to interact with and leverage
that data and service.
The value of the Internet is a direct function of the actually
deployed data and applications on the network, and the leverage
of that data to serve the networks of relationships that
the Web enables. At a concrete level, this means that a
company's public web site is now a portal into their critical
customer service and inventory management systems; that
their suppliers and customers can now leverage that information
in a way that was never possible before global connectivity
and ubiquitous, open platforms such as the Web.
And this is at the crux of the problem in how organizations
are approaching the opportunity of the Web today. Most organizations
view the Web and the servers they deploy from as stand-alone
systems aimed at serving a fixed customer or employee base.
The data they deploy is for the use and consumption of end-users,
strictly. In this manner, they view their 'node' on the
network as having fixed value for a given user base, as
opposed to adding to the overall value of the network. Data
and content and services on the Web are structured to serve
fixed user-bases, not the rest of the network and other
applications.
A good example is the FedEx web site. This site has been
perceived and heralded as one of the first sites to embrace
the Web as a commerce medium. At first a very simple application,
the FedEx site showed that you could provide innovative
customer service by providing customers real-time access
to shipping information through a Web browser. No doubt,
a huge improvement over first-generation publishing oriented
sites, this approach still falls victim to the 'Web as a
single node' problem identified above where the function
of the Web site is to serve end-users alone, and in particular
through a fixed and static application built into the Web
site.
Embracing the Web suggested by Metcalf's law might have
led (and still might lead!) FedEx to approach the problem
in a different fashion. Let's take the example further to
illustrate.
While clearly the FedEx customers include consumers and
businesses receiving packages (and hence the need for a
web-based customer service application), their true customers
(i.e. those that are paying for FedEx service) are corporations
that are sending packages through FedEx. In fact, the vast
majority of their business is from corporations who pay
for FedEx to pick-up and deliver packages. These customers,
however, are not interested in an online service that allows
their customers to track packages. While that approach is
interesting and provides overall value, these companies
could more fully benefit if their own order processing and
fulfillment systems had a more direct way to interact with
the FedEx systems, automating package pricing, pick-up requests,
and billing.
This next-generation approach embraces Metcalf's law, and
moves a Web site from being a strictly end-user application
to being a back-end service that custom business applications
residing anywhere on the network can leverage. And this
clearly defines the increasing value of the network as nodes
are added. Now, an online retailer providing an e-commerce
service to customers can leverage the FedEx Web site as
a distributed service that compliments and expands the capability
of their own node on the network.
Cooperating nodes on the Web weave a fabric that expands
economic value exponentially. Once this is realized, it
becomes clear that the hundreds of thousands of web sites
(Intranet/Internet/Extranet) deployed by companies worldwide
are actually the fabric of a much broader new Internet economy,
where companies create rich, distributed applications built
on new value and service networks.
The Crisis of Web Applications
The Web infrastructure in place today was clearly not built
to support the new models of information and commercial
exchange that the new Internet economy requires. The vast
majority of Web sites today remain hard-coded, static content
sites, with no semblance of structured data or interfaces
that could enable other nodes on the network to leverage
that data's value.
Furthermore, this lack of structure in the data and applications
on the Web today results in increasing complexity in the
presentation of content in Web browsers. In some ways a
paradox, while the capabilities of Web browsers have grown
dramatically in the past two years, the approach taken to
managing and deploying web content has not kept up with
these capabilities. Updating site layout and interactive
behavior has become a mammoth task for installed Web systems,
as there is no logical separation of data or content from
the actual presentation of that content to end-users.
Browsers have become true, interactive platforms, mutating
into more of an operating system than a publishing medium.
As nodes on the network, their ability to work with structured
data continues to increase, much in the same way that Web
servers have mutated into Web application servers. Yet,
even as Web application servers emerge and play a stronger
role, their ability to provide data and services to increasingly
capable Web clients is hampered by the lack of a standard
way to exchange structured data between Web application
servers and Web clients.
While significant progress has been made by moving from
static sites, to dynamic pages that drive JavaScript-enabled
clients, this model still breaks down when corporations
want to begin to expose their data and services more generically
to other applications on the network. Browser applications
cannot easily interact with arbitrary server applications,
and server-based applications cannot easily leverage data
and services running on other Web-server based systems.
All of this shapes the crisis of web applications we are
facing today. Before us is a network of nodes with increasing
sophistication and capabilities, yet we are unable to leverage
that rich infrastructure because no framework exists to
easily share data between these systems.
With this backdrop, it is clear that both the emerging
opportunity and the emerging technology platforms are on
the verge of something significant. Whatever solution is
adopted, it must conform to the rich and heterogeneous nature
of the Web. In the next article I will outline a view of
the Web platform that can be applied to this emerging distributed
computing landscape.
Continue to Part
2 of 4: The Emerging Web Platform Landscape
-Jeremy
Jeremy Allaire is co-founder and Vice President of Technology
Strategy at Allaire Corp. Please direct comments on this
column to talkback@allaire.com.