Computational linguists

xkcd suddenly exploded in my circles in 2006, thanks to the comic Randall Munroe calls Computational Linguists and most people refer to as “Fuck Computational Linguistics” getting around at the annual conference of the Association for Computational Linguistics.

There’s been requests for the xkcd store to sell it before, but it’s never been done.

I just ordered a batch through Sticker Mule, both of the full comic and of a smaller badge version I did. (They will do proofs of them, I’ll be interested to see if the “Fuck” bugs them.) In order to do so I did a vector version of the comic (via Inkscape’s “trace bitmap”), and because the original comic, and these variants, are under Creative Commons Attribution NonCommercial, I can share them with you here. If you want them, order copies from the sticker vendor of your choice!

Full comic:
Indicative PNG | Compressed Inkscape SVG | PDF (fonts as paths)

Smaller badge-like variant:

Fuck Computational Linguistics
Compressed Inkscape SVG | PDF (fonts as paths)

The vector versions aren’t very clean, but neither is the original comic, so I’m hoping these look like the spirit of the original, rather than a nasty hack.

Reminder: these are licensed for free noncommercial use (the precise condition is noncommercial use with attribution to the original author, modifications OK). So don’t sell them!

Quakers Hill nursing home fire

This article originally appeared on Hoyden About Town.

Anyone concerned about family members at the Quakers Hill Nursing Home can call 1800 227 228 for information.

I was horrified to wake up this morning to the middle of a radio news bulletin about a fire at Quakers Hill Nursing Home in Sydney. From latest bulletins it seems a fire alarm sounded at about 5am and despite fast firefighting response (6 minutes according to the radio) the fire had become massive. As of the 8:30am bulletins police are advising that 9 people have died and that 20 more people are being treated for burns injuries. The reports are still not very coherent but the firefighters do seem to be reporting that some residents were killed or hurt partly because they were not able to self-evacuate.

I’m so sorry for everyone involved, especially residents who were killed or injured, and their family members and loved ones. How utterly horrible.

Update 6:30pm: news reports this afternoon are of 3 deaths and a number of people critically ill. I am not sure whether earlier reports were higher or whether I simply misheard. Sadly, reports are also that the fire is being treated as suspicious.

linux.conf.au: program choices

I’m all but all booked in for linux.conf.au in Ballarat! (Need some accommodation in Melbourne for AdaCamp and to book the train to Ballarat.) So, time to share my early picks of the program:

Saturday (in Melbourne):

Monday:

Tuesday:

Wednesday:

Thursday:

Friday:

It’s skewed a little by my interests for the Ada Initiative now, that’s where all the mentoring stuff comes from. And I doubt I will get to all of this although presumably Valerie and I won’t be whisking people off to private meetings about the Ada Initiative as much. (At LCA 2011, when we were yet to launch it, we did almost nothing else.) It looks like Tuesday is a day to catch my breath before Wednesday. My family have decided to travel home Friday, so sadly Friday won’t be.

freelish.us: mental outage

It’s not absolutely clear to me that anyone at Geek Feminism has missed the linkspams, of which there hasn’t been one since 18th September. No one’s said anything, anyway.

What happened? freelish.us happened. Or it didn’t.

freelish.us, a bookmarking site using the open source status.net code, launched in April (April 1 actually, was that a good idea?) By that stage I was looking for an alternative to Delicious for bookmarking due to the new terms of service. I’ve been using flagship status.net site Identi.ca for microblogging for a long time (it cross-posts to Twitter) and while I’m inconsistent, I do like contributing to the commons to some degree, so a Creative Commons attribution bookmarking stream also appealed to me.

But the entire experience produced what I’d call “micro-burnout”. As in, I didn’t stop feeling pleasure or joy in stuff in general as would happen with burnout, but sharing links became a giant pain in the neck. Micro-burnout. Sharing links sucked.

First, there was the month or more on freelish.us where I just couldn’t seem to add bookmarks or import my Delicious backup file for love or money. I’d click “OK” and nothing would appear in my stream. It turned out that that was because I’d never validated my email address, but there was no error message to that effect, in fact no error message at all. I happened to see an understated warning elsewhere on the site that it was unvalidated, validated it, and suddenly the site actually worked.

