18 Feb 2008 crhodes   » (Master)

Long time no blog. As ever, there are a number of reasons for this: complicated employment situation; too much work to do... but there's also the slightly addictive personality to consider. Since I've already been here once before, it should have come as no surprise to me that I could become engrossed in beating a roguelike game; in the end, I did beat Tales of Middle Earth (ToME) into submission, as I did with Nethack two years ago. (Two years? Well, consider that the only solid playing time is around Christmas, and then learn that last year I almost beat ToME into submission...)

“Complicated employment situation”, I hear you ask? The life of a junior academic researcher, while rewarding, often feels precarious: my main project research funding ran out at the end of May, and since then I have been employed on a succession of temporary research contracts. One thing this has led me to discover is that I am just not very good at having the next thing lined up before the current thing expires. Another is that I do not like the scary feeling of not knowing what I am doing next month – or perhaps more pertinently, where the next paycheque is coming from.

The good news is that this has now resolved itself; I have accepted a lectureship at Goldsmiths, a part of the University of London. (For readers not fully versed in the UK Higher Education terminology, this is a Real, Permanent Job involving a mixture of teaching, personal research and filling in lots and lots of forms.) I work in a group specializing in investigating sound and musical processes, from analysis and synthesis, through cognition, designing systems for cataloguing musical artifacts, all the way to automated Music Theory.

So what do I do there? My primary research responsibility is to the OMRAS2 project, which aims to do all sorts of clever things for recognizing and searching music: current fingerprinting services work on exact (but possibly degraded) copies of notionally entire tracks, whereas I have an interest in automatically deducing musical structures both from audio and from notation, and in working with approximate kinds of similarity (detecting that a track is a remix of another, or a cover version, and so on).

One of the reasons that I like this group so much, though, is that when I first met them, one of the PhD students (who is still with us, in a more advanced capacity) was working on his laptop using CMUCL and ILISP (this was late 2003, so SLIME was if not a glimmer in the mind of Luke Gorrie, at least not the clear choice for development on Free Common Lisps as it is today). This means that my interests in the engineering and language design aspects of SBCL development can go hand-in-hand with attempting to come up with protocols for interacting with musical corpora in many, many different formats: attempting to make it so that the same routines can operate both on representations of lute tablature and on a database of MIDI files designed for karaoke machines, being used to investigate memory for music. I finally have the excuse to use gsharp at work, too!

Speaking of gsharp, Brian Gruber handsomely completed his Summer of Code project, to add MusicXML import and export facilities. His work has been integrated into gsharp's CVS repository, and is being used and further developed here at Goldsmiths, and I got a T-shirt from Google. If you're reading: thanks, Brian.

It's not quite “all quiet on the SBCL front”, but all of the rest of my life leaves me with less time to spend on it than I would like. I did manage to restore support for the alpha architecture, which had bitrotted a little in the last year; this puts me in a reasonable position to finish up my work on improving the interaction between modular arithmetic and representation selection. In addition, I have been pushing forward a little bit the work that I reported on at ECOOP last year regarding user-defined subclasses of specializer; stay tuned for more details. (Maybe sooner than in six months' time!)

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!