A few thoughts on the aftermath of a linux.conf.au 2011 keynote

During the final keynote of linux.conf.au 2011, Mark Pesce used some images in his slides which breached speaker guidelines and conference policy. Linux Australia and the lca2011 team responded quickly, announcing an apology at the next available whole-of-conference plenary event.

As incidents like this go, it wasn’t a big deal. Although it did distract everyone from the message of Mark’s talk. Hopefully a lesson learned.

The problem was what happened next… here are some thoughts about the aftermath which I originally sent to the attendees’ mailing list.

A few thoughts on the aftermath

  • The response to the keynote was not “blown out of proportion”. There was a breach of policy and an apology was offered by Linux Australia (LA) and the linux.conf.au 2010 team (LCA). The speaker also offered his apology. Done.
  • No “censure” was made, despite the unfortunate subject of an early reaction on the conference attendees’ mailing list, and wilful mischaracterisation by a single, ambulance-chasing opinion writer. Consider that neither LA or LCA have publicly criticised the speaker.
  • We’ve heard some reasonable, well-stated criticism aimed at improving future events and experiences.
  • We’ve seen a fair amount of silly, predictable, confected outrage on the attendees’ mailing list, with debate about censorship, “sexual images” and so on. Here’s an easy answer to those contributors: It’s not your call. Linux Australia and the conference team define the parameters for linux.conf.au, ran the show, and took responsibility for what happened.
  • There has been a small but vocal group who have chosen to debate more general issues, such as how real or prevalent harassment might be. I do hope these people — particularly the more prominent members of our community engaging in it — receive a short, sharp talking-to from their less Neanderthal friends.

What’s next

  • There will be a shit-fight over whether or not the video of the keynote should be published. If it is published, LA/LCA will be criticised for promoting the breach or being complicit in it. If it is not, LA/LCA will be criticised for censorship. Both of these conclusions are bullshit, but I’m sure there’ll be someone willing to give them a red hot go. Either way: It’s not your call. I hope everyone can imagine the range of problems this situation might pose for LA/LCA (including venue, sponsor and hosting considerations), but we entrust them with the responsibility for doing so, and self-righteous indignation won’t help. Those concerned about a gap in the historical record will be relieved to know that Mark has published his slides and an essay based on the talk to his blog: Smoke Signals.
  • We don’t want future events to end on a sour note due to continued haranguing over an issue like this on the mailing list, so there are some bugs to fix.

My suggestions

  • Dump the anti-harassment policy. Apologies to the authors, but it’s badly written (both the lca2011 and Geek Feminism Wiki versions) and unhelpful as an expression of policy or communication, both of which are important. It’s well worth including in references though (as the 2010 team did by mentioning LinuxChix in their T&Cs).
  • Although the lca2011 team adopted Andrew and Susanne’s T&Cs, they were still relegated to the “registration” section of the website, and largely forgotten. This is the right document for policy, and it already very capably expresses the pointy/policy end of the principles LA has adopted. It should be more visible.
  • Pia suggested a Code of Conduct. That’s a great way to adopt a communications document to go with the existing policy (T&Cs), and we already know that Codes of Conduct have found success in other communities. The trick is to ensure it is clearly understood to be a statement of principles, not a policy document.
  • The guidelines provided to speakers regarding slides were already crystal clear: “Please be aware, and ensure your Co-Presenters are aware, of the Terms and Conditions to ensure that Presenters’ material and behaviour is appropriate for the LCA2011 audience, that includes keeping slide-decks G-rated.”

If only “Be excellent to each other” would suffice.


Speaking at linux.conf.au 2011 about HTML5 and node.js

Later this month I will speak about “HTML5 web applications with node.js” (see, I’ve already filled half your buzzword bingo card) at linux.conf.au 2011 in Brisbane.

In the presentation I will give a brief introduction to node.js, but mainly focus on building cool stuff with it. Like Denby. I will also attempt to answer the question,



How to mount a VirtualBox VDI image

Don’t believe the hype! It is entirely possible to mount a VirtualBox VDI image, just like a loopback filesystem… all you need are the right tools and know-how. Allow me to illustrate.

My apologies, that was the wrong illustration. Onward!

Before we start, it should be noted that you don’t want to do this while your disk image is already in use. That is to say, if you’re running a virtualised host using this image, GTFO.

First, install the QEMU tools. In Ubuntu, you’ll find them in the qemu-kvm package. Whatever package your distribution ships which contains the qemu-nbd binary should be fine.

Load the nbd kernel module. Yes, I’m serious, the network block device module! (Note: All of the following commands require superuser permissions, so escalate your privileges in whatever way makes you most comfortable.)

modprobe nbd

Then run qemu-nbd, which is a user space loopback block device server for QEMU-supported disk images. Basically, it knows all about weird disk image formats, and presents them to the kernel via nbd, and ultimately to the rest of the system as if they were a normal disk.

qemu-nbd -c /dev/nbd0 <vdi-file>

That command will expose the entire image as a block device named /dev/nbd0, and the partitions within it as subdevices. For example, the first partition in the image will appear as /dev/nbd0p1.

Now you could, for instance, run cfdisk on the block device, but you will most likely want to mount an individual partition.

mount /dev/nbd0p1 /mnt

Gadzooks! Now you can muck around inside the filesystem to your heart’s content. Go ahead and copy stuff in or out, or if you’re feeling fruity, have some chrooty: chroot /mnt.

When you’re done, unmount the filesystem and shut down the qemu-nbd service.

umount /mnt
qemu-nbd -d /dev/nbd0

Meta: Switching to partial feed on Planet GNOME

As I would like to write more regularly about a far wider range of topics, and have quite firmly moved on to “emeritus” status in the GNOME project, I have decided to publish only my GNOME-related thoughts on Planet GNOME in future.

