The bounty puzzle

My mind may be a little warped at the moment from spending time as a programmer for client driven projects and the associated perils, but every time I think about open source bounties something in the back of my brain starts squealing painfully.

I mean, these things just seem like a potential minefield to me. And I don’t mean legally, in the sense of people suing each other over bountified things that did or did not happen or bounties that did or did not get paid. I just mean in the sense of an enormous amount of sweat and blood spilled over the details of when the task is complete.

Consider the kind of features that are being bountied, for example parental control for Ubuntu. There are so many ways that one might not like an implemented solution to this problem, both reasonable and petty:

  • it might not completely control the users’ access in any one of a number of ways (doesn’t block IM, is missing some porn websites, doesn’t block use of alternate proxies…);
  • it might not be written in a programming language you favour;
  • it might manipulate packages or user settings in a way that is contrary to the way the rest of the distribution works;
  • you may disagree with its author about what parents might want to control;
  • it might have an unusable GUI, or one that you claim is unusable; or
  • it might have security flaws you can drive a truck through.

Moreover, upstream might have their own set of reasonable or petty objections, ranging from "I wanted to do that myself, it sounds fun, so I won’t use your solution" to "cleaning this up so that it works for us is going to be months of work" or "it has security flaws you can drive a truck through." And any or all of these might be the end of the project in a normal situation. But when some small amount of money is added, there’s a whole new fight on about what constitutes a completed bounty for the purposes of payment.

Even with companies, which are fairly motivated to be profitable, and even with specifications longer than the Bible, these fights can end up costing more person hours than the total value of the project. With bounties maxing out at USD500 or so, I’m willing to bet that the review time alone will cost more than the value of the bounty in all but cases so trivial that writing the code is faster than writing the specification anyway.

But the main problem for me is that doing client driven work now without a very clearly defined relationship between myself and the client (I’d like the armies of the undead to be involved, but failing that, serious review of the specification before coding begins) just gives me the willies. I’d rather take my chances with scratching my itch and hoping that the community agrees that it’s worth applying the patch than have the community try and assume a client relationship with me, let alone someone peripherally involved in the community who wants me to do the work of getting the feature that they personally want added.

There’s a problem here to be solved. It’s the old nasty one: what does a good specification (one where the specified task can be judged complete with as little ambiguity as possible) look like, and how does one write one?

Ubuntu and Malone

Apparently I haven’t gone mad, and the security fixes announced in this and this announcement do not, for all intents and purposes, actually exist for end users at the moment (bug 31584 and bug 31585).

Malone (the Launchpad bugtracker now used by Ubuntu) must have improved since I last used it. I remember way back when every time I filed a bug against something else I would have to file four bugs against Malone itself. Now I’m down to a one-to-one ratio (bug 31581 and bug 31583) plus a couple more nitpicks (bug 31586 and bug 31621). This is still much more frustration than I’m really happy with: I spent literally an hour trying to report that those security updates were missing, and it was only as small as that because I’m one of the twenty people in the world who live with a Launchpad developer. Alas, since I use Ubuntu and need to give them feedback on my problems if I want my computers to keep working, they have me all locked up on this one. And I normally find bug scutwork soothing in small amounts…

LiveJournal and planets; Planet todo

LiveJournal and planets

For some as yet not well explained reason, LiveJournal has changed their URLs so that each user has their own subdomain.

The upshot of this is that the Planet software has now moved some LJ users entire feed (last 15 or 20 entries) to the top of the planets they’re on. Sorry about that, LinuxChix Live and Planet Twisted. You can bump them off by writing more entries…

Actually, given that planet is kind of evil about redirects, it might be better to edit one’s planet config, so that all feed addresses that looked like http://www.livejournal.com/users/username/data/rss/ become http://username.livejournal.com/data/rss/ (or http://users.livejournal.com/username/data/rss/ if the username began with _ or -, or see the announcement for information about whatever the hell is going on with communities).

Planet todo

Speaking of the Planet software:

  • It needs a complete go-over to convince it to dump as little as possible into RAM at various points. My two planets each take up to 40MB of RAM during generation. Potential problems include: feedparser does not stream; templating software does not stream. But even with those limitations, it shouldn’t be loading the complete cache of all entries from all blogs at once.
  • Redirection code may need fixing.

The trouble with IRC

I’ve been fussing about whether or not I want to use IRC for ages now. So I’ll put my dilemma out there into the void so that years later people can remind me how silly I was back in the day.

In this post ‘IRC’ means ‘hanging out on semi-technical IRC channels with people I barely know [in any sense of the word]’ and ‘hanging out on mostly-social IRC channels with people I do know.’ My feelings aren’t readily extensible to person-to-person IM, with which I’ve had so few obviously positive experiences that I seldom bother with it, and with IRC private messages, which I regard as essentially a more reliable way of getting Andrew to answer questions about his whereabouts and doings than email (he’ll answer about 50% of them rather than none).

Reasons why I keep using IRC

In order of decreasing importance:

  1. There are several people I know slightly for whom I have some substantial degree of fangirlishness (in the nicest possible way, I love smart people), respect or general admiration who it is not practical to interact with in any other way: typically they live in other countries; and I’m not close enough to them to be comfortable taking up their time for a one-on-one conversation in any forum whatsoever. This leaves spending thousands of dollars flying to the conferences they attend or hanging out in their IRC channels as the sole means for me to bask in their company.
  2. For several projects in which I’m interested, IRC is an important or essentially sole means of decision making.
  3. For one social group I’m peripherally involved in, IRC is a fairly important medium for making social plans.
  4. There are some coding activities that are easier to coordinate and some discussions it’s much faster to have on IRC than on a mailing list.