Then there was the bookmarklet. The theory is visit a site, go to the bookmarklet, it’s bookmarked! On freelish.us it worked like this:

  1. go to the bookmarklet. This is pretty annoying in the first place, because I have a small laptop screen and bookmarklets require me to leave the bookmark toolbar visible. (I much prefer the Instaright approach, which places a small button in the URL bar, which is otherwise dead space anyway.)
  2. almost inevitably, find that I had been logged out of freelish.us, which must have had the most aggressively timed out cookies since linux.conf.au’s Zookeepr software (memo to Zookeepr: keep me logged in please)
  3. log in on the bookmarklet’s pop up
  4. be greeted with a small page saying I’ve logged in successful, but no sign of the entry form to bookmark what I needed reappearing
  5. back back back reload back back retry bookmarklet finally bookmark thing

And then, finally, on September 16, it and other status.net sites were taken down for upgrade. And now, nearly two months later, freelish.us home page still reads: “StatusNet cloud sites, including Identi.ca, are under maintenance. See status blog post for details and updates.”

Some facts about that:

  1. it’s not actually true any more: Identi.ca came back up after 24 hours or so
  2. it appears from comments there that any number of status.net sites are still down, and there’s been very little public comment on any of them that I can find. Several people asked specifically about freelish.us.

Also, freelish.us missed a probably once-off opportunity to captialise on the flight of horrified users of the new Delicious. But that’s not my concern.

All up, for two months the thought of bookmarking sites at all has made me distinctly “meh”, so, no linkspam for GF. This is what the software meh takes from the world.

I eventually decided that it was important to talk about what an annoying experience freelish.us has been, important enough to actually ask them for comment (via their press email contact). Here’s the information that as far as I can tell status.net has not communicated otherwise:

Q. What is the status of freelish.us? Is it going to return at some point or is it gone?

Evan Prodromou of status.net replied on the 30th October:

Freelish.us didn’t upgrade very well during the 1.0 process.

We’re moving to a new data centre this week, and I’m going to try to revive it then.

I fully intend to see it operational in early November.

There was a second question to which he didn’t directly reply, which was Q. In either event, is it possible for users of freelish.us to recover their bookmarks either for their own use or for import into another site? I take it from the lack of separate response that the re-appearance of the site will be the way in which users can recover their bookmarks and there is not an earlier alternative.

For the sake of the linkspams, I’m giving Pinboard a go. I’ll let you know how I do.

IPv6: encore

In which Mary does a lot of work on a comments policy in order to talk to herself about IPv6. True story.

Anyway, where we last left our heroine, she had found one unpromising (because unanswered) complaint describing her IPv6 problem. She tried updating the router firmware but it said it was the newest available firmware.

Some time later, our heroine found another account of the problem over on Server Fault where it was less likely to be lonely, and our heroine became convinced that she ought to install DD-WRT on her wireless router. Hey, maybe it would have worked, too. But our heroine’s husband likes his Internet to work, and gave her a sidelong look, whereupon our heroine at least deferring bricking her router until the weekend.

However! Our heroine is slightly bored of one of her day jobs, so today she idly searched for updated firmware and updated her D-Link DIR-615 router (C2 hardware edition) from firmware version 3.01 to 3.03WW (WW? I don’t get it either) and now she has a wireless router that does not send rogue IPv6 router advertisements to the network.

The end.

IPv6: finale in the key of D-Link

Background knowledge: this post requires some knowledge of networking, at least to the point of knowing what IPv4 and IPv6 are, and what is meant by subnet notation like “/60” and “/64”.

I believed for a very brief time that I’d beaten IPv6 into shape but soon my husband started complaining that sometimes it worked, sometimes it didn’t, and basically questioning whether it was worth any more late nights. (I would poke things, we would jointly debug them, IPv6 involved us skipping dinner two nights in a row in the end.)

Basically what would happen was that anything we tried to connect to over IPv6, most noticeably Google itself (because they trust Internode’s IPv6 routing enough to have turned on IPv6 access for their customers) would either work or just hang. I vaguely suspected some kind of routing error.

