Hey, Cool

Laura and I were about to pay $28 to buy tickets for next weekend’s Stanford Football game against San Jose State when I decided to try clicking on the Alumni link on the Stanford Athletics site. I’m glad I did; it turns out that alumni can print out a voucher to attend the San Jose game for free! Cool.

Incidentally, this will be the first official Stanford athletic event I’ll have ever attended. I’m not quite sure what I spent five years there doing, but obviously it wasn’t going to games.

It’s short for Jonathan

I originally wrote this as a comment to a recent entry of Eric’s, but I decided to post it here instead:

First off, it’s Jon Postel, not John.

That said, I agree with Eric (and, surprisingly, Dave Winer). I think Postel’s idea was that you shouldn’t capriciously reject data that you knew perfectly well how to parse, not that you should bend over backwards to be bug-for-bug compatible with Internet Explorer.

For one thing, implementations that are too tightly restrictive in their input tend not to be very forwards-compatible: When we first implemented HTTP/1.1, there were problems with servers that expected every request to start with “HTTP/1.0”, and got upset with the newer version number. Likewise, some early Web browsers gave an error when they encountered a tag that they didn’t understand. <BLINK> obviously put an end to that…

That said, XML has very well defined extension and forward compatibility standards, and I support the idea of just not accepting invalid XML. It makes the job of both the client and the producer that much easier, assuming the producer is not human. And there lies the rub: XML was never designed to be written by humans, regardless of how much it looks like text. Unfortunately, humans seem to insist on writing it anyway, especially the XHTML and RSS variants.

I wonder if it wouldn’t be a good idea to have an Apache module that would filter the XML types through some sort of “strictifier” that made sure that everything that came out of the server was completely valid XML. It could come enabled by default… Maybe when I get a few extra round tuits.

Somewhere, the Universe is laughing at me

A year ago, when we were moving to St. Louis, I went outside to show the movers which bicycles to take, and discovered that my bike’s seat had been stolen. One day before we moved. In St. Louis, we eventually got a new seat (including a saddle I really rather liked), and since we moved back to the Bay Area, I’ve been biking to the CalTrain station to get to work each morning.

On Monday, my bike seat was stolen again. Today, of course, I finally received in the mail the key to a bicycle locker at the train station.

Human interface design (or lack thereof)

Ken Thompson has an automobile which he helped design. Unlike most automobiles, it has neither speedometer, nor gas gauge, nor any of the other numerous idiot lights which plague the modern driver. Rather, if the driver makes a mistake, a giant “?” lights up in the center of the dashboard. “The experienced driver,” says Thompson, “will usually know what’s wrong.”

—Anonymous (from The Unix-Haters Handbook)

I think Thompson must have been involved in the design of the Segway. I had occasion to try one out last week; according to their Web site, the Segway’s display “tells you only what you need to know, preserving Segway HT’s intuitive nature….The display transmits information by way of a face, the most basic and universal means of human communication.” When I first stepped onto the Segway, the face turned to a frown, the display flashed red, and the motor made a growling noise. It was very clear that the Segway was mad at me. However, I had no idea why, and it gave me no clue as to what I could do to make it happy.

Was it low on battery? Maybe. Did I have it in the wrong mode? Perhaps. Was it off-balance? Could be. I knew I was doing something wrong, but I had no idea what. So I turned it off and went back inside (I did try again later, and it worked okay; it’s a fun toy. Not worth $5,000, though.) In their quest to make the display “intuitive,” the Segway designers appear only to have succeeded in making the display useless.