Reasons to behave yourself

Beaming in from somewhere else on this not quite Stop Cyberbullying Day anymore day: Reasons to be polite and decent to other people in online fandom, noting that none of them have anything to do with niceness or censorship (or BNFs—Big Name Fans—but the influence they have on the discourse is a little particular to fandom communities).

Some reasons to be polite and decent to other people in online fandom, or in fact, many communities:

5) Among your audience there is probably at least one person whose good opinion you value, or who is in a position to do you either good or harm, who knows and likes the person you are about to be vile to.

8) [The person you are about to flame is] clearly considerably less intelligent than you are, and you have too much pride to shoot fish in a barrel.

9) [The person you are about to flame is] clearly considerably more intelligent than you are, and you have too much sense to invite a slapdown you’ll still remember in painful detail when you are 90.

10) Appearances online can be deceiving. The fact of someone being very new to fandom, or just very young, or alternately much older and not terribly tech-aware, does not actually guarantee that they are not, for example, one of the world’s leading authorities in the field you are discussing. This can lead to, once they have mastered the, for example, [LiveJournal posting] learning curve, and can express themselves clearly, a really really unpleasant burning sensation as your entire body turns flaming red with shame.

13) Something tragic or traumatic will probably happen to you one day, and that will be a bad time to discover that you’ve established a reputation as a person who doesn’t deserve or appreciate sympathy, kindness or tact.

14) One of the many ways in which fandom is not like high school is that fandom is full of extremely smart people. We are not short of clever around here. The bar for "So smart you will automatically be loved and admired, even if you behave like a wild squirrel brought indoors" is set much, much higher than you think it is, and you are probably in no danger of concussing yourself on it.

16) If your motive for nastiness is that you are terribly, terribly annoyed by stupidity, you may want to keep in mind that intelligent and meaningful conversations rarely break out in the middle of vicious slapfights.

Unfortunately my main response to this is that it sounds like fandom in particular, or at least online fandoms that the author of that post is in, pays back your sins much more effectively than geekdom as a whole does.

Feisty beta upgrade report

I’m sure everyone is just dying to see me upgrade Ubuntu again after it went so well last time, so, as Ubuntu 7.04 (codename Feisty Fawn) went beta last night, I have upgraded my laptop.

Things that currently seem to work just fine that I tend to worry about on upgrades:

  1. Ability to read photos from my camera over USB
  2. Suspend to RAM
  3. Network manager
  4. Power management in general
  5. gnome-session

Things I haven’t tested:

  1. Hiberate to disk
  2. Network Manager’s three million race conditions all meaning that it needs to be fully restarted after any resume

Bug fixes that I’m really hoping are genuine: 68818, 61423 and 49221.

Pipe dreams (stuff that I haven’t even worked out how to think about doing):

  1. Getting Network Manager to automatically choose a network appropriately even if, for example, I haven’t logged in the ‘mary’ user, which has bitten me a few times trying to give people (houseguests) a user account on my laptop and be able to sleep while they check their email.

Andrew ran into two very annoying problems: he used the recommended upgrade tool (update-manager) rather than aptitude to do the update and:

  1. Bug 73463: update-manager in its infinite wisdom decided that custom apt sources should be replaced with archive.ubuntu.com. In our case this meant that Andrew didn’t download packages via our apt-proxy install which meant that when I went to download them this morning, I had to download them all again rather than getting any cached versions. (Attention US residents: bandwidth is still not infinitely fast nor priced at a flat rate everywhere yet). It also means that all of Andrew’s non-main repository software (such as things in universe, the less well supported packages), got removed.
  2. an Apache fast-cgi package upgrade failed, which managed in turn to crash update-manager, which then couldn’t be restarted because update-manager relies on dbus, and dbus was in the process of being upgraded at the time of the crash. (He had to finish the upgrade with aptitude in the end.)

Pork Like a Tyrant Day