Here’s something to try if you have mysterious intermittent IPv6 dropouts or hangs: watch the output of radvdump closely. What you are looking for is any router advertisements coming from a second source: rogue RAs was the search term I was using somewhat in vain.

Unfortunately, if you find such a thing, there are essentially two options (much as you do if someone has put a rogue DHCP server on a network). One is to remove the rogue device from the network, the other is to firewall its announcements away from your clients. Unfortunate in my case, that is, because it emerged that the source of the announcements was our D-Link wireless router (which, per the previous entry, we run as a switch). Removing a wireless switch from our network would have the unacceptable side-effect of re-introducing strings of blue cable to our home, and it’s pretty hard to firewall your switch itself. So in our case, the answer for the present time is to give up on home IPv6.

Overall, although the reason we gave up on IPv6 was not a Linux problem, I have to say that I was really surprised how immature Linux’s tools are at this point. The fundamentals exist: kernel support, DHCPv6 and stateless configuration servers and clients. As an IPv6 client, Linux is doing OK. If you connect a Linux machine to a network that happens to be using IPv6, it’ll likely Just Work. But at the tools and packaging level there’s still loads of gaps along the lines of:

  • iptables and ip6tables are entirely separate programs, so you get to have your firewall configuration fun twice! (However, UFW handles this fairly nicely, if you’re in the market for a thin-ish wrapper around iptables.)
  • configuring ppp for IPv6 is like ppp for IPv4 circa 1999 or 2000 or so. Things like the “oh yeah, for a reason no one knows, you won’t get a default route, so here’s a little script that will bring one up for you” (see Shane Short’s blog entry)
  • radvd is a fairly crucial tool, but there aren’t a lot of example config files for different situations that I could find, and the man page assumes that you know a lot about router advertisements already
  • if you want to use Ubuntu’s supported DHCP server (isc-dhcp-server) for DHCPv6, you need to write it a second init script and config file yourself

So after all that you might be tempted to use a dedicated router for IPv6 and I’d sympathise except that the D-Link device does it even worse than Linux. Not promising. I can’t see that moving many ADSL users over to IPv6 is going to happen any time soon.

IPv6: prelude in the key of radvd

Background knowledge: this post requires some knowledge of networking, at least to the point of knowing what IPv4 and IPv6 are, and what is meant by subnet notation like “/60” and “/64”.

I’ve just changed ISPs, because I wasn’t much of a fan of my old ISP’s demand that either we enter into a new 12 month contract before 27 November or they’d consider us re-contracted at that date. My new ISP is Internode, Australia’s favourite geek ISP, in part because they offer native IPv6 and it’s even supported by customer service. It took me an entire 24 hours to succumb to the temptation of wrecking my perfectly good home network by attempting to make it IPv4/IPv6 dual stack, partly motivated by Geoff Huston’s “the sky is falling” keynote at linux.conf.au 2011. I like doing my bit to hold up the sky.

I use a Linux machine as our router rather than a consumer router device, that is, my ADSL modem is set to bridge mode and we use our wireless router just as a switch; neither of them do routing. (Or shouldn’t, but we’ll get to that.) In terms of resources for doing this with Internode, or any other ISP who will advertise your IPv6 routes via DHCPv6, here’s some useful material:

The main problem I had is that for as yet unexplained reasons, while this radvd.conf stanza worked fine when my Linux server ran Ubuntu 11.04 with radvd 1.7, it doesn’t work on Ubuntu 11.10 with radvd 1.8:

prefix ::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};

radvd 1.8 was advertising this in such a way as to get my Linux client to give this error (in /var/log/syslog):

IPv6 addrconf: prefix with wrong length 60

That is, it seems to have been advertising the entire /60 that Internode routes to each customer rather than a single /64. We ended up having to do something like this:

prefix 2001:db8:aaaa:bbbb::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};

That is, because Internode’s IPv6 allocations are static, we just manually picked a /64 out of the /60 allocated to us, and advertised that. I’m not clear if this a bug or a change in the way radvd works or a mistake of mine, we never got a chance to find out because of a showstopper which you’ll see in the next, and at this stage, final post in my adventures in IPv6.

