loge.hixie.ch

Hixie's Natural Log

2005-01-21 14:48 UTC <div style="font-weight: bold">Lost cause</div>

How do we teach people to use semantic markup?

Seriously. Several years ago, all the major sites were huge chunks of deeply nested <table> markup intermixed with <font> tags with no DOCTYPE (Example). Now, major sites are typically huge chunks of deeply nested <div> markup with liberal use of the style="" attribute, often with an XHTML DOCTYPE, despite the pages not being even remotely well-formed (Example).

So now what? "<div> considered harmful"? "style="" considered harmful"? People obviously think they want a page layout language. How do we make them realise they have a page layout language (CSS), but that for the Good of the People they should work with semantics at the lowest level instead of working with formatting?

2005-01-15 17:23 UTC January 2005 Travelog

Monday. My trip began with a flight to Düsseldorf, Germany. At Oslo airport I replied to some WHATWG feedback and then ran into Timo (from Opera's marketing arm), who was coincidentally was also going to Düsseldorf. Once there, we had dinner at an italian restaurant that apparently opened only a few weeks ago, called Vapiano (at Martin Luth Platz, 28). An unorthodox place: you get an RF-enabled card when you arrive, and you order food by visiting the pasta, pizza, and bar counters where they cook the food for you while you stand there watching them. Quite fun, very good food.

When I ordered my drink, I ordered in German (that is to say, I just said orangensaft!). When the bartender then tried to tell me he was temporarily out of orange, we had a to go back to the "negotiate a communication protocol" stage, because, unlike in Oslo, not everyone here speaks English. Thankfully, it turned out he was fluent in French, like me, so the problem was neatly solved. A nice guy.

It seems Germany is much like France and America: the assumption is that everyone speaks the native language, and if they don't, that's their problem. I much prefer the Norwegian attitude, which is that the default language is the native language, but if someone doesn't speak that, then a common alternative (typically English) is used instead. However, it does make learning the language a lot harder, since you don't use it nearly as much.

We didn't dine alone, Timo had arranged to meet Timur (from Vodaphone, who coincidentally is also hosting the CDFWG meeting I'm attending here) and one of his colleagues. Amongst other things, we talked about the industry, the Mobile Web, the Desktop Web, and whether and how they should or could merge.

One of the Web's biggest problems right now, insofar as the Mobile world goes, is that most of the content Out There has been designed with horrendously poor presentational markup which only fits on desktop screens. The CNN home page is often taken as an example. A megabyte of tables and font tags. This is the same problem faced by disabled users, of course; markup which doesn't handle small screens well handles speech and braille renderings even worse. How to fix this, I have no idea. What's clear to me is that switching to other markup languages — XHTML, SVG, XForms, whatever — won't help address this: people will write garbage whatever the format is. You just have to look at the typical quality of shareware on Windows for an example of that. (That's not to say that those languages might not be helpful to address other problems, just that it won't remove the fact that most content is garbage.)

After dinner we went our separate ways and I checked in to my hotel, the Courtyard Marriott. It seems fine. Sadly, the wireless Internet access is not free.

Tuesday. Today was the first day of the Compound Document Formats working group face-to-face meeting. We talked about stuff.

At lunchtime we took a trip through one of the older Vodafone buildings, where they hack a quite unusual lift. Instead of a shaft with a car suspended on a cable which stops at floors on request and then is raised or lowered to the destination floor, this building has cabins that are continuously driven around in a loop, without stopping on any floor. There is an "up" shaft and a "down" shaft, and the cabins arrive at the top of the building and move to the "down" shaft, get to the bottom and move to the "up" shaft, in a continuous cycle. To use the system, you just jump into one of these cabins as it approaches your floor, then jump off when it passes the floor on which you want to get off.

It's pretty funky and definitely less scary than I would have thought. One wonders what happens if you slip and get stuck, but I didn't see any blood marks so I presume that that doesn't happen much. (I would probably have the same thought if someone came up with the concept of manually-controlled high-speed motorised vehicles today: surely putting people in control of such contraptions would lead to horrible deaths and destruction.) (Then again, it does, and I do have that thought. Bad example.)

