Apologies for the break in transmission. This week I moved into a flat on Customs Street East. It's great so far, but it's taking a while to settle in. More, including pictures hopefully, later.
I find that on Debian and Ubuntu machines, I spend quite a bit of time playing around with my apt sources.list file. When you want to enable multiverse/universe, that's a change. When you install non-standard software from a third-party repository, that's a change. When a repository dies, or gets out of date, and you no longer want to use it, that's a change. And when you want to change which mirror you're using, that's a change.
It's that last one that really irks me. I have a few Ubuntu machines, so I run their apt upgrades through a proxy. Which means I need to keep their respective mirrors synchronised (or the proxy won't do its job; yes, I've tried apt-proxy, that's a story for another time). So, I have my machines set up to use the bog-standard New Zealand mirror. Unfortunately, the New Zealand mirror is often out of date, and quite often completely down. I then need to temporarily change the mirror I'm using, which means breaking out the text editor.
Also, I've found myself needing to apt-get things on campus. And that means a download speed of 7kBps, unless you use the internal university mirror. But the university mirror isn't available off campus, so it's not a long-term option. And 'just' putting the university mirror in sources.list.d/ (which is great, by the way) doesn't work, because the regular entries in sources.list take precedence.
The solution I've found is to split absolutely everything in sources.list into separate sources.list.d/ entries. And then to manage those entries with a couple of (very) simple scripts:
dominic@dom900:~$ cat /usr/local/bin/apt-enable
sudo mv $SOURCES/$1.list.disabled $SOURCES/$1.list
dominic@dom900:~$ cat /usr/local/bin/apt-disable
sudo mv $SOURCES/$1.list $SOURCES/$1.list.disabled
That's it. Say I head into uni now. All I have to do to use the uni mirrors is:
dominic@dom900:~$ sudo apt-disable nz
dominic@dom900:~$ sudo apt-enable uoa
dominic@dom900:~$ sudo apt-get update
My sources.list fragments don't go anywhere; they're just renamed to disable them. And I didn't have to touch a text editor, beyond the initial setup.
As you might be able to tell from the sidebar, Something Emporium is now OpenID enabled.
This was one of the more interesting web standards I've used on the site. The standard itself is very complicated, consisting of a mish-mash of further standards and protocols (Yadis, XRI, XRDS); you might be able to whip up your own implementation of Trackback or Pingback over a few hours, but you're going to need a third-party library for OpenID.
Which is a problem. Even for a pervasive language like PHP, your options are pretty limited. There's no PEAR implementation, for example, and the support classes for the implementation that's supposedly coming have fundamental problems: missing semi-colons, faulty refactoring and no support for SReg (one of the most useful extensions of OpenID).
JanRain have a good implementation (good enough to call it the reference implementation), and that's what I ended up using. But it has its own problems: their commitment to support for PHP4 (4.3 no less! why?!) prevents the library from using some of the nicer things in PHP5 (static!) that I've come to expect.
So far, you can register and login using your OpenID. And the site will pull in any information it needs from your persona. Next, I'm going to work on making it really easy to use an OpenID to post comments. And provide a way for existing users to set up and manage their associated OpenIDs.
These days, you might have an OpenID and not even know it; Wordpress, LiveJournal, AOL and Yahoo all provide OpenIDs, for instance. Plus, there are free OpenID providers galore, and you can even use your own website by just adding two tags (I use http://www.dubdot.com/ for instance).
Once you have your OpenID, go ahead any try it out on SE. Despite the trouble I had getting it working, I have to say it's a really cool technology.
I was on the way to the downtown mall, to grab some food and check out the St Patrick's day parade. Noticed the Anonymous guys (and girl), about a dozen all up, going hard on the corner of Britomart and Customs. They got a fair few honks but, to be honest, I don't think they figured on fitting in with the festival atmosphere as much as they did - or, to put it another way, the parade was bigger, louder and just plain more interesting than the protest.
A few of the protesters were dressed very snazzily, which is great. A lone police officer was directing traffic for the parade and doing his best not to notice them.
Apparently, the plan was to move the protest on to Panmure (as explained in their planning discussion), where the local church is. But the group of people I saw moving away from the protest hopped a bus to somewhere else. No, I won't say where. They're paranoid enough as it is. I will say it was hilarious watching them purchasing their fares though.
Actually, speaking of paranoia, I thought the suggestion was to take indirect routes home, and to keep the masks on. The group of four or five I saw didn't; they ripped the masks off after dumping their signs in the nearest public rubbish bin, blocking it from being used (not cool).
And since I just realized I've discussed the whole protest without saying what the protest was against. Stuff has some good reading material about the operations of Scientology in New Zealand.
Edit: Later in the day, the US foreign policy protesters in front of the downtown embassy showed how a protest is really done; with fifty plus people, a police cordon and a few burning flags.
OpenIDs can now be associated with existing Something Emporium accounts. To see how, check your user details page. You can now also authenticate with an OpenID directly from a comments page (making it super easy to avoid moderation).
Google has a pretty wonderful API for rendering charts. You pass it the specifications of the chart you'd like in the URL, and it spits back a rather pretty image. It's nice not to have to play around with graphing libraries and the like. And, even if you're using Gruff, it'd take you quite a while to get something looking as good.
Only thing is that I wouldn't be too happy with just storing my data in a URL. So, if I were writing a blog post I'd want some way to store the graph data server-side, and generate the URL on the fly. Maybe a nice XML processor that reads a data file. I might get to work on that.
Playing around with world maps:
Wayne's review of John L. DiGaetani's Penetrating Wagner's Ring:
As implied by the title, this collection probes deeply into Wagner's vast Ring piece. Accusations of anti-semitism make Wagner's Ring a sensitive area today, but it continues to offer pleasure to many. This is a masterful work of musical scholarship that deserves a place on any sturdy shelf. No doubt it will influence appreciation of Wagner's Ring for many years to come. Among the highlights is the revealing chapter on the many characters than Wagner has managed to cram into his Ring. Also covered are the brass instruments that Wagner designed specifically for use within the Ring. There will always be those who are opposed to musical analysis (just the same as there will always be those who resort to juvenile humour, regarding the title). They will say that Wagner's Ring is 'violated' with excessive force of scholarship. For this reviewer, however, Wagner's Ring remains quite intact and is indeed tightened by the exploration. In short, this stimulating venture in and out of Wagner's Ring has resulted in a seminal, fluid output.
I like the endless parade of close family members he mentions. And his review of the Thomas the Tank Engine bedsheets. His entire hilarious output, here.
Beware: April Fools Day tomorrow. Seems to be getting bigger (and somewhat lamer) every year (see Talk Like a Pirate Day).
It seems, on the latest Weakerthans album, that Virtute, the cat, has run away. Damn.
Interestingly, she has forgotten her name. I think this is supposed to be a linguificationist parable: one can obviously not have have virtu(t)e without having a name for it. Uh-huh. Thanks Sapir, thanks Whorf.