Tiger Beatdown vs Australia

Tiger Beatdown is perhaps not enormously well known among the Australian poliblogs, mostly because it isn’t one, although one Australian writes for it.

But they’ve had a couple of pieces of local interest lately.

First in early October Flavia Dzodan looked into the multinational security firms that are behind a lot of immigration detention facilities and other jails:

Evidently, G4S track record of detainee safety in Australia was so poor that the government was forced to cancel the contracts. Instead, new ones were awarded to Serco, whose care of immigrants seems to follow the same sickening pattern:

At the detention center Serco runs in Villawood, immigrants spoke of long, open-ended detentions making them crazy. Alwy Fadhel, 33, an Indonesian Christian who said he needed asylum from Islamic persecution, had long black hair coming out in clumps after being held for more than three years, in and out of solitary confinement.

“We talk to ourselves,” Mr. Fadhel said. “We talk to the mirror; we talk to the wall.”

Naomi Leong, a shy 9-year-old, was born in the detention camp. For more than three years, at a cost of about $380,000, she and her mother were held behind its barbed wire. Psychiatrists said Naomi was growing up mute, banging her head against the walls while her mother, Virginia Leong, a Malaysian citizen accused of trying to use a false passport, sank into depression.

The key point for me is the question about to what extent these firms are lobbying, and successfully influencing, refugee policy. To what extent is it market maintainence?

Why ostensibly disparate nations like the US, The Netherlands, France or Australia (just to name a few), all seemed to have gotten on board with the anti immigrant sentiment at once. Why, within a short period of time, media seemed inundated with these stories of threats, fear and unrestrained menace. However, the same media that quickly exposes the threats of lawless, uncontrolled immigration rarely addresses the profiteers behind these trends. Every detainee is a point in the profit margins of these corporations. Every battered immigrant body forced to live in these conditions represents an extra income for these multi-national businesses. Nothing is gratuitous, as Mr. Buckles so poignantly said, There’s nothing like a political crisis to stimulate a bit of change. Especially if said crisis can create monstrous profits off the backs of undocumented migrants who sometimes lose their lives under the care of these corporations.

And now Emily Manuel is making the case for Occupy Australia:

I’ve lived in Australia and the U.S and I know from personal experience that the substantially lower standard of living in the U.S is something few Australians can truly understand. Things are not perfect in Australia economically – not with the astronomical housing prices – but we can’t say that the middle class has collapsed in the same way as in the U.S.

We do ourselves no favours when we uncritically mimic American models without changing them to suit local conditions. The cultural cringe is no more useful in activism than it is in other areas. The 99/1% slogan is powerful stuff indeed but doesn’t adequately address the income distribution of Australia as accurately in the United States. Activism must respond to local needs to be successful…

While we don’t have lobbyists in the same way, this is still a problem in Australia. If things have been getting so much better over the last decade, why have student fees been ballooning while full-time lecturers are replaced by casual tutors? Why is there no Medicare bulk billing? Why is the Medicare gap ever-increasing? How can the poor and working classes afford housing, in some of the most expensive markets in the world? For that matter, why do we pay student fees at all? If things have been so good, why do we deserve less as citizens than we did in the 70s and 80s? Why do we accept less?

We are blowing up the very same bubbles that have burst so dramatically in the U.S, and it is the same process of destroying the social fabric that the welfare state held together – it’s just we started off from a much better place, from a more cohesive social whole (G_d bless you, Gough Whitlam). With privatisation and economic rationalism, we have treated Australians with the same cannibalistic attitude that created the US 99%. Not citizens with rights and responsibilities any longer but consumers, markets to be exploited…

That is how well our democracy is functioning – when the top 0.02% of businesses and 10% of households won’t pay a tax for the benefit of the rest of us…

So yes: Australian apathy and irony have frequently served to protect us from U.S-style extremism, but what happens when enough people step forward to say something our political classes and media classes don’t want to hear? And what happens when we need serious changes to survive as a country and our politicians are unwilling to do anything about it? This is a problem that concerns all of us, in Australia and indeed worldwide, as we face climate change.