Reasons why I keep wanting to give it up

  1. The vast majority of IRC conversations are dross. I’m not sure whether this is a function of the higher social bandwidth that comes from seeing people’s faces, but while I’ve had very good conversations with people on IRC, I seem to have them in person more often.
  2. IRC is mildly addictive for me, and not in a nice way. The setup is much like the computer game model where there’s a certain amount of back-off in reward (to get from level 1 to level 2, you need to kill 3 rats, to get from level 29 to level 30 you need to kill 3 dragons and date two princes without either finding out about the other). On IRC, there’s always at any moment the possibility of fusion happening and a great (or important) conversation springing up from nowhere. Hence, just as I will tend to keep playing a computer game until the next reward state is reached, I’ll tend to stick around on IRC waiting for it to catch fire. Neither computer games nor IRC are terribly addictive for me, but both of them tend to have a net negative effect on my mood thanks to this usage pattern.
  3. A small minority of the time, IRC conversations, typically political ones, absolutely infuriate me due to some conversation of the content being expressed and the manner of that expression. This probably isn’t noticed most of the times that it happens because I tend not to participate in them, but I absolutely loath having my blood pressure raised like that and each time it happens I’ll vanish for some days if not weeks.
  4. Partly as a result of not valuing IRC very highly, I’m never in the inner circle of any channel I participate in. This means that every so often people will indulge themselves in a comforting social ritual that makes me feel like an alien anthropologist (various Twisted people like virtually squishing each other, some of the LinuxChix like to pretend to be cats…) and an unwelcome one at that. (Also, and I’m notoriously bad at explaining this and people keep misunderstanding me and thinking I’m claiming sexual harassment but here goes: this kind of thing would be extremely intimate behaviour coming from me and being in a place where people indulge in what I consider an extremely intimate behaviour and they consider to be a kind of mild social lubricant is just, well, weird.)

And a pony

So really, the upshot is that somehow I wish I could have the positives of IRC (working with some smart people I know on some interesting things they work on; and/or shooting the breeze) without the negatives. One alternative would be to give up on IRC and seek those things elsewhere, but unfortunately that means accepting losing most or all contact with a number of people who I don’t want to lose contact with. So far I have no alternative plan.

Things I learned by being offline for two weeks

  1. I don’t actually dislike reading blogs and mailing lists, but I don’t miss them when they aren’t there. I’d say that this might lead up to minor purges, but last year’s purges were so ruthless that the only thing left to purge might be going online at all.
  2. Actually, scratch that, I’m happier without IRC.
  3. I do confess to worrying that some kind of awful tragedy in the lives of people I know that I ordinarily would have been informed of via the net. (I did hear about an arrest in Thailand, but if there’s anything more recent than that, um, I probably haven’t heard.)
  4. Noone calls my mobile to see what I’m up to and where the hell I’ve got to.
  5. I did get an SMS invite to an NYE party I couldn’t get to though, so that’s OK.

Australian blog awards

Nominations for the Australian blog awards are open. (The authority is self-appointed, but that’s OK. I set myself up as an authority on everything I can think of too.)

Best Australian tech blog. Last year I nominated Martin Pool, but it didn’t really get anywhere. (I think ‘popular tech blog’ usually corresponds to ‘person who blogs about Cascading Style Sheets a lot’ rather than ‘person who blogs about source control a lot’.) Martin hasn’t been writing very much this year and I don’t want to nominate him on past glories. I’d make an effort for the free software community, but none of the writers on Planet Linux Australia really stand out for me yet.

Best Australian Political Blog/Best Australian Collaborative Blog. This would be Larvatus Prodeo for me. I wish they had a less shrill set of commenters though. I keep hoping one day I’ll stumble on an Aussie Unfogged (one of the very very few blogs where more than 0.1% of the comment threads are worth reading), but it hasn’t happened yet. I keep meaning to commit to reading Andrew Bartlett regularly too, but I haven’t so I don’t know if he’s a contender.

Best Overseas Australian Blog. Surely I’m not the only person who loves Rachel Chalmers’ Yatima. Surely? Her whole family is my blog crush.

In categories they don’t have, here’s some others, from closer to home:

  • Art blogging: Abstraktn
  • Grog blogging/cranky blogging: Julia
  • Bitchy teen blogging: Steph (get it while it’s hot, she’s turning 20 next year)

My new baby

She’s a little bulky:

Chunky little dive computer

If I’d really appreciated this prior to purchase I might have spent a little bit more money on getting a real wrist computer, not a console computer in a wrist mount. But that’s OK, it can wait until I retire this one some years from now.

And yes, my wrists are quite slender. This wrist strap is actually a pain to get off when it’s that tight, fortunately I will normally be wearing it over my other baby:

Wetsuit

The new one’s also a little crazy:

Dive computer showing 5 minutes of time at 57 metres

That’s saying that if I were to dive now (currently at sea level with no previous dives in the last couple of days) I could spend 5 minutes at 57 metres depth before it would insist noisily on my taking decompression stops during ascent. And it’s also assuming that I’m at least 70% completely crazy. I can’t say I have a great sense of my tolerance of nitrogen pressure, but I’m presuming that would be lala land: nearly 4 martinis by Martini’s law.