Does anyone else ever get that feeling on December 26 that goes Christmas is as far away as it will ever get? Well, Christmas is getting closer, and so is Talk Like a Pirate Day. In fact, you have exactly as long to wait for Talk Like a Pirate Day as has past since the last one. To celebrate this equinox, today has been declared Pork Like a Tyrant Day.

Pass the word on, and have fun with all your porking tyranny.

AussieChix: the Australian LinuxChix chapter

At linux.conf.au’s LinuxChix miniconf I had three or four separate conversations with women from around Australia about how they’d in theory have a local LinuxChix chapter but in practice they are the only geeky woman they know, or, in a couple of cases, one of the only people living within a 100km radius.

So I decided to see what I could do about making an Australia-wide chapter to replace the existing Sydney and Melbourne chapters. Members of the two chapters were reasonably enthusiastic (at least given that they themselves don’t have a huge amount to gain from it), and so after a month of domain name delegation and the like we went ahead with it: AussieChix, the Australian LinuxChix chapter was launched this week. The Sydney and Melbourne ones will be assimilated shortly.

I’m not entirely sure what we’re going to do with it. Perhaps just hang out there. Perhaps it can be the launching pad for something more formal growing out of the miniconf.

Very near miss on Wii voting

Nintendo has just launched a new feature for the Wii, called "Everybody Votes", letting Wii owners vote on such crucial questions as Dogs or cats? (Dogs says the world) and Eating or sleeping? (this was a ‘regional’ poll, which I think means Australia-wide, and Australia says Sleeping). A new question seems to open once a day or so, and Wii owners can submit questions for possible inclusion.

As of right now, you can vote on a variant of a question I chose, at least in Australia. They have a feature for suggesting questions and last night I had the brilliant idea to suggest that old personality test: Which superpower would you rather have: flight or invisibility? (The personality test works like this: flying people are less concerned with others and more concerned with solo adventures, and invisible people are snoops.)

However, either they didn’t understand the fundamental beauty of the question (although their replacement answer is suitable for testing snoopiness) or invisibility just isn’t cool enough. This morning I turned on the Wii, and here’s what we were asked to vote on:

Which superpower would you like to have? X-ray vision or flight?

Robo-Andrew and Robo-Mary ready to choose a superpower

I still think I am the brains behind this question though.

Sending messages one-by-one with mutt

Here’s a feature of my mail client, mutt, that I wasn’t previously aware of: the ability to emulate the mail command if you invoke it with mutt -x.

This is my use-case: every so often, I want to email a bunch of people, typically for some kind of invitation thing. But I’d like to email them the same message one by one.

I don’t want to Cc them all because I know a whole lot of people who are addicted to group reply/reply to all, and also because Gmail itself is addicted to this: it interprets mutt’s Mail-Followup-To header as Reply-To, meaning if I included an email list in the Ccs and mutt has set a Mail-Followup-To to be that email list and all other recipients minus myself (it’s been told I’m subscribed to the list), all Gmail users will reply to the entire Cc list minus myself, which is exactly the reverse of what I want. And lastly, occasionally I don’t want to give them a complete list of exactly who is and isn’t privy to whatever is in this particular email.

The standard solution is then to Bcc them. But most of my social mailing lists don’t accept Bccs, some of my friends also don’t accept them, and I also have trouble remembering who I sent the mail to.

After that, the typical thing to do (on the UNIX-like commandline anyway), is something like this:

  1. Store the text of the message in messagebody.txt
  2. Store the recipient list in addresses.txt
  3. Run a script that goes pretty much like this:
    for address in `cat addresses.txt`
    do
        mail -s “Some subject line” $address < messagebody.txt
    done

But then the problem is that I don’t have the usual copy of the outgoing mail in my mutt outbox, because I sent it with mail, not with mutt. However, just now I checked the mutt man page, and saw this:

 OPTIONS  -x     Emulate the mailx compose mode. 

