Compatibility Woes Forever
January 10, 2000
If there's one thing that Web developers bitch about more
than any other, it's browser compatibility. As we all know
by now, a Web page can look totally different on two
different platforms, and can look totally screwed on
certain platforms even if the HTML is perfectly correct.
In fact, this unpredictability has scared some folks away
from the Web altogether. In the early days, some corporate
execs, used to dictating the layout of their pages to the
millimeter, declared that they wouldn't use the Web at all,
because they couldn't accept the loss of control over the
corporate image (they were all fired later, of course). And
every Web developer has a horror story or two about a client
who simply refused to believe that it wasn't possible to
design a page that looked the same on every computer, and
insisted on wasting huge chunks of time and money in futile
attempts to do so.
So, now that we've a new millennium, these compatibility
problems will disappear, right? Wrong! In fact, they're just
beginning. The two main browser makers remain a source of
confusion. With Netscape now open source, and Internet
Explorer being woven ever more tightly into the empire of
Microsoft products, you'd think we'd have the ultimate
browser by now. But neither of the major browser makers can
quite bring themselves to support all of HTML 4.0, much less
"esoteric" stuff like
JavaScript,
SGML and
XML. These
days, however, nobody seems to care much anymore, for a
couple of reasons.
Traditional browsers are no longer the only software being
used to access the Web. In the stock-quote application
discussed above, all the action takes place in a Java
applet window. The Web page is just used to log in and start
the applet. More and more content is being delivered by
streaming media viewers, Java apps, and from within desktop
applications - plain old browsers are becoming less important.
Also, thanks to open-source
Mozilla and the
Gecko Layout Engine, you can basically build your own
browser, or incorporate a way to browse Web content into a
desktop application. Of course, applications have included
links to the Web for some time, but now they're doing so in
much smoother ways, and transferring more of the overhead
to the network (Web-only Help files, for one mundane example).
Apps are becoming Web sites, and Web sites are becoming apps.
In spite of, or because of, all this convergence, proprietary
standards and compatibility nightmares are more common than
ever!
America Online (AOL), which Web developers love to scoff at,
isn't going away. On the contrary, they've become a bigger
player than ever, and a market that e-preneurs can't ignore.
Like everything else, AOL has improved greatly over the years,
but they still have their traditional "closed shop" mentality,
and there are some serious compatibility issues, even for
users that are using a Netscape browser with AOL. For the
quality-conscious Web developer, it's yet another platform
that needs to be supported.
But the real story is non-PC devices. The gadgeteers assure
us that we're in for a flood of gadgets that can access the
Web, from washing machines to watches to tie pins. Once you
get past some of the nuttier ideas, there are a lot of such
applications that will be quite useful and popular, from the
glamorous (checking stocks while skydiving) to the
mundane-but-profitable (monitoring utility meters). The
trend is clear, and Web developers who want to do commercial
work will need to know how to format content for a wide
variety of screen sizes and data formats. If you thought
designing for Netscape, Microsoft, Mac and AOL was bad, try
supporting the Palm Pilot, WebTV, WRAP (Web Ready
Appliances Protocol), and a dozen others.
The current way to handle this sort of thing is to have a
script that detects the user's platform, and either directs
them to a special page with appropriate formatting and
duplicate content, or (better) simply builds a page
dynamically using an appropriately-formatted template. A
recent WDVL article
explained how to do this for WebTV. But what is really needed
is a universal standard for defining content, so that any
and all devices can simply read the content and do the
necessary formatting on the client end. Instead of making
the poor Web developers keep track of an ever-changing
jungle of browser standards and non-standards, let the
client access the content of a site, together with as much
or as little of the formatting as the client can handle.
Interactivity is the name of the game
A Look at the Web Development World Ahead
XML to the Rescue
|