[thelist] What is wrong with this site?

Jeff Howden jeff at jeffhowden.com
Mon Aug 18 17:55:06 CDT 2003


simon,

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> From: Simon Willison
>
> Jeff Howden wrote:
> > again, as evidenced by the original request, the
> > developer doesn't always intend for their work to
> > be sent as text/plain.  ie is doing its best to
> > protect the user from this mistake.
>
> "Be liberal in what you accept and conservative in what
> you produce" is fine for some purposes, but in web
> browsers it is a down right liability.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

you'd do well to reread my original reply.

from a developer's perspective, i agree.  however, it's an asset from your
average user's perspective.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> The reason, as I touched on before, is simple: a web
> browser is a development tool.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

wrong.  a web browser is a tool for navigating the web and viewing documents
available online, offline, etc.  it is not meant to be a
debugging/development tool.  the fact that so many users use it for that
doesn't make it so.  the fact that we have nothing better to use for
development/debugging doesn't make it so.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> Most people adding content to the web are only testing
> it in a single browser - if that browser is silently
> fixing their mistakes for them, they'll think that their
> page is correct and will consider it a job well done.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

that argument is flawed though.  first, i could say the same thing about the
myriad of proprietary mozilla extensions to css.  more importantly though,
developers only checking their work in one browser and assuming it'll work
for everyone is not the fault of the browser maker.  wherever and whenever
possible it behooves the browser manufacturer to try to make sure the page
will work, despite having things broken in it.  remember, browsers are for
navigating and viewing documents.  they are not built for developers to
debug/develop pages in.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> When a browser comes along that doesn't fix that
> particular mistake the site will be broken, but the
> original author will have no idea that there's a
> problem.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

that's pretty much a problem of the ages with regard to upgrading.  you're
bound to run into all sorts of things that were
forgotten/added/deprecated/obsoleted/etc. from one version to the next.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> XHTML was meant to save us from this by starting anew
> with strict rules and the all important requirement
> that invalid pages should refuse to render, [...]
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

whoa, stop right there.

refuses to render?

are you kidding?

it will only take that happening on 2 or 3 of joe consumers favorite sites
and he'll stop using that "broken" browser.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> [...] but unless the next version of IE (ha! there's a
> joke) does proper XML parsing on pages served with an
> XML doctype (as Mozilla does at the moment) even that
> will be lost.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

sorry, but i don't see the problem (from a non-developer's perspective).

if, as a developer, i make an innocent mistake, the user's shouldn't have to
suffer.  the browser should be smart enough to work around the mistake
(providing it's not too big).

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> Silently fixing mistakes is NOT an aid to developers.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

agreed.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> If you've left out a closing table tag and the page
> fails to render (or even better fails with a warning
> message telling you you forgot to close the tag) you fix
> it, save and reload.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

agreed, but remember, the browser is not a development/debugging
environment.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> If the browser silently fixes it for you you never even
> realise there's a problem.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

agreed.  the problem isn't the browser though.  the problem is the developer
not taking the time to make sure the page is valid html.  if that means
running it through an html validator - great.  if that means using an ide
that automatically closes tags that require end tags - great.  but, let's
not get into the business of alittle mistake like that ruining the
experience of the user.  the user should be shielded from our mistakes as
much as possible.

><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
> Can you imagine the state the world's software would be
> in if some C compilers "guessed" what you meant and
> re-added missing braces and semi-colons for you? Sure,
> they'd work - but no one who looked at the source code
> would know why! HTML should have been the same, but
> smart thinking by browser vendors doomed us to an
> endless cycle of undocumented "enhancements" and badly
> formed web pages.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

c is a compiled language with strictly defined rules and procedures that
compilers have followed from the beginning.

html is a markup language which had browsers using it before there was
really a standard or set of rules in place to enforce.  so, we're playing
catchup.  in the meantime, the tool users use to view all this broken html
should still display the document as best it can.

in summary, i agree that this behavior of "fixing" "broken" code is bad for
developers.  however, i'll disagree wholeheartedly that it's bad for users.

.jeff

------------------------------------------------------
Jeff Howden - Web Application Specialist
Resume - http://jeffhowden.com/about/resume/
Code Library - http://evolt.jeffhowden.com/jeff/code/




More information about the thelist mailing list