99.9% of web sites obsolete?

Paul Taylor ptaylor at tln.lib.mi.us
Wed Sep 11 19:14:07 EDT 2002


Dredged from Slashdot--an excerpt from "Forward Compatability: Designing and 
Building with Standards"

Here's the URL:
http://www.digital-web.com/features/feature_2002-09.shtml


And here's the text:

99.9% of Websites Are Obsolete

An excerpt from Forward Compatibility: Designing & Building With Standards
By Jeffrey Zeldman

An equal opportunity disease afflicts nearly every site now on the Web, from 
the humblest personal homepages to the multi-million-dollar sites of 
corporate giants. Cunning and insidious, the disease goes largely 
unrecognized because it is based on industry norms. Though their owners and 
managers may not know it yet, 99.9% of all websites are obsolete.

These sites may look and work all right in mainstream, desktop browsers whose 
names end in the numbers 4 or 5. But outside these fault-tolerant 
environments, the symptoms of disease and decay have already started to 
appear.

In the latest versions of Microsoft Internet Explorer, Netscape Navigator, and 
Mozilla (the Open Source, Gecko-based browser whose code drives Netscape 
Navigator, CompuServe, and other browsing environments), carefully 
constructed layouts have begun falling apart and expensively engineered 
behaviors have stopped working. As these leading browsers evolve, site 
performance continues to deteriorate.

In off-brand browsers, in screen readers used by people with disabilities, and 
in increasingly popular non-traditional devices from Palm Pilots(TM) to 
web-enabled cell phones, many of these sites have never worked and still 
don't, while others function marginally at best. Depending on needs and 
budget, site owners and developers have either ignored these off-brand 
browsers and devices or supported them by detecting their presence and 
feeding them customized markup and code--a practice the industry calls 
"versioning."

While off-brand versions typically treat users of sophisticated browsers like 
Opera to a diminished experience vis-à-vis their Explorer and Netscape-using 
counterparts, wireless versions fare still worse. Many rely on poorly 
supported wireless markup languages that are already obsolete.

These practices waste time and money. Neither commodity has ever been 
abundant; both have been in especially short supply since the Western Economy 
began its millennial downturn. Worse still, these costly practices fail to 
solve the problem. Sites are still broken. Users are still locked out.
Backward thinking

Peel the skin of any major site, from Amazon to Microsoft.com, from Sony to 
ZDNet. Examine their tortuous non-standard markup, their proprietary ActiveX 
and JavaScript (often including broken detection scripts), and ill-conceived 
use of Cascading Style Sheets--when they use CSS at all. It's a wonder such 
sites work in any browser.

They work in yesterday's mainstream browsers because the first four to five 
generations of Netscape Navigator and Microsoft Internet Explorer did not 
merely tolerate non-standard markup and browser-specific code; they actually 
encouraged sloppy authoring and proprietary scripting in an ill-conceived 
battle to own the browser space.

Often, non-standards-compliant sites work in yesterday's browsers because 
their owners have invested in costly publishing tools that accommodate 
browser differences by generating multiple, non-standard versions tuned to 
the biases of specific browsers and platforms. This practice taxes the 
dial-up user's patience by wasting bandwidth on code forking, deeply nested 
tables, spacer pixels and other image hacks, and outdated or invalid tags and 
attributes.

At the same time, these multiple versions squander the site owner's bandwidth 
at a cost even the bean counters may be at a loss to calculate. The bigger 
the site and the greater its traffic, the more money gets wasted on server 
calls, redundancies, image hacks, and unnecessarily complex code and markup.

Yahoo's front page is served millions of times per day. Each byte wasted on 
outdated HTML design hacks is multiplied by an astronomical number of page 
views, resulting in gigabytes of traffic that tax Yahoo's servers and add 
Pentagon-like costs to its overhead.

If Yahoo would simply replace its deprecated, bandwidth-gobbling <font> tags 
with bandwidth-friendly CSS, the cost of serving each page would greatly 
diminish, and the company's profits would consequently rise. So why hasn't 
Yahoo made the switch?

We can only conclude that the company wishes its site to look exactly the same 
in 1995-era browsers that don't support CSS as it does in modern browsers 
that do. The irony is that no one beside Yahoo's management cares what Yahoo 
looks like. The site's tremendous success is due to the service it provides, 
not to the beauty of its visual design (which is non-existent).

That this otherwise brilliant company wastes untold bandwidth to deliver a 
look and feel no one admires says everything you need to know about the 
entrenched mindset of developers who hold "backward compatibility" in higher 
esteem than reason, usability, or their own profits.

What do developers mean by "backward compatibility?" They mean using 
non-standard, proprietary (or deprecated) markup and code to ensure that 
every visitor has the same experience, whether they're sporting Netscape 
Navigator 1.0 or IE6. Held up as a Holy Grail of professional development 
practice, "backward compatibility" sounds good in theory. But the cost is too 
high and the practice has always been based on a lie.