It is for this reason that we must have an Occupy movement in Australia that addresses the dictatorship of capital in our lives, that produces a democracy that truly centres the needs of the people. We need to protest. We need the right to protest. We need to be out in the streets to put the lie to the false consensus of the neoliberal press that there is no alternative to the status quo. And yes, we need to make sure that our needs are taken care of by our political system, even – especially – when they conflict with the needs of business. It is time that we made clear that running a “democracy” primarily for the rich is no longer a possibility in Australia.

Tiger Beatdown tends to long-form posts, so I suggest reading the originals. (And I suggest commenting there if you want to substantively engage with the arguments.)

GNOME Shell versus Unity

I upgraded my laptop to Ubuntu 11.10 today. I used Metacity+GNOME Panel through the previous version of Ubuntu as Unity crashed annoyingly on my laptop (tending to leave me looking at my background image, which is a cute picture of my son but even so) so this is my first Ubuntu version with the new shiny.

What’s annoying me right now is that they both have features I really like. I’ve only played around for a few hours so possibly one can be configured to have the good features of the other; these are from the default functionality on 11.10.

Unity: my laptop doesn’t have a lot of screen real estate, so I love the integration of the menu bar of windows into the top panel (called global menu). I like having those 20 pixels or so back!

GNOME Shell: I love the Activities mode in general! The presence of workspace previews that don’t require me to keep holding down the Alt part of the Alt-Tab combo is lovely, and the favourites menu on the left seems easier to edit than Unity’s. On the balance, I’d say I prefer GNOME Shell, but damn, global menu is a killer feature on my smaller screen. I’ll watch the global menu patch closely.

(Meanwhile, while writing this entry I discovered that Firefox’s right-click menu is broken in Unity—it disappears as soon as I move my mouse—which is a rather compelling reason to use GNOME Shell.)

Online harassment as a daily hazard: when trolls feed themselves

This article originally appeared on Geek Feminism.

Trigger warning for discussion of and graphic examples of threatening online harassment.

Seen s.e. smith’s post on blogging and harassment yet? You’re about to see it everywhere (on the social justice blogs) because it’s very powerful and true:

by the time I’d clocked around 20 threats, and was up to around 30 readers, I’d learned the art of triage. The quick skim to find out if there was any actually personal threatening information, like identifying details, or if it was just your garden variety threat with no teeth behind it. I kept them all in a little file in case I needed them later, and forwarded the worst to the police department, not in the belief they would actually do anything, but in the hopes that information would be there, somewhere, in case it was needed someday.

“I hope you get raped to death with a gorsebush,” one email memorably began. I gave the letter writer some style points for creativity, but quickly deducted them when I noted he’d sent it from his work email, at a progressive organisation. I helpfully forwarded it to his supervisor, since I thought she might be interested to know what he was doing on company time. “Thanks,” she wrote back, and I didn’t hear anything more about it. Several months later I attended a gala event the organisation was participating in and watched him sitting there on stage, confident and smug”¦

I was careful in all the ways they tell you to be, to make it difficult to find my house, for example, and most of the rape threats, and the death threats, the casual verbal abuse from people who disagreed with my stances on subjects like rape being bad and abortion being a personal matter, weren’t really that threatening in that they didn’t pose a personal danger to me, and I was rarely concerned for my safety. That wasn’t the point, though, which is what I told a friend when she got her first rape threat and called me, sobbing. I wished she’d been spared that particular blogging rite of passage, but unfortunately she hadn’t been.

“They want you to shut up,” I explained. “That’s the point of a rape threat. They want to silence you. They want you to shrink down very small inside a box where you think they can’t find you.”

And it works. I see it happening all the time; blogs go dark, or disappear entirely, or stop covering certain subjects. People hop pseudonyms and addresses, trusting that regular readers can find and follow them, trying to stay one step ahead. Very few people openly discuss it because they feel like it’s feeding the trolls, giving them the attention they want. Some prominent bloggers and members of the tech community have been bold enough; Kathy Sierra, for example, spoke out about the threats that made her afraid to leave her own home. She’s not the only blogger who’s been presented not just with vicious, hateful verbal abuse, but very real evidence that people want to physically hurt her, a double-edged silencing tactic, a sustained campaign of terrorism that is, often, highly effective.