So, that means I can do this, or something equivalent to this, and get exactly the behaviour I want (mails sent one-at-a-time with the recipient’s email in the To: field and a copy left in my mutt outbox):

for address in `cat addresses.txt`
do
    mutt -x -s “Some subject line” $address < messagebody.txt
done

Wii report

Wii hunting was a bit of an adventure. I had a Christmas gift voucher from Myer, and it was earmarked for a Wii, and so that meant haunting Myer. I didn’t really realise how scarce they were until the Hornsby store told me to come back at the end of January, and Kmart and Target were also Wii-free. A week later I popped into the city Myer store just in case and they had a Nintendo Wii—back in stock! sign, so I asked them to bring one out with a spare controller. No spare controllers they said. OK then, just the console.

I turned up at the Twisted µConf with the Wii and was immediately harassed by people who wanted to know if I’d seen the nunchuks for sale, somewhere, anywhere. No, I said, and not the controllers either. And that was when I realised that Andrew and I wouldn’t be playing Wii tennis together for a while.

I should have looked around earlier this week for online orders. I went to EB Games, Games Wizard and Myer in Hornsby today and Myer, David Jones, JB Hi-Fi and EB Games in the city, and sent Andrew off to JB in Hornsby, but none of them have any controllers or nunchuks, and actually, I don’t think that any of them have the console in stock any more either. All the Nintendo Wii—back in stock! signs had been taken away again at Myer in the city, and JB Hi-Fi is taking pre-orders for the next Australian shipment, expected early February. That’s going to be one hell of a boat.

I found out that Wii remotes are being bundled with Wii Play for $79.95 (the remotes are normally $69.95, so it’s mostly remote with cleaned up E3 demos thrown in as Wii Play for another $10). I pointed a browser at dstore.com.au which was good to me at Christmas, getting me Sid Meier’s Railroad for Andrew in time and lo, they claimed to have the Wii Play and remote packs in stock. Like the careless idiot I am I waited four hours to place the order, and evidently just squeaked in, because the item has already moved to Display only status which I hope means that they sold out shortly after I bought one because otherwise it means they accepted my money under false pretenses. The order is showing up in the system, so fingers crossed. I might have just ordered Sydney’s last Wii remote or something. Ebay doesn’t show above-retail pricing though, so the scarcity mustn’t be ludicrous.

linux.conf.au 2007: Friday 19th Jan

The final keynote, Kathy Sierra on Creating Passionate Users, was the first thing yesterday morning. Andrew and I had an interesting compare-and-contrast with Andy Tanenbaum’s Wednesday keynote when we talked last night. Sierra is very good, and her keynote was valuable in the sense of telling people things they probably sort of know in a really conscious, cohesive way so that they can make use of them. But it wasn’t as gritty in the way that Tanenbaum’s talk was, that is, it wasn’t something that most people both partially or fully disagreed with but also couldn’t shut up about. I didn’t hear anyone talk about Sierra’s talk with geeky passion.

That said, it was very good. Sierra argued (and in fact, writes and talks about everywhere, I’m told this talk was very similar to her OSCON one, and also see the Creating Passionate Users blog) that much as technical people don’t want to believe it, the human brain is not evolved to find protocol arcana or shutter speeds very interesting, because you can’t eat them or reproduce with them and you don’t need to run for your life from them. That’s not to say that everything about software needs to be presented in terms of food, sex or danger, but that the brain is evolved to pay attention to strong emotions and unusual images or behaviour, and that the emotions these inspire help people pay attention. If you don’t create a ‘twang’ of emotion, you won’t hold people’s attention.

There were two other points she made that I found interesting. One was about levelling as brought to you by computer games (and before that, pen and paper roleplaying). In particular she argues for regular partly symbolic rewards for progress to inspire users to continue learning and inspiring. The first two need to come very quickly, then they should come further and further apart. Ideally, the skill that you need to acquire to be certified at one level should be a skill that is integrally used the whole way through the next level.