There is no true backward compatibility. There is always a cut-off point. For 
instance, neither Mosaic (the first visual browser) nor Netscape 1.0 support 
HTML table-based layouts. By definition, then, those who use these ancient 
browsers cannot possibly have the same visual experience as folks who view 
the Web through later browsers like Netscape 1.1 or MSIE2.

Developers and clients who strive for backward compatibility inevitably choose 
a "baseline browser" (say, Netscape 3) beyond which they will make no effort. 
To support that baseline browser and those that succeeded it, developers 
layer their markup with a series of browser-specific, non-standard hacks and 
workarounds that add weight to every page. At the same time, they write 
multiple scripts to accommodate the browsers they've chosen to support, and 
use browser detection to feed each browser the code it likes best. In so 
doing, these developers further increase the girth of their pages, pump up 
the load on their servers, and ensure that the race against perpetual 
obsolescence will continue until they run out of money or go out of business.

While some companies undercut their own profitability trying to ensure that 
even the oldest browsers see their sites exactly as new browsers do, others 
have decided that only one browser matters. In a misguided effort to reduce 
expenses, an increasing number of sites are designed to work only in Internet 
Explorer, and sometimes only on the Windows platform, thus locking out 15% to 
25% of their potential visitors and customers.

We won't pretend to understand the business model of a company that would say 
no to up to a quarter of its potential customers. And the sheer number of 
customers lost by this myopic approach should boggle the mind of any rational 
business owner. According to statistics compiled by NUA Internet Surveys 
(www.nua.ie/surveys/), over 540 million people used the Web as of February 
2002. You do the math.

Say you don't mind losing up to 25% of the people who choose to visit your 
site. The "IE-only" approach still makes no sense, as there's no guarantee 
that IE (or even desktop browsers as a category) will continue to dominate 
web space.

Some years before this book was written, Netscape's Navigator browser enjoyed 
a market share greater than Microsoft's Internet Explorer does today. At the 
time, conventional wisdom held that Netscape's was the only browser that 
mattered, and developers coded accordingly. Untold millions of dollars later, 
the market changed. Netscape-only sites were dumped in the landfill beside 
the Information Superhighway.

Could the same fate lie in store for IE-only sites? Inconceivable as it seems, 
there's simply no telling. On the Web, the only constant is change. Factor in 
the increasingly widespread use of non-traditional Internet devices, and the 
notion of designing to the quirks of any individual desktop browser at the 
expense of all other browsers and devices starts looking like the brain-dead 
business decision it is.

Besides, as this book will show, standards make it possible to design for all 
browsers and devices as easily and quickly as for just one. Between the 
spiraling cost of backward compatible versioning and the futile 
short-sightedness of building for a single browser, web standards provide the 
only approach to development that makes a lick of sense.

Neither money-wasting versioning techniques nor the deliberate decision to 
support only one browser or platform will help today's sites work in 
tomorrow's browsers or thrive in the ever-changing world beyond the desktop. 
If these practices continue, costs and complexities will only escalate until 
none but the largest companies can afford to build websites.

Microsoft won the Browser Wars but all of us temporarily lost something more 
important: the chance to create a usable, accessible Web built on common 
industry standards. We lost it when designers and developers, scrambling to 
keep up with production demands during the short-lived Internet boom, learned 
non-standard, browser-specific ways of creating sites, thus bringing us to 
our current pass whose name is obsolescence.

But the obsolescent period of web development is dying as you read these 
words, taking countless sites down with it. If you own, manage, design or 
build websites, the bell tolls for you.
The disease

Early in a computer programmer's education, he or she learns the phrase: 
"Garbage In, Garbage Out." Put simply, in the world of programming, if you 
write your code correctly, it works. If you write it incorrectly, it fails. 
Languages like C++ and Java don't merely encourage proper coding practices, 
they demand them.

Likewise, among the first things a graphic designer learns is that the quality 
of source materials determines the effectiveness of the end product. Start 
with a high resolution, high quality photograph, and the printed piece or web 
graphic will look good. Try to design with a low quality snapshot or 
low-resolution web image, and the end result won't be worth viewing. You can 
turn a high quality EPS into a suitably optimized web page logo, but you 
can't convert a low-resolution GIF into a high quality web, print, or TV 
logo. "Garbage in, garbage out."

But traditional mainstream browsers don't work the same way. Lax to the point 
of absurdity, they gobble up broken markup and bad JavaScript file links 
without a hiccup, in most cases displaying the site as if it were authored 
correctly. This laxity has encouraged front-end designers and developers to 
develop bad habits of which they are largely unaware. At the same time, it 
has persuaded middleware and backend developers to view technologies like 
XHTML, CSS, and JavaScript as contemptibly primitive.

Those who do not respect a tool are unlikely to use it correctly. Consider the 
following snippet, lifted from the costly e-commerce site of a company 
competing in a tough market, and reprinted here in all its warty glory:
<td width="100%"><ont face="verdana,helvetica,arial"
size="+1" color="#CCCC66"><span class="header"><b>Join now!
</b></span></ont></td>

