spaceblog

the bag for the schwag

HFS the conference bag we’re looking at is so amazingly awesome.

Yesterday, four of the seven trekked up to [redacted] for some hands-on experience with the bag in question. You guys are going to love it! Here’s a picture of the bag:

image redacted

If for no other reason, you should come to LCA 2007 here in Sydney JUST FOR THE SCHWAG.

machine readable webapps

Once upon a time, (25th of August 2003 to be precise), Goswin von Brederlow submitted a patch to add RFC822-like output to debbugs. It never made it into upstream.

This is very sad.

I’ve spent all morning writing some test code that screenscrapes my Debian bug list from the quasi-HTML that it generates, using the almighty BeautifulSoup. But in the end it’s a hack, it’s dirty, it’s not very general and it’s going to take a bit of work before it’s usable with tuffet for anyone but me.

Debbugs, Bugzilla, Sourceforget, none of them have a programmatic interface. (Ok, so there’s a patch that adds XML-RPC to Bugzilla… has it been incorporated upstream yet? Who other than Gnome and Red Hat are actually using it?) What decade are we in again?

Request Tracker has a programmatic API – REST. So RT’s off my immediate shitlist, but nobody’s writing client libraries for REST so again I’m building up dirty hacks to get the immediate job done.

I suppose that this will change over time. I hope that this tool will get used by enough people that there will be demand for programmatic APIs in all the bug tracking webapps out there. I also hope that all webapps that provide some storage service create a programmatic API – LiveJournal and Flickr and Google Maps are great examples of what people can do when your access to the data model is not restricted to an HTML view. MVC all the way baby.

If you’re writing a public webapp, you are doing your users a disservice by not considering non-browser access to the data model. If you’re building an public webapp for the open source community, and you don’t have a programmatic API to your data model, you’re not just doing your users a disservice, you’re committing a crime against humanity.

a bug aggregator and triage tool

At LCA 2005, Luis Villa presented a talk on being a bugmaster, and that inspired me to do some triage on SCons. Unfortunately that means dealing with Sourceforget’s hideous tracker interface, so of course I never got around to it.

Some months and thinking later, I realised I needed to pay more attention to my Debian bugs, which being in a separate bug tracker meant they were rarely on my radar. In our own office, we have both a Request Tracker and a Bugzilla, and keeping a track of my todo list is pretty hard when it’s split between the two – it’s hard enough when requests come from staff out of band of either of them.

I also forget how to use the tools: there’s a threshold of work in triaging bugs, and if that threshold is too high, I’ll do something else instead.

So the solution was to make a tool that put all my bugs, all tickets, issues, problems, feature requests, and so on into a single view – aggregate them from all the trackers that I use and put them on my desktop. Present a single interface to triage all those bugs, so that I don’t have to remember how to use the upstream tracker.

I mention this all, because Mark Shuttleworth’s keynote this morning really hit home with me – all of the merging of information and collaboration is exactly the way to go forward, and I’m excited that Canonical is building the infrastructure to help push that forward.

So, I have this tool, still in development, in bzr:

bzr pull http://repo.spacepants.org/bugtool/bugtool.dev/

It’s able to pull bugs from Sourceforget, and from the RT instance in our office; needs a bit of work now to get the interaction going but that should appear in the coming weeks.

I don’t like the name, though… I’m thinking it should be called ’tuffet':

Little Miss Muffet
Sat on her tuffet
Triaging her bugs all day

Along came a spider
and sat down beside her
So she "triaged" that bug with some spray.

The Lions' Commentary auction at LCA 2006

Congregation,

Please open your Lions’ Book to Chapter Seven, page 7-1, verse 7, and we shall begin.

At the Lower Level, "processes" are inactive entities which are
acted on by active entities such as the processor.

On Sheet 15, line 1550 (Chapter 1, “Initialisation, Process Initialisation”), we find the main() function of the kernel. It takes no arguments, and returns nothing. It starts by zeroing and freeing all of core, and printing a copyright :-)

The System 6 code uses an initial indent of 3 spaces, and then 8 spaces for every level of indent after that.

Tonight, a “cartel” of ex- and current UNSW students pooled together to win the auction of a copy of the Lions’ Commentary on the System 6 Unix Source, famously distributed by John Lions from UNSW via photocopier before it was officially published in 1996.

The book in question was signed by the original Unix hackers Ken Thompson and Dennis Ritchie, as well as Eric Allman of Sendmail fame, as well as Linus Torvalds, to name a few. (The speakers of the LCA 2006 conference also have signed the book). The auction was to raise funds to support the creation of the John Lions Chair – a position for a professor of great talent to teach in perpetuity at UNSW.

Tonight, we raised and bid $10,000 to this cause. The book will appear on display at the University of NSW, in honour of Lions, who has inspired generations of students and academics in the elegance of simple design, open communication and sharing of knowledge; key elements of the community of open source.

We’d like to thank those members of the open source community who offered bonuses to the auction to boost the bid, and as such claim the following:

  • Jeff Waugh’s hair.
  • The text ‘The KDE Project uses and recommends the GNOME DESKTOP’ in the KDE 4 about dialog.
  • Rusty Russell’s mustache.
  • Dave Miller’s facial hair in its entirety.
  • Greg ‘groggy’ Lehey’s facial hair.
  • The text ‘We may be fast, but for real data security, use PostgreSQL’ in the MySQL 5.1 release notes.
  • A thankyou to John Lions in the Planet 1.0 release announcement.
  • oh there were probably more, but who can remember? :-)

(the LCA 2006 photoset has been updated)

f-spot and flickr

The announcement at the LCA welcome yesterday morning motivated me enough to a) get the photos off of my camera, b) hack f-spot again so it works with flickr, and c) blog about it.

So after trying for several hours to get stock f-spot and libgphoto in debian unstable to realise there was a camera plugged in the USB, Silvia offered a USB CF reader, which Just Worked, albeit was very slow :)

Then I had the joy of discovering that CVS f-spot no longer compiles with Mono in Debian unstable, but hacking the configure to accept the version I have installed, and commenting out the one line in some random export module that I won’t use that required the newer libraries, it compiled fine.

Turns out the new flickr auth patch still hasn’t been incorporated upstream. *hack*hack*hack*. Ok, so now it’s uploading to flickr! Yay!

The f-spot tags are broken when uploading though, so I dig around and just add doublequotes to each tag, so that “linux.conf.au 2006” isn’t broken up into two tags. Brilliant.

One more hack to make the photo title the first 30 characters of the comment, instead of some random filename, and it looks good.

Link to photoset in the next post, but right now it’s lunchtime!