This is as days pass by, by Stuart Langridge

Launch launch launch

OK, the new Capital Radio website, built on Django and full of loveliness, is now out. There's six months of our lives that none of us are going to get back. Actually, I'm pretty proud of it. Nice one, team.

Facebook doesn't really support IE6

Blimey. I didn't realise that Facebook are trending down support for IE6. The "new look" is disabled, and if you use the old look you get a big message complaining about your browser choice: [caption id="attachment_1546" align="aligncenter" width="500" caption="'You may want to upgrade your browser (from IE6)', says Facebook"]\"You may want to upgrade your browser [from IE6]\", says Facebook[/caption] Two interesting things here: first, they recommend that you try another browser, and give a list of Firefox, Safari, and Flock as well as "upgrade to Internet Explorer 7". Flock? I bet the Opera people are a bit hacked off about that. Second: there have been a few cases so far of people dropping support for IE6 (MobileMe, not that that really counts because all its users are Mac people, and 37 Signals, ditto), but nothing remotely as high-profile as Facebook. This is the boot starting to descend, I think. IE6 is already the bugbear of the industry (and has been for some time: I said "Internet Explorer is the new Netscape 4" in 2005 and I was hardly the first!); how long before we see support for it drop to Netscape 4 levels of "you get the unenhanced non-JavaScript version"? I'd like to see more people publish browser stats for their websites. Yes, they're unreliable, yes people change their user agent, blah blah blah. They'll give us an indication, though; how many people out there are using IE6? Google Analytics tells me that 36% of my visitors are using IE, and 37% of those are using IE6, which means that IE6 visitors to my site are down to under 15%. (If you're not using Analytics, analog -G -A +a +B <apache logfile> will give you a browser list, as will many other things.) Other people will doubtless differ, and I'd be thoroughly interested in seeing more of these percentages from sites with a different user-base to mine. If you're a company, tell us what percentage of your users are using IE6! We're not going to get stats out of Google or Yahoo or the BBC, but non-behemoths will do fine here. Everyone else, start thinking: where's the cut-off point? How low does IE6's market share need to go before it's reasonable to not devote extra development time to it? "Extra" is the keyword there -- people thinking "hey, Opera/Safari/Firefox 3/IE8 has less than 15% market share in my statistics, let's cut them off, Mr. Microsoft Hater" need to consider that modern browsers don't (or at least shouldn't) take any extra development time to work around their idiosyncrasies. (In practice, Safari does require more extra development time than I'd like, I find, but its market share is high enough (or the idiosyncracies are infrequent enough) that supporting it is broadly worth the effort.) So: if you have IE6 stats, publish them. If you're a web hacker: when should we cut off the ailing IE6's life support? Speak now...

Readable non-harvestable email addresses with CSS

Stupid hack I've just thought of. My email address is:

@silogenixkry.org

Spam harvesters looking at that will see the following code:
<p style="padding-left: 5em"><span>@</span><span 
 style="margin-left: -2.5em">sil</span><span 
 style="margin-left: 3.5em">ogenix</span><span 
 style="margin-left: -5.3em">kry</span><span 
 style="margin-left: 4.1em">.org</span></p>
Or, with HTML stripped, @silogenixkry.org, which ain't an email address. It does it by breaking up the address into bits, putting the bits into HTML in the wrong order, and reassembling the bits into a readable order with judicious use of CSS.* It requires a certain amount of fiddling to get the margins right such that (a) the address shows up in the right order and (b) changes in font-size don't screw it up. I'd write a tiny web-service to do it to a supplied address if I could be bothered; lazyweb, go for it. Of course, if everyone uses this, harvesters will learn how to interpret CSS (and this is relatively trivial to do in this case). Might keep your name off the lists for a little while longer, though.

Certification

Lots of discussion on Planet Gnome about self-signed certificates and SSL and so on. I wonder if the Linux distros should get together and create a new CA, and then install that CA's root certificate in browsers? So that way, things like various project bugzillas will have a legit SSL certificate without having to pay if they don't want to. Of course, this new FreeSoftwareProjectCA would still have to go through the same verification processes to ensure that a given certificate is being asked for by the right people, etc, etc. Obviously, the root certificate would only be installed in your browsers if you get them from your distro (because the distros would add them to their browser packages) -- this means that people on Windows or who install their own copy of Firefox (or whatever) would still get the "this is a certificate I don't recognise" warning. However, that's no worse off than it is now, and I think it's reasonable to assume that people who use bug-tracking sites for free software projects running on a free software OS are disproportionately people using that OS who will therefore have the certificate. (Update: johnath says "StartSSL, in the Firefox 3 root store, offers [SSL certificates] for free", which might have the same effect; I don't know whether StartSSL's root certificate is in other browsers, but that's no worse than the idea that I propose above.)

Fronteers 2008

The site for Fronteers 2008 is now up -- Fronteers is a group of web hackers in the Netherlands who are putting on a web conference in September. Lots of cool speakers (Bert Bos, Dean Edwards*, Christian Heilmann*, Nate Koechley, Tom Occhino, and me, among others). It's good to see another addition to the conference calendar, especially one where they're looking for in-depth treatment of subjects. This is hardly surprising considering that it's being run by ppk, but they're explicitly going for an intermediate-or-better audience. There are lots of speaking slots at every conference devoted to introductions: our industry is starting to mature enough that it's reasonable to skip right over that. It was described to me by ppk as "a conference that treats a few important topics exhaustively instead of one that lightly touches on many subjects", which I think is a great idea. At the moment I'm trying to decide between talking about closures and talking about event delegation: anyone got a huge preference? See you in Amsterdam.

Setting an environment variable for all your apps

In the New World Order, Linux apps should all store their user-specific data according to the FreeDesktop Base Directory specification, which in practice means that config details for myapp end up in $HOME/.config/myapp. All well and good. However, I don't like having configuration stored in dotfiles; I like to be able to get at it more easily, so I want it in $HOME/Settings. The XDG spec provides for this: you set an environment variable XDG_CONFIG_HOME (which defaults to $HOME/.config) and then everything uses it. Great! But...where do I set this variable so that all the apps get it? Some suggestions:
  • $HOME/.bashrc, $HOME/.bash_profile, $HOME/.profile -- as far as I can tell, these aren't run as part of the login process, so they're no good. They get run when you start bash, which means when you first fire up a terminal.
  • $HOME/.gnomerc -- gets run by gdm. Might be a Debianism, and doesn't work if I change away from gdm a few months from now
  • $HOME/.xinitrc, $HOME/.xsession -- get run if you're in X but not if you're running over SSH, and .xsession is a Debianism
  • /etc/xdg/user-dirs.conf -- this will change it for all users on the machine, not just me
  • Something in PAM. Perhaps. It's not clear what, though.
  • A file of my choice, which I then source from all of the above places. This is doable but seems stupid to me, and I'm bound to miss something.
  • Something else. This is where you come in; where am I meant to set the environment so that everything gets access to it?
Answers on a postcard...

This website belongs to Stuart Langridge. Contact details are available. Don't eat yellow snow. Valid HTML5, at least in theory, except for the bits that aren't because I'm that futuristic that I'm ahead of the spec, oh yes. HTML5 help from Bruce Lawson, among others. Fonts from the superb FontSquirrel. End.