The nonsensical "ont" tag is a typo for the deprecated font tag--a typo that 
gets repeated thousands of times throughout the site, thanks to a highly 
efficient publishing tool. That error aside, this markup may look familiar to 
you. It may even resemble the markup on your own site. In the context of this 
web page, all that's actually necessary is the following:
<h2>Join now!</h2>

Combined with an appropriate rule on a linked style sheet, the simpler, more 
structural markup above will do exactly what the cumbersome, non-standard, 
invalid markup did, while saving server and visitor bandwidth and easing the 
transition to a more flexible site based on XML. The same e-commerce site 
includes the following broken JavaScript link:
<script language=JavaScript1.1src="http://foo.com/Params.
richmedia=yes&etc"></script>

Among other problems, the unquoted language attribute erroneously merges with 
the source tag. In other words, the browser is being told to use a 
non-existent scripting language ("JavaScript1.1src"). By any rational 
measure, the site should fail, alerting the developers to their error and 
prompting them to fix it pronto. Yet until recently, the JavaScript on this 
site worked in mainstream browsers, thus perpetuating the cycle of badly 
authored sites and the browsers that love them. Little wonder that skilled 
coders often view front-end development as brain-dead voodoo unworthy of 
respect or care.

But as newer browsers comply with web standards, they are becoming 
increasingly rigorous in what they expect from designers and developers, and 
thus increasingly intolerant of broken code and markup. "Garbage in, garbage 
out" is beginning to take hold in the world of browsers, making knowledge of 
web standards a necessity for anyone who designs or produces websites.

The damage is not irreparable. We can design and build websites a better way 
that works across numerous browsers, platforms, and devices, solving the 
problems of built-in obsolescence and user lockout while paving the way 
toward a far more powerful, more accessible, and more rationally developed 
Web.

The cure to the disease of built-in obsolescence may be found in a core set of 
commonly supported technologies collectively referred to as "web standards." 
By learning to design and build with web standards, we can guarantee the 
forward compatibility of every site we produce.

"Write once, publish everywhere," the promise of web standards, is more than 
wishful thinking: it is being achieved today, using methods we'll explore in 
this book. But while today's leading browsers finally support these standards 
and methods, the message has not yet reached many working designers and 
developers, and new sites are still being built on the quicksand of 
non-standard markup and code. This book hopes to change that.
The cure

After a long struggle pitting designers and developers against the makers of 
leading browsers, we can finally employ techniques that guarantee the 
appearance and behavior of our sites, not simply in one manufacturer's 
browser, but in all of them.

Hammered out by the members of the World Wide Web Consortium (W3C) and other 
standards bodies, and supported in current browsers developed by Netscape, 
Microsoft, and other companies, technologies like Cascading Style Sheets 
(CSS), XHTML, ECMAScript (the standard version of JavaScript) and the W3C DOM 
enable designers to:

    * At last attain precise control over layout, placement, and typography in 
graphical desktop browsers.
    * Develop sophisticated behaviors that work across multiple browsers and 
platforms.
    * Comply with accessibility laws and guidelines without sacrificing 
beauty, performance, or sophistication.
    * Redesign in hours instead of days or weeks, reducing costs and 
eliminating grunt work.
    * Support multiple browsers without the hassle and expense of creating 
separate versions, and often with little or no code forking.
    * Support non-traditional devices, from wireless gadgets and web-enabled 
cell phones fancied by teens and executives to Braille readers and screen 
readers used by those with disabilities--again without the hassle and expense 
of creating separate versions.
    * Deliver sophisticated printed versions of any web page without creating 
separate "printer-friendly" page versions or relying on expensive proprietary 
publishing systems to create such versions.
    * Separate style from structure and behavior, delivering creative layouts 
backed by rigorous document structure and facilitating the re-purposing of 
web documents in advanced publishing workflows.
    * Transition from HTML, the language of the Web's past, to XML, the 
language of its future.
    * Ensure that sites so designed and built will work correctly in today's 
standards-compliant browsers and perform acceptably in old browsers (even if 
they don't render pixel-for-pixel exactly the same way in old browsers as 
they do in newer ones).
    * Ensure that sites so designed will continue to work in tomorrow's 
browsers and devices, including devices not yet built or even imagined. This 
is the promise of forward compatibility.
    * ...And more, as this book will show.

Before we can learn how standards achieve these goals, we must examine the 
old-school methods they're intended to replace, and find out exactly how the 
old techniques perpetuate the cycle of obsolescence. Chapter 2 reveals all.

Excerpted from Forward Compatibility: Designing & Building With Standards by 
Jeffrey Zeldman, to be published by New Riders in early 2003. Copyright © 
2002-2003 by New Riders and Jeffrey Zeldman. Used by permission of New 
Riders.

-- 
Paul Taylor
Computer Coordinator
Salem-South Lyon District Library
9800 Pontiac Trail
South Lyon, MI 48178

248-437-6431 phone
248-437-6593 fax
http://south-lyon.lib.mi.us



More information about the Web4lib mailing list