another great use of mod_rewrite

www-archive@w3.org from December 2002: Serving XHTML as applica

XHTML is a great way forward to avoid the infamous tag soup that many web sites have deployed over the time. But for this, and as described by http://www.w3.org/TR/xhtml-media-types/#application-xhtml-xml it ought to be served as application/xhtml xml. But some browsers do not recognize this mime-type, and for instance, IE proposes to download a page served with this mime-type instead of displaying it. Here is a solution to workaround this.

donkey votes are better than none

In 1922, voter turnout in Australia went down to fifty-eight percent. (Remember, our current rate is only sixty percent!) As a result, government officials became concerned. By 1924, they had made voting compulsory. Now Australia has regularly enjoys heavy voter turnout, even though the sanction for not voting is nominal. Australians make a habit of voting; Americans do not.

The only downside of the Australian system is the presence of what they call “donkey votes.” Some voters merely play pin-the-tail-on-the-donkey to decide their vote – apparently because they don’t like any of the candidates, or are simply flouting their citizenship obligations.

The problem of such random voting, however, is small (and in any case, if it is truly random, ought not to affect results). In addition, the problem could be easily solved by adding a space for the voter to register the sentiment “No Candidate Acceptable.” Then the NCA vote should be tabulated – and weighed. If NCA wins, then no one has been elected, and the election law should provide for another race to quickly follow.

This clinches it for me: Australia is the most civilized nation on the planet. Not only do they have this system — and the key for me will be the adoption of NCA as a choice — but they also have coin-operated gas grills along their scenic highways. Hungry? Buy some food and grill it right there at the scenic rest area. No muss, no fuss.

I wanted to emigrate there when I was 18 but was deterred by a communications snafu. It’s not too late, I suppose.

thoughts while waiting for the bus

I was waiting for the 372 this morning and the stop is right at the entrance to a child care center (Kinder Kampus: how kute). Lots of minivans and SUVs pulling in, with small female drivers and even smaller children.

Not to get into the the whole “SUVs are bad and the people who drive them are worse” thing, but it occured to me that the only objection I have to anything like that is the inherent waste of resources. Drivers pay more in gas taxes, since they use more gas, but you get used to that. They may pay a ‘gas guzzler’ tax based on the fuel economy rating, but that’s buried in the sticker price and financed as part of the deal. It’s not like the buyer has to write a 4 figure check at purchase time — that would be something.

How about if the gas tax at the pump were assessed on size of the vehicle at each fill-up? It could be done with a scale but the day I load my minivan with furniture and buy gas would convince me that’s a bad idea. More equitable to assign ratings to the curb weights of vehicles and assess the tax that way. 0-2000 lbs, pays one rate, 2000-3000 lbs another, 3000-4000 another and so on.

There would have to be some way of making an accurate determination, of course, some kind of sealed transponder that could tell the pump what vehicle was getting fueled.

This has the advantage of reminding the customer of the cost of their choice each time they fill up, instead of letting it become a distant memory. Maybe some people would regard it as a mark of status to pay more for their gas than the next guy, who knows?

I’d like a fair system that rewards good choices and reminds people of their bad ones.

trying to give back

Bug 195828 – mozilla fails to render pages with the stylesheet definition below
Bug 195827 – I don’t get visual notification of where I have new mail: filtered mail isn’t visible in the mailbox window.

I opened two bugs against Mozilla today, once of which is a duplicate of an almost 2 year old and as yet unresolved bug. It seems to be fixed or perhaps never showed up in Netscape 6 so I’m not sure what’s up. The thread shows quite a lengthy debate as to whether or not it’s even a bug.

<UPDATE> someone on the mozilla teams tells me Netscape shares this bug.

The other one, the email non-notifying one, I’m a bit more confident of.

And I donated $25 to MovableType.

more discussion of why traffic log reporting matters

Reading Reader Reaction – Terry Sullivan

Obtaining genuinely useful site feedback is a complex and difficult task for any Webmaster. This paper proposes a systematic, inferential approach to analyzing and improving a Web site based on reader behavior, as recorded by the Web server log files. Systematic analysis of site traffic based on log files can provide invaluable information for improving the navigability and usability of a Web site, optimizing its structure, and improving both visibility and accessibility of content.

why webdesigners should ignore browser stats

All Things Web: Debunking Browser Stats

Lurking behind the invalid, inflated stats that invariably accompany claims that “99.999% of users use Browser X or Browser Y” is almost always an implicit statement:

“I want a high-sounding excuse for exclusionary page design.”

But browser stats make a poor basis for Web design. Remembering that not all “Netscapes” are created equal, the most widely-used release of Netscape for Windows accounts for roughly 20%-30% of Websurfers. (Let’s split the difference and call it 25%.) Not 80% — but 25%. The world’s second most popular browser accounts for roughly 10-12% of your potential audience. Thus, a visually-driven design that looks great in both browsers covers about a third of your readership.

No matter how you slice it, there’s just no basis for using reports of browser popularity as an excuse for exclusionary design.

I am dealing with this daily right now as I work with page templates that look great in MSIE, or more correctly, Microsoft Visual Interdev, but flat out refuse to render in anything else. Sadly, they parse as valid HTML, so it looks like a bug in the Gecko renderer, but that doesn’t excuse not testing it.

the new religious war

Chad Dickerson

The key outcome, whether you call it scripting or programming, is functional, maintainable, and reasonably well-documented code. [ . . . . ] Good code is good code.

I’m with Chad on this one. And we’re not alone [1] [2]. And these are just the folks I have stumbled across without really looking.

The bottom line seems to be that it’s more important to understand the problem than the syntax of any given language.

another aspect of web design

Effort invested in the design of a URL namespace (Universal Republic of Love!) pays back many times over. Users get to bookmark, email, and otherwise make use of rich URLs. Developers can do the kind of lightweight integration I’ve been harping on for months. But there’s more: developers can also learn a lot about how users behave. “If more people spent an hour or two staring at apache access_log files in action,” Tim wrote to me, “more people would understand the Web a lot better.”

When you organize your URL namespaces for the convenience of users and developers, you are also instrumenting your software to be analyzed in action. Think about the kinds of stories you’d like your access log to be able to tell, and plan accordingly!

thanks to Jon Udell

This is a corollary of an idea I have expressed as “never put anything into a database until you understand how you plan to get it out.” or perhaps more plainly expressed as, let your reports drive your database structure and query design. Applied to a website, this makes a lot of sense as well, in terms of how you name and organize your content.