[whatwg] Fakepath revisited

Aryeh Gregor Simetrical+w3c at gmail.com
Mon Sep 14 13:36:29 PDT 2009

On Mon, Sep 14, 2009 at 3:17 PM, Alex Henrie <alexhenrie24 at gmail.com> wrote:
> Then for however long we use HTML, we will always remember that we
> have to work around fakepath because someone decided that
> compatibility with a handful of badly designed pages in 2009 was more
> important than having good design in 2090.

Yes.  It's a pain, but that's life.  Bad design decisions by
implementors early in the web's life -- inventing new features without
adequate planning and care to get a quick leg up on the competition --
have condemned it to be a mess forever.

Unreasonable legacy baggage is hardly unique to the web, of course.
We're currently communicating in a format that only allows 7-bit
transmission over the wire and has no concept of authentication.  One
of the biggest contributing factors to the ubiquity of malware today
is arguably the fact that the desktop system that won out happened to
have been originally designed for use on non-networked single-user
machines instead of networked multi-user machines.  And so on.

In an ideal world, we'd throw out HTML and replace it with something
sane.  We'd also throw out e-mail and replace it with something sane,
and throw out all legacy Windows APIs and replace them with something
better suited to today's world.  And so on.  Unfortunately, we do not
live in an ideal world.  Anyone who tries throwing out those things
will just be ignored, because . . . their brilliant new product
doesn't work with everything that already exists.  Instead we have to
hack on ugly nonsense so that the existing stuff continues to work,
however stupid or wrong it may be in retrospect -- like Vista's
elaborate efforts to trick legacy programs into thinking they're
running as root and can write to C:\Program Files\.  Or like base64
and SPF in e-mail.  Or like C:\fakepath in HTML5.

It would be nice if we didn't have to do this kind of thing.  But we do.

More information about the whatwg mailing list