Its MY Computer
© Robert J. Bradbury
November 2001, All Rights Reserved
Abstract
The problem of the hijacking of computers on the WWW by poor
web site design is explored and solutions to the problem are proposed.
Introduction
I've been writing software for ~26 years. That puts me in the over-the-hill
category I guess. I probably can't keep up with these youngsters
who code Java and Perl and Python in their dreams. But much of the
first decade of my programming experience was spent in compiler development
and in particular code optimization -- so I am perhaps well qualified to
comment on issues of efficiency and elegance. From where I sit, it
would be interesting to place into competition programmers of the current
generation who have to wrestle with the limitations in PDAs with those
whose bread and butter is web site development (who seem to generally disregard
the fact that limitations may exist). The PDA programmers would win
hands down over the web site developers. Lets look at why.
Discussion
The fundamental problem appears to me to be the "tragedy
of the commons". Web site developers are selling their sites
based on how fancy or sophisticated the web sites they produce can be,
i.e. how much "eye candy" is present. More sophisticated, more bells-and-whistles,
more interactive, etc. translates into more money for the developers.
Individuals at the big corporations purchasing these services (who don't
know HTML from peer-to-peer), at least to date, have little awareness as
to how to judge the "delivery" of the product developed by outside "web"
shops. If it looks good they tend to buy it. They do not evaluate
the experience of the "common" user -- and thus they impose upon the user
(and the ISPs and the entire Internet community) the poor implementation
strategies chosen by their self-proclaimed "experts".
Because the experts presumably get paid based "complexity" (how much
time they have spent designing and building a web site) there is an incentive
to overengineer them. This leads to sites that "steal" the time,
bandwidth and computing resources from individuals who visit such overengineered
sites.
The system which I typically use to browse the web is dictated by my
experience in the computer industry. For CPU horsepower it has dual
200 MHz Pentium Pros with 256 MB of memory. Behind that is 6 GB of
SCSI drives and 28 GB of IDE drives. The connection to the net is
a Qwest DSL line. This is presumably an above upper middle-class
connection to the net. With "upper-class" being Universities or Corporations
with T1 or T3 connections and "lower-middle-class" or "lower-class" being
the "average" user with dialup connections at 56Kb or less. It is
worth noting that in Moscow Russia, the "typical" dial-up access speeds
are in the range of 14.4-16.8 Kbps (2-4x lower than typical access speeds
in the United States). So a page that loads in a minute to download
over a dialup connection in the U.S. will require 3-4 minutes in Moscow.
I can walk into the kitchen of my apartment and prepare a cup of chai in
that time. It seems unlikely that these speeds will improve significantly
over the next 3-5 years (Moscow has a very old and dated telephone infrastructure
and minimal resources available to upgrade it significantly).
The problem I am complaining about occurs with many sites on the Net.
Its a feature at CNN.com, which I have
to browse with Javascript and Java completely disabled for the pages to
load in under 30 seconds. Its a feature at KurzweilAI,
a site designed by Tractor
Studios whose Javascript "advertisement" fully occupies one of the
CPUs in my system (whether or not the window is displayed or minimized)1.
The KurzweilAI site is particularly aggravating, downloading 328K of shockwave
files even if Javascript is disabled. The Tractor site itself isn't
much better as it downloads and compiles a 589 line Javascript file from
Macromedia to detect whether or not you have Shockwave installed and what
version it is.
In addition to the size and efficiency problems involving excessive
use of HTML "improvements" -- there is the problem that various uses of
these "improvements" will routinely crash versions of Netscape (my preferred
browser) up through Netscape 4.79. This is highly annoying
if one has open several files one is editing in Netscape composer and dozens
of open browser windows to various research sources, as I often do.
The solution I typically use is to browse the web with either a filter
that removes the Javascript before it can reach the Netscape or to disable
Javascript (and Java) in Netscape itself. However this may cause
problems displaying certain "enhanced" web pages.
The solution to these problems is simple -- its the old KISS principle
-- Keep it Simple Stupid. The question is how do you enforce this
discipline on the people designing web sites?
Solution Verification
There are ways to verify that designers have been following the KISS principle.
Web site designers and corporations purchasing their services should be
held to "usability" standards. For example as Michael Ransburg points
out "Download speeds are the single-most important design criteria on the
Web" [Ran00]. Right after that be "not
stealing the attention of the user" (pop-up windows, blinking icons, etc.)
and "not stealing the computer resources of the user" (large images in
caches, javascript, java, etc.) unless the user has granted explicit
permission for the "content provider" to do so. If I request having
"The Full Monty" inflicted on
myself, then I probably get what I deserve (at 151KB its a slow torture
-- perhaps excusable in an "arts" setting)2.
There is an easy way have web site designers follow these principles.
Buy a used PC, perhaps a 100 MHz Pentium machine with 32 MB of memory on
it with a Windows 95 operating system (if you don't own Windows 95, Linux
will probably suffice). Then set it up with a dial-up connection
to the net that goes no faster than 24K. This seems a reasonable
compromise perhaps between the 56K connections some U.S. users may have
and the 14.4 K connections that many of the over 8 million Moscovites have.
(Obviously there are several billion people in China, India, Indonesia
and Africa that for many years can be expected to have connection speeds
that are unlikely to be much better than those in Moscow -- their connections
will be over old copper wire, old switches, etc. and until 3G cell phone
or fiber are installed ubiquitously -- a situation that isn't likely to
happen anytime in the near future). Once this PC is installed and
connected to the net, web site designers are required to verify their pages
in multiple browsers using said system. They are not allowed to bill
the corporation purchasing their designs for the time spent on verifying
these pages. That should instill in the minds of the designers (or
their mangers) the essential requirement for pages that are simple
and efficient.
Conclusion
There are many distributed computing projects currently
on the net. Users should be able to allocate their computer time
and the electricity that they are paying for according to their
wishes -- not the wishes of advertisers and corporate web site designers
and software vendors who view their clients as "prisoners" from whom more
money should be extracted. They should not steal my communications
bandwidth or my CPU cycles without first saying "may I". I've had
to invest
my time and money in attempting to ensure that
my
resources are not stolen (I browse behind both an AdSubtract
filter and a Squid based firewall
enhanced with wrapzap (now adzapper)).
It is unfortunate that I have to do so. But people will probably
have to resort increasingly to measures like this. It seems unlikely that
most people will continue to go into the Blood Bank saying "take as much
as you need" as "Nurse Vampire" bares her fangs.
Footnotes
-
It should be noted that Netscape's JavaScript
and Microsoft's JScript
are not standardized languages! Therefore much of the code written
in them will not perform reliably if the browser the user prefers happens
to be different from that that the web site designer prefers. The
solution to this is using ECMAScript
(standardized JavaScript) and that is not supported by any but the most
up-to-date
browsers on the web circa mid-2002. The author does not know
whether ECMAScript entails the burdensome compile times that Javascript/Jscript
require or allows the wasteful client CPU cycle-stealing that the earlier
language versions seem to allow. However, given the burdensome download
times that such scripts themselves require, it is clear that they should
be used only when absolutely necessary -- not on a web site designer's
whim to make their pages prettier.
-
It is worth noting that as of the time
this document was written, the text "images" on the site, "Tickets", "Full
Bids", "The Press", etc. do not have 'ALT="tickets"' descriptors in the
HTML links to the images thus making the site extremely inaccessible [See
W3C00].
Browsers for blind individuals require such tags for navigation.
Designers need to WAKE-UP and realize that much of their
audience would be happier with fast downloads (no images, just text, thank
you very much) and they do recognize sites that fail to conform to accessibility
standards (and therefore appear to be designed by people who are either
discriminatory or simply have no real knowledge regarding the craft they
"claim" to be practicing).
References
-
Distributed Computing Projects:
-
As of November 20, 2001, this URL: http://free.aol.com/tryaolfree/wr31_cntrl/nq_sell.adp&db_status=true&session_id=99160904&wr_promo=200763&error=-2
accessed from Netscape 4.77 under Windows 2000 re-programmed the browser
Back> function.
-
Valerie Casey, "Interview"
Adobe (2002).
-
Ransburg, M., "Web
Usability - User Interfaces for the World Wide Web" (Nov 2000).
-
Delta College, "Is
your web site useful and usable?" (2001).
-
Flanders, V., Fixing
Your® Web Site (Recommended
books) & "The
Top 10 Intranet Design Mistakes" (2001).
-
Flanders, V. & Willis, M., "Web
Pages That Suck: Learn Good Design by Looking at Bad Design",
Sybex (1998); ISBN: 078212187X.
-
Gibbard, J. M., "Does
User-Centred Design Create Usable Websites? A Comparison of Design Methodologies"
(Sep 2001).
-
IBM: "User-Centered
Design" and "Web
Design Guidelines"
-
Instone, K., Usable
Web (14 Dec 2001); especially <Speed
Discussion>.
NCI: "Research-Based
Web Design ? Usability Guidelines", National Cancer Institute (2000);
See especially "Reduce download time" and refs therein. HTML variant:
"Web Site Design and
Usability Guidelines" (Nov 1999).
-
Nielsen, J., Useit.com: Recommended
books on web design.
-
Nielsen, J., "Designing
Web Usability: The Practice of Simplicity", New Riders Publishing,
Indianapolis (2000); ISBN 1-56205-810-X.
-
Nielsen, J. & Tahir, M., "Homepage
Usability: 50 Websites Deconstructed", New Riders Publishing, Indianapolis,
(Nov 2001); ISBN 0-73571-102-X.
-
Nielsen Norman Group (usability design
experts & consultants).
-
Olsen, S., "Web surfers
brase for pop-up downloads", CNET (8 Apr 2002); downloads and mousetrapping.
-
Seo, J. J., "Reading
the Look and Feel: Interface Design and Critical Theories" MIT
-
W3C Web Accessibility
Initiative (WAI) guidelines (2000).
-
Ullman, E., "The
dumbin-down of programming: Part1"; "Part
2", Salon (May 1998).
Created: November 2001
Last Modified: May 30, 2003