Near the Vodafone tower is the TV tower, which has a strip of blinking lights running all the way up. I had thought they were purely decorative until someone mentioned that it was a digital decimal clock — and indeed it is. The lights are separated into three groups, the seconds at the bottom, the minutes in the middle, and the hours at the top. Each section is further divided into two groups of lights representing the two digits, tens at the top of the section and units at the bottom of the section. Each group represents a decimal digit by illuminating as many lights as the value of the digit. So when the tower has (reading the groups of light from the bottom) five lights illuminated, no lights illuminated, four lights illuminated, one light illuminated, nine lights illuminated, and one final light illuminated, it means the time is 19:14:05.

It's surprising how quickly you learn to read that clock. It's also quite mesmerising; every minute when the seconds roll over to 00 the entire tower puts on a very short light show, which seems to range from simply blinking all the lights once, to lighting differently coloured lights in a sequence up the tower.

Wednesday. Today we discussed issues facing compound documents, and made some test cases for the same. On our way to lunch we passed by the funky lifts again, and this time some of us took the opportunity to go through the wrap-around: entering the "down" cabins on the bottom floor. I can now report that the cabins are quite safe to be in when they switch shaft, just as the little sign next to them claims.

Before dinner we watched part of Steve Jobs' MacWorld keynote. I was surprised as to how little new stuff Apple announced this time. Still, my next laptop will almost definitely be a Mac. Almost every technical problem I've seen at the last few face-to-face meetings I've been to have been resolved by Macs — from acting as a wireless router, to solving problems with cross-over cables, it always seems to be the Mac users who fix the problems fastest. Mac users also keep telling me how great their computer is; most recently, for example, Nadia. I rarely if ever hear Windows and GNU users proclaiming feelings of love for their computers.

In the evening Vodafone took us out to a fancy restaurant where we had very good food and drinks.

Thursday. Not much to report from the meeting today, the most interesting event being an impromptu break when a helicopter landed across the river from our conference room. Still, we addressed some major issues.

While watching CNN tonight (BBC World was available on Monday and Tuesday but for some reason the channel went dead here some time on Wednesday) I saw an advert which seemed quite insane. It was a spot for CNN.com, the Web site. The screenshots clearly used IE, though — despite the fact that CNN.com is part of a company that itself provides at least two browsers (AOL and Netscape), and has funded the development of at least four more (Firefox, Seamonkey, Camino, and the Netscape-branded Firefox). The funniest thing, though, is that you can see a Netscape link in the screenshot. If employees of the company itself can't take the time to download the browser to use it in its own advertising material, how can they expect anyone else to do so?

Friday. Dean and I met for an hour or two this morning to talk about my SVG last call comments. A very productive discussion at a Starbucks.

In the afternoon I walked around Düsseldorf looking for board games. I found plenty of shops selling them, but none of them had any of the games I wanted, sadly. I also found several shops selling Märklin stock, which is cool; Obviously Märklin is bigger in its home country than in the rest of the world.

I did make one purchase, though, SG-1 Season 7. I've been waiting for that to come out for months. It's a different box set format than my other seasons, and there is a chance the menus might be in German, but so long as the special features haven't been dubbed I don't think I really care. I'm assuming it isn't out in Oslo yet. It wasn't available when I left on Monday.

I was tempted to also buy a portable DVD player to watch the episodes on the flight. I saw several for under ~400, but unfortunately I didn't have enough cash left (and still lack a credit card). Probably a good thing.

Düsseldorf isn't that pretty, although its old town is ok. On par with Oslo. After walking around enough that my feet threatened to go on strike I took the subway and the train to the airport. It's boring with no particularly interesting shops, but on the plus side it has comfortable seating, is reasonably clean, and mostly quiet.

Sadly the signs depicting cigarettes with a red line diagonally bisecting them don't seem to mean the same thing in Germany as in Norway.

My reading material for the flight is a book I got for my birthday a few weeks ago, Café-crime à Champel. It's a crime novel based in Geneva, my home town. I like what I've read so far, but that's not much, as this week has been pretty busy.

A few hours later...

Unfortunately, I just finished the book and I'm still at Düsseldorf, so I don't know what I'll be doing on the flight. Good book. Quote:

— Ce n'est pas possible! dit-il. Ce n'est pas croyable! On ne trouve de telles coïncidences que dans les livres!

I know, it's not really funny, but it was so out of character for the book that I laughed out loud, much to the consternation of the people around me in the waiting lounge.

I'm starting to think I should spend less time in airports. I just got polled for a consumer survey for the second time in the last year. They didn't even really ask me any interesting questions, I don't know what information they were trying to obtain.

Pingbacks: 1

2005-01-12 16:25 UTC Having spent all day talking about MIME types...

application/xhtml+xml shall henceforth be referred to as just "a slash h". The full thing is just too much of a tongue twister.

2005-01-11 13:49 UTC Work plans for 2005

Work-wise my first priority this year will have to be completing the Web Forms 2 and Web Apps 1 proposals, as well as continuing my involvement with the CSS, XBL, CDF, and Linking working groups at the W3C, and continuing to send last call comments on drafts from other groups.

2004 was a year of conflict for the W3C. From my perspective it start back in 2003 with the publication of XForms despite several W3C members being quite vocally against it (this was the original catalyst for the Web Forms 2 work). Then in early 2004 Microsoft hyped Longhorn and Avalon, their bold attempt at replacing the Web with a pure-Microsoft infrastructure. In June, the W3C responded by holding a workshop. I attended that meeting, as did a bunch of other people from the Web browser side of things. We mostly agreed on what needed to be done, but unfortunately for us the majority of the people at that meeting weren't directly Web browser people, and we were outvoted.

That triggered the creation of the WHATWG, which when you peel away the fancy words is really just a public mailing list for discussing proposals that the W3C didn't want discussed in a W3C context. There obviously is a lot of interest in what the WHATWG is proposing, since the last time I checked we had over 400 subscribers (which is on par with some of the big W3C mailing lists, which vary from 200 to 600 subscribers) and discussion on the list is quite active.

Right from the start I set out to reply to every single e-mail sent to the WHATWG list, although recently I've had to ammend that to replying to all the e-mails sent to that list that aren't simply part of threads debating the pros and cons of competing proposals (with those, I just pick out the e-mails that introduce significant new points). Still, I have some 200 odd e-mails that are awaiting my reply, so this is going to be keeping me busy for a while.

The comments received for Web Forms 2 in the last month or so have all been pretty editorial, or pointing out loopholes that I forgot, or asking for new features. The first two types of comments I happily fix, the last type of comment I've been delaying until Web Forms 3 (assuming there is one) because at some point we have to have a feature freeze or we'll never publish this thing.

The important thing, though, is the lack of substantial "this will never work because..." comments that the first draft got. It seems the proposal has reached a stable stage where even if people don't agree that the ideas in it are particularly good, they do agree that they would at least work in theory.

I expect we'll publish another call for comments in a few weeks (there have been a lot of comments in the last few weeks, even if they were just editorial), and assuming that the response to that is even quieter than the last call for comments, we'll move on to the next stage: call for implementations and/or (ideally) submission to a standards organisation. Exactly what we do will depend on the politics.

This week I'm in Dusseldorf for a W3C meeting at the Vodafone offices, where we are to be discussing compound documents and arguing about (amongst other things) whether everyone should be using XHTML Mobile Profile or XHTML Basic, and whether everyone should be using CSS Mobile Profile or the WAP CSS Profile, and whether everyone should be using SVG 1.1 Tiny or SVG 1.2 Tiny.

Personally I doubt it'll matter much what we decide. XHTML and SVG don't work in any useful way with WinIE6 out of the box, so authors aren't going to be using them any time soon. Author: "How do I get this effect on my Web page?" Me: "You use this piece of CSS." Author: "Does it work in IE?" Me: "No." Author: "Nevermind, then." is a conversation I've had too many times. Given the membership of the CDF group (e.g. the meeting next week is being held at Vodafone) I'm guessing that what we're really discussing is the format that mobile phone network providers will be using to provide custom content to their handsets, and has little to do with the public Web.