The other was about outcome oriented documentation and teaching. This was the point that I didn’t feel people would really ever disagree with, but that doesn’t mean that it doesn’t have to be made. Her example was that of her camera manual. The camera manual is divided into sections like ‘shutter speed’, whereas the kind of documentation that Sierra was looking for was for tasks like ‘taking action shots [of her horses].’ This is the old user guide/reference manual distinction. It is easier said than done though, for a lot of things: you need to have a good idea of what these tasks look like for your tool to be able to write this kind of thing. That’s not always clear for software, especially for non-end user software.

After morning tea I was in the theatre for Dave Jones on Why userspace (still) sucks, but I wasn’t actually listening to it, sadly, I was updating a wiki page for the LinuxChix Blue Mountains trip tomorrow. It was a talk somewhat along the lines of the long ago Alan Cox post to nautilus-list on nautilus’s load time: applications polling the disk continuously and ludicrously for example, applications checking for a burnable CD constantly when you don’t have CD burner; applications that wake up and burn some CPU every ten milliseconds for the hell of it, that kind of thing. I’m told the subject of Ryan Lortie’s Burning CPU and battery on the GNOME desktop later in the afternoon was fairly similar.

I was bound and determined to get to André Pang on Concurrency and Erlang after missing his SLUG talk along the same lines. It wasn’t really long enough to demonstrate the superiority over threads with message passing instead of threads with shared state and locks except by passed along wisdom, but Erlang looks like a fun language.

I had a weird Jeremy Fitzhardinge experience at Open Day on Thursday: I read his wife Rachel Chalmers’ blog although I haven’t ever met and don’t know either Fitzhardinge or Chalmers; I originally used to read her Advogato diary and went from there. Anyway I saw a blond toddler wandering around at the Open Day and thought wha… why would a toddler look so familiar? It was Fitzhardinge’s and Chalmers’ daughter Claire, who I recognised from photos in Chalmers’ blog. But that wasn’t why I went to the Zachary Amsden, Fitzhardinge, Rusty Russell and Chris Wright talk on Writing an x86 hypervisor: all the cool kids are doing it! It was because I didn’t know what a hypervisor was. Well, it turns out that it’s the host operating system on any virtual machine setups, the one that handles traps, translates memory and IO syscalls and that kind of thing so that the guest machines don’t bite each other. Also, features kill puppies and everyone picks on Xen. So there you go.

The last talk I went to was Choosing and Tuning Linux File Systems by Valerie Henson. I’d already chosen ext3, so my work was nearly done. She recommends ext3 for most desktops and laptops; ext2 for filesystems where the redundancy is implemented on top and you want some speed underneath (apparently there are rumours that the Google File System is a layer on top of ext2) and XFS for heavy load with a lot of access (video servers).

I scoffed at us needing escorts to the dinner at the Australian Jockey Club, but actually it was a long hike under the racecourse. It was a difficult dinner in terms of its purpose. There were 600 or 700 people there, and most of us couldn’t really see the podium or the people at it; at the far tables they talked right through the speakers. The charity auction was over pretty quickly too; the bidding went into the thousands almost immediately, which rather stops things dead, given that that limits it to the small number of people who both knew there was an auction and have thousands of dollars. Our table had good fun with the attendee red and green glow sticks though, and ate lots of chocolate. I didn’t stay for the party upstairs and I’m glad I didn’t. I went home, ate fruit, drank water, and slept. And that’s all, folks.

linux.conf.au craziness

So, linux.conf.au is over, I’ll document the final day tomorrow some time. Video is still going up and is linked from the programme page. Last I heard all main conference talks were successfully recorded (alas, no, there was no camera in the Chix miniconf), and will go up, at least, unless some speakers refused to sign the release.

However, in more amusing news, the video from last year is also up, as of just now. See mirror.aarnet.edu.au for links.