[
Lists Home |
Date Index |
Thread Index
]
1/24/2002 9:07:06 AM, Paul Prescod <paul@prescod.net> wrote:
>
>
> I have no idea what you are talking about. The Web was
> designed for the mainstream of its proposed user base.
> And I'm sure the same is true for
> AC power.
Gavin may be referring to the fact that early adopters of
electricity, driven by Thomas Edison, used DC power and literally
needed a generating plant for every large building or city block.
Thus AC power very much disrupted the "mainstream" electric users of
the day, albeit a very small number.
> What is the alternative? To micro-optimize in advance for
> every conceivable use case? To design for the hardest
> problems no matter what the cost in usability or popularity?
I agree, the AC/DC analogy is not very applicable to the web. HTTP
is more like AC power, easily scalable to a very large scale.
Arguing that HTTP should have been designed better up front seems
like arguing that Westinghouse and Tesla should have thought about
the environmental implications 100 years in the future of a
centralized power system that makes it difficult for individuals to
get off the grid and use renewable energy sources. The problem is
real today, but expecting up-front design to handle both current
technology and the long term implications as technology changes is
totally unrealistic.
The Web *is* a triumph of keep it simple, 80/20, evolutionary design
principles. Up-front design to eliminate the corner cases we have to
deal with today would not have led to a better Web, it would have led
to no Web; we'd be faced today with far worse problems of
interoperability between more highly designed but incompatible
systems. If HTTP and HTML hadn't been dirt simple in their first
generation, they wouldn't have spread like wildfire. Think HTML is
kludgy and under-designed? How would you like to be using Blackbird
on Windows, PDF on Macs, Frame on Unix, and trying to build anything
resembling what we have today out of all these highly-designed
pieces?
Of course, the flip side of "extreme" design is that you have to be
willing to refactor the system when it gets *too* kludgy. That's
the lesson I take from the history of HTTP, HTML, and XML ... it
wouldn't be here if the participants had taken the time to design the
Right Thing. The Web is a garden to be watered and weeded and
evolved, not a machine to be maintained in accordance with the
factory specs.
|