Meanwhile, competition in the Web browser market is getting interesting. Microsoft are doing something, although what it is is anyone's guess. It could just be a PR exercise, or it could be a minor UI update for Longhorn, or it could be a UI overhaul which will be backported to their older operating systems when Longhorn comes out. Who knows. What is reasonably certain is that they won't be doing any significant work on their rendering engine.

Mozilla are moving on with their Mozilla 2.0 and Firefox projects: Brendan recently turned on E4X support (native XML in JavaScript); roc has added experimental multicolumn CSS support; Ben is off doing major rewrites of the prefs dialog which will probably put every other browser (except Safari, of course) to shame; not to mention all the other small fixes that continuously go in.

Safari is bound to have been getting major updates too, and the Tiger release date (which is probably also the release date of Safari-with-dashboard-etc) is bound to be announced at the big exposition this week. The question is whether they spent the last six months adding stunning new features, or if they spent the time fixing the bugs in the code they announced last time.

Opera meanwhile are working on Opera 8.0, with the new Voice features — finally a browser that supports Speech CSS. I won't say any more lest I accidentally say something we haven't announced yet.

2005-01-11 13:49 UTC Personal plans for 2005

The new year comes at a convenient time for me emotionally speaking, marking the conclusion of one chapter and the coming of several opportunities. Over the end of 2004 I learnt a lot about myself, and I now want to test this new knowledge and maturity "in the field".

One of the things I learnt was that I cared much too much about what people thought of me. This concern ended up so extreme that it mentally paralysed me on several occasions. I've also come to realise that my own happiness depends on more than just other people's happiness; that my happiness in and of itself matters. Henceforth I will be significantly less concerned with others' opinions of me, and will instead focus on what I want from life.

At least, that's my intention. Changing one's personality is not a trivial process. Faking it is hard enough; making a real change, one that makes a real difference to how you deal with people, requires a concerted effort. Otherwise all you need is some random small thing to trigger a memory and boom, you fall back to your old habits.

I also intend to continue a recent trend and get out more. I definitely will be doing more salsa (probably not only during the course I'm taking), and I also want to find some more groups of board game players. I'd also love to play in a big band, but I don't know of any bands that would accept a mediocre Clarinet player whose practices don't conflict with some of my other engagements.

As part of playing more games I have already organised two evenings of board- and card- games at my flat last week, and plan to do so again in future.

(It's very ironic that I have a much more active personal life now than I did.)

I also want to do something with my model trains. I set them up as an alarm clock last summer and never really had a chance to do anything more with them. I'm not sure exactly what to do, though. Last Sunday I laid out some straight track in our living area so that the trains are at least on display to some extent, and not just rusting under my bed. (As a sidenote: be careful when cleaning your bedroom if you have trains around. I was vacuuming earlier today and sucked up one of the little cars straight up into the vacuum cleaner. I had to go poke around in the dust bag to get it back out.)

I need to make something with the track. For that I'll need to just go and buy more track, of course. There's only so much you can do with two points, a circle, and a few straights.

Part of the problem is that I'm drowning in cable already. I could alleviate that a little by replacing the k83 decoders with one track-mounted digital decoder per point, although that isn't cheap. But the main source of cabling issues is the sensors. Each one requires two cables to an s88 decoder, and I already have eight. That's a lot of cable for one circle and two sidings on a pure-digital network. Since you can only chain up to four s88 decoders in a row to one Märklin digital interface unit I guess at least there's an upper limit of 64 pieces of cable... but that's still a lot of cable and makes redesigning the layout very awkward.

Sensors are great, though, so it is worth it. I love writing code that detects where the trains are on the layout and reacts accordingly. I've always found that getting computers to do things for me is more satisfying than doing them myself, and all the more so when the "thing" in question is physically moving stuff around. I've long dreamt of one day having a huge layout go all the way around my house at eye-level, all computer-controlled so it does appropriate things like switch on the train's lights when the room is dark and run around the bedroom when it's time to wake me up and run to the entrance hall when visitors ring the doorbell, etc. Maybe I'll even be lucky enough to find a girl who thinks that living with me and such a setup is a great idea!

Hey, a man can dream.

Other projects I have going on include playing Voidwars, writing a genetic-algorithm client-side NPC for Voidwars2, and occasionally working on Mozbot. So far, though, nothing to report on those.