It seems that roughly half the forms out there on the web
don't accept a + sign in an email address.
This is a bug!

I am making this post partly so that I can point web site
designers at it when I complain.
When I sign up for example for, say, meetup.com, I use a custom
email address like, say, timbl+meetup@w3.org. This allows
their mail to get through my spam filters, and also allows
me to track any abuse of my email address.
The w3.org mail configuration strips out the tag after the +
for routing the mail. (This is fairly common practice but
not ubiquitous).

So if you are reading this and you have a guilty feeling
that you might have designed a form which doesn't allow the
+ sign, maybe it would be good to check and fix it.

...wanted to refer in a paper to a "level-breaker" ...
found my use of it was
the second Google hit, I'd probably just started using the
term without really defining it. So why not define it in a
blog on my new Advogato account?

The first hit
was
in the TV Tropes wiki defining it as An event in the
script or an uneven portrayal that wrecks the intended
emotional tenor of a scene or an entire piece..
In software architecture, though, it is a pattern in which a
well-defined clean layered architecture actually in practice
had to be disrupted for, sometimes, good reason.

The URI bar in a browser is level breaker. It shows you the
workings. The web architecture says you should be able to
just browse in the hypertext document space, following
links, but
never explicitly aware of the URIs themselves.
In fact, you need to be able to check on the URI.
To decide whether to trust it. When things go wrong, to see
who is to blame.

A TCP/IP socket API which allowed one to see details of the
TCP window, or detaiuls of the Ethernet back-off level,
would be a level-breaker.

Level breakers often mess things up in theory.
A level-breaker which allows a programming language to peek
at its own stack might suddenly make it theoretically a very
different language.
But it might be really useful at times. Especially when
things go wrong.

I'll probably think of a bunch of better examples of useful
level-breakers when I hit "Post". Slife.

Provenance is a useful level-breaker when a Semantic Web
data browser allows you to ask which document produced the
fact that you are just reading, and about to base an
important decision on.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser
code is live. It needs further work but already handles most
markup better than the original parser.