GSoC has officially come to a close, and in a very short time I have managed to make a more or less working version of In The Mood in C. On the plus side, it does seem to be more efficient, using less memory, and it gets rid of any possible command-line-parsing errors. Also, I’ve re-done the vector file storage so that it’s in subfolders, so there’s guaranteed to be unique names (basically the complete path for each song is copied over into ./gnome/rhythmbox/inthemood), and I’ve left the .mp3 or .ogg extension to make them easier to locate in the database (might be a little confusing if you ever look at those files, but they are indeed text). On the down side, anyone who tried the python version, you’ll have to re-analyze your database, due to this reorganization of vector files. Sorry!

Version 0.5.0 brings online-functionality to libsoylent. Want to launch a chat with someone? One function call. Want to see who’s online? One function call. Want to see someone’s online-status? You get it.
This release is also the last one for Google Summer of Code 2008. It’s the result of about four months of work. Phew.
The plan for the next release is that it will be a pure documentation and bug-fixing release. Also in that version: libsoylent will stop taking control of strings passed to it.
Changes
(Moving: I’m moving to ggmarcondes.com/blog)
Hi guys,
As usual, it’s been a long time since the last post. Although I don’t have difficulties talking to people, it is still strangely hard for me to post in english…
But let’s go to the news: the Voice Notes addin is already into tomboy Addins directory at the gnome svn server. Check it out [1] and apply a patch [2] to enable its compilation (it is disabled because is not stable yet).
Some notes about it:
- Present: it is not speech-to-text. At the current state, it’s just a recorder/player that keeps a voice record related to the note. And the main difference since the last post- no popup window.
Just in: The new sidebar editors in F-Spot have landed. Apart from the color tool and some cosmetic changes, it’s mostly finished.
Also: F-Spot now features a histogram in the sidebar.

Sidebar + Histogram
That is all.
PS: F-Spot already had the histogram. It was just very well hidden.

Let me present you the newest version of libsoylent: 0.4.0. Three weeks of hard work went into this release, and in fact so much was added and changed that we decided to skip a version-number. Sorry 0.3.0.
So, what’s in it? More or less a complete people-management-library. Our goal was to create a simple yet-powerful API that “just works”. Hopefully we managed that. If you have no clear picture of what libsoylent is or just want to know more about it, look at the examples we’ve put up on the libsoylent-page.
I’ve been sadly neglecting this blog, and even worse given the current timing, my GSoC project - next week is the ‘pencil’s down’ date, and I’ve decided to re-write everything in C. However, I’ve got a good excuse: last week I gave a presentation at the North American Congress On Biomechanics (NACOB) in Ann Arbor. It was pretty nerve-wracking, my second conference presentation (and much more intimidating than the little Ontario-grad-students-only OBC), but I think it went well. I also got to see some other interesting presentations and meet some fun people, so all in all it was a great trip. Oh yeah, and I also saw Rod Stewart at the DTE Energy Music Theatre. It was pretty funny to be amongst 15 000 drunken screaming middle-aged soccer moms.
I recently upgraded to Wordpress v2.6. After a quick check, everything seemed to work fine. However a few minutes ago a reader of this blog told me that he encountered some problems: The overview would work, but everything else like reading certain posts, commenting or using the RSS feed produces a “404 - not found” error. I quickly found out that the blog was experiencing bug #7306. The suggested workaround, filling the category and tag fields under wp-admin -> Settings -> Permalink, worked instantly and now everything should be up and running again. Let’s hope Wordpress v2.6.1 will be released soon to fix the problem without the need for workarounds.
What happened since the last release? It has been a productive week for libsoylent.
Attributes are implemented. That means adding and removing attributes to / from people as well as modifying them works. With that come attribute-handlers. That’s basically a system which provides a way to convert runtime-types to libsoylent-system-types, so you can use arbitrary types like C-structs as attributes (for more information on that see the libsoylent API-draft). Furthermore storing and loading people (and attributes) works. Also the SVN trunk now contains some documentation and a bit of example-code.
When it comes to performance, F-Spot hasn’t always been the best of it’s class. Part of my Summer of Code time has been spent on improving that. While reworking the editors (which will land soon), I ran into trouble spots, which I’ve started fixing. My mentor improved in these.
To show the difference, I’ve made a small unscientific benchmark. Below are the times needed to add 2 tags to a set of 1000 photos. During this amount of time, the user interface freezes.

Adding 2 tags to 1000 photos
Observe how the whole UI freezes for over 20 seconds in the currently released version. In SVN, you hardly notice it happening! This is a 44.5 times speedup!
Almost two weeks after the midterm evaluation, and I finally have a mostly functional predictive playback plugin. It can be downloaded from here, and the installation instructions can be found here.
In the Mood is likely full of weird bugs, inconsistencies, and incomprehensible programming decisions. There are a variety of things I would like to do to it, including possibly re-writing the whole thing in C++ to avoid the Python subprocess.Popen stuff. If you have any suggestions of features I should add, or suggestions on how I can do something better, or please let me know. The one thing I cannot do, unfortunately, is reduce the amount of time the processing requires… sorry.