[That is a relatively short excerpt, read the whole thing.]

I think it’s time to take a look at the reflexive “don’t feed the trolls” advice, frankly.

It was developed, I think, for Usenet (at least, the earliest known usage of the term ‘troll’ in this sense is from alt.folklore.urban in 1992, which suggests that that formulation probably originates similarly), and was adopted by email lists and blogs in due course. I’ve always been suspicious of it in the case of forums like email lists where messages can’t be recalled: some people implement it as just leaving the troll to continue sending messages into the void – except that it’s not a void. Experienced people may have blocked the troll, inexperienced people are there to be frightened either specifically by the troll or by the apparent unremarkableness of the troll’s behaviour. (This is one of the reasons I am less and less on-board with the free software community’s continued preference for public mailing lists. I like my email client a lot too, but I like spaces where harassment can be removed quickly from all reader’s view more.)

There’s certainly some wisdom in “don’t feed the trolls”. Consider for example Gavin de Becker’s advice in The Gift of Fear: if you, say, return harassing phone calls on the 50th time, you’ve only taught your harasser that they need to call 50 times to get a response. They need to learn that they cannot reach you, that there is nothing they can do to make you reply to them.

So far it seems sensible, but what it doesn’t account for is having multiple harassers, who either may not be aware of each other or who may be actively encouraging each other and coordinating attacks (via hate blogs or forums or the more wildcard ‘lulz’ variants thereof). It’s not so clear there that en masse silence is a useful strategy, it varies by case, and the off-hand use of the “everyone knows that you don’t feed the trolls!” wisdom that was (arguably) effective in the case of lone trolls is in effect a message to people being targeted for harassment by a coordinated group, or who have a number of individual harassers, that no one gives a shit. Don’t talk about it, we don’t care about your problems.

It also means that we are continually surprised by the size and scope of the problem. Death threats? With your address attached? Weekly? This is a problem not only because of the continuing coziness of the “yeah right, never happens to me” crowd, but because we often aren’t sharing information among targets.

It’s not just you.

It’s not just you.

Every single time, there is someone who has been hurt by thinking it’s just them.

I by no means advocate compulsory reporting of harassment, in fact I am very strongly committed to empowering survivors by allowing them a coercion-free space to do whatever the hell they please in terms of reporting or not. But “don’t feed the trolls” isn’t any more coercion-free than “stop hir hurting someone else! report now!” The coercion is this: thirty years of Internet are saying keep this to yourself, damn you (stop hir hurting someone else)!

Thirty years of Internet, per above, don’t have the whole story.

This scale of harassment of bloggers also brings us into a realm where people without the financial resources of celebrities to, eg, pay Gavin de Becker’s people to read their mail for them and alert them only to genuine immediate threats, have to deal with the same scale of harassment. This isn’t totally new to the Internet (being, eg, the family member of someone who has either committed or been the victim of a well-publicised unusual crime, has long attracted the same kind of attacks) but it is hard enough for rich powerful people to protect themselves mentally and physically from this level of hostile attention, let alone people with the typical resources of a social justice blogger (generally relatively privileged yes, able to afford state-of-the-art personal security, no).

On that, I’m honestly not sure what to do except that it scares me. There appears to be no known effective defence against sufficiently many motivated harassers. There doesn’t even appear to be a lot of giving a toss about it.

Update: Hey folks, on reflection I realise that my last paragraph kind of invites advice, but it’s probably safe to assume that if you’ve thought of doing X in response to trolls that so have people like s.e. smith, and either X is in their arsenal, it doesn’t work, or it isn’t reasonably possible for them (that is the cost-benefit trade-offs don’t favour it).

Responses from people with unusual expertise on personal security or on community management and similar areas giving facts advice or facts might be useful, but if your expertise is “average experienced netizen” please step back and give people affected a chance to talk.