If you have enjoyed my eclectic (albeit occasional) writing in the past and would like to keep reading, please subscribe to my complete blog feed or follow me on Twitter.


Best (Scott Pilgrim) meta film review ever

Here’s what I’m saying: I’m a woman, I’m in my late thirties, I can’t handle first-person shooters, I’m afraid of Comic-Con, and I really, really liked Scott Pilgrim vs. The World.

I hope I’m not, you know, blowing your mind.

— Linda Holmes in her incredibly cool meta-film-review, ‘Scott Pilgrim’ Versus The Unfortunate Tendency To Review The Audience

1 Comment

The Naked and Famous

If your eclectic tastes include legendary modern music-as-art heroes such as Radiohead, MGMT, Florence and the Machine, Nine Inch Nails and How to Destroy Angels, you simply must check out upcoming New Zealand band The Naked and Famous.

Their debut album will be released in early September, but they’ve put out some mind-blowingly good singles already… here’s Young Blood:

Continue reading


Franklin Street Statement PDF

The Franklin Street Statement can be found on the web in the form of a fairly ugly blog post, which does not befit a document of such importance… and for that matter, neither does the printed form of that page.

I wanted a nice paper copy of the statement to put in a prominent position on my desk, and figured it would make sense to share my rendering. It may be an interesting thing to hand out at developer conferences or Software Freedom Day events.

The document is set in Free typefaces, Liberation Serif and League Gothic — appropriate, given that League is a wonderful Free alternative to Franklin Gothic! I know, I know, you see what I did there. Now… Download the Franklin Street Statement PDF!

Note: I wish the source ODF had survived the wrath of OpenOffice.org’s “eat my document” crash recovery feature, but at least the resulting PDF is fairly easy to edit. 🙂


Wired? Tired? Expired.

Glyn Moody pointed out an awful article written by Chris Anderson (of Long Tail infamy) and Michael Wolff, “The Web is Dead. Long Live the Internet”. It is almost Nick Carr-esque in its pursuit of overwrought claims with little to no basis in fact.

The lunacy of this article will resonate with anyone remotely connected with the technology industry, let alone those involved in software and web development.

But here are my favourite bits of abject cluelessness:

JavaScript then, Objective-C now? HTML then, XML now? What the fuck have you been smoking, Chris Anderson? … and don’t tell me it was some “junior staffer” subbing the living crap out of your stupid lack of perspective.

… and then this little gem to finish things off, ignoring years of evidence that we enjoy temporary dalliances with convenience before returning to (often quite) revolutionary openness:

The Internet is the real revolution, as important as electricity; what we do with it is still evolving. As it moved from your desktop to your pocket, the nature of the Net changed. The delirious chaos of the open Web was an adolescent phase subsidized by industrial giants groping their way in a new world. Now they’re doing what industrialists do best — finding choke points. And by the looks of it, we’re loving it.

I’ll make my own bold, unsubstantiated claim… Wired: Tired and expired.

Glad I have that off my chest. Thank you, ball boys.

* * *

Update: Check out this hilarious take-down from Boing Boing … with facts! … and analysis! … and pretty graphs!

1 Comment

Packet and Denby

This is Packet.

This is Denby.

I mention in the video that it’ll end up being “like TweetDeck”. I breezed past that a tad too quickly — it’s definitely not going to be an HTML5 clone of TweetDeck! (Turns out they’re working on one of those already.)

Instead, it will take inspiration from the multi-column approach, but hopefully improve the user experience on a number of levels:

  • It’ll be 100% Free Software / Open Source… and one hopes, peer produced.
  • JavaScript on the server, JavaScript on the client, with liberal doses of “HTML5” (the platform your platform could be), whatever that means to you.
  • No Adobe AIR, and thus, no vicious memory and CPU abuse! Seriously: Firefox TweetDeck is wasting more CPU time sitting “idle” than Chromium and node.js are using to run Denby. Oh, and node.js is 12MB resident.
  • It can work a bit like a desktop app… use the “web page as application” tool your browser provides. Firefox has Prism, Chromium has… a menu item. 😉 Denby will support things like desktop notifications, audio bleeps, drag-n-drop (for media uploads), inline display of media, etc.
  • Run local or hosted. Once I’m happy with the user experience, I’ll start thinking about cool things the server could do while you’re not connected to it! For now, it only maintains the connection to Twitter while a client is connected.
  • I want to build delicious multiple account support, without complicating the single account experience. It’ll merge streams, detect the context you’re acting upon (click reply and you’ll be replying from the appropriate account), etc.

Please comment if you have any thoughts or suggestions… crimes committed by other Twitter clients, ideas for lovely web/desktop integration, and so on. Thanks! 🙂


* * *

Note that I’ve already had questions about StatusNet and identi.ca support. Thus far, they don’t have user streams, which was one of the main reasons behind building Denby. That said, it is entirely possible for the Denby server to poll the REST API (given that it already talks to Twitter’s) and send the results down the WebSockets tube… so, we’ll see.

Hmm. Perhaps this is the best way to build a user streams API for StatusNet anyway? The web app could send JSON messages to node.js, which could relay them to the intended users… via multiple protocols! Long-running HTTP, WebSockets, whatever. If anyone is inspired to do this, StatusNet could have a bi-directional WebSockets API before Twitter does!

* * *

Update: I made another quick video, showing a few improvements (including update bleeps — no chicken noises as yet), Denby in Firefox’s Prism environment, and sharing some thoughts about the web as a development platform. Enjoy!


QotD: Rusty Russell

Side note: when a respected information source covers something where you have on-the-ground experience, the result is often to make you wonder how much fecal matter you’ve swallowed in areas outside your own expertise.

— Rusty Russell in Superfreakonomics; Superplug for Intellectual Ventures