Planet Collabora

July 03, 2008

Pierre-Luc Beaudoin

Having some Python+clutter fun

Now that I have a nice camera, I should display my pictures on my computer’s screensaver.  But I am unsatisfied with the current selection of photo screensaver.   So I though, there’s the Apple TV’s screensaver which is quite cool and allow a lot of pictures to be displayed at the same time, I should try to reproduice it.

Clutter came as a natural choice since I had already played with it back in the 0.2 days.  But I though that writing C was too much hassle for such project: I went with Python.

I did hard more difficulty find documentation on how to get started at first.  After only some hours, I have a working copy that provides reasonable performance and looks.  I don’t wish to recreate the whole scene rotation thing, but I am looking for help on improving it (add flickr support, better performance, turning it into an actual screensaver)!

So here is the code, GPLed: http://git.collabora.co.uk/?p=user/pierlux/savr.git;a=summary

Have fun!  You can also come and see me to talk about it at GUADEC 2008, I will be there (I am actually already in Istanbul)!

by Pierre-Luc Beaudoin at July 03, 2008 08:42 PM

Marco Barisione

Istanbul, I’m arriving!

I’m blogging from my n810[1] while having breakfast, in a hour I will be on a train to Heathrow, destination: Istanbul. See you all at GUADEC!

[1] Having a real keyboard is fantastic, but how do I insert the angular brackets?

by barisione at July 03, 2008 04:15 AM

July 01, 2008

Christian Schaller

Making better packages with Mach

I was convinced by Zeeshan to help out with making official Fedora RPMS of the gupnp libraries and tools. After looking at the Fedora packaging guidelines I concluded that the only sane way of doing it without to much pain and work was to use Mach which is an tool Thomas Vander Stichele created to allow you to easily set up clean buildroots for any RPM based system. Not having used Mach in a long while I was reminded when setting it up how nicely done it is and what a powerful tool it can be. I has already helped me find quite a few bugs in the spec files I had created for upnp and friends and I am sure that when I submit these spec files to Fedora, the process of getting them approved will be much more straightforward and painless than if I had just made them by fumbling around in my normal install. So I strongly recommend to anyone who needs to build RPMS to check out Mach and afterward say thanks to Thomas for creating it. Thanks Thomas!

by uraeus at July 01, 2008 04:17 PM

June 30, 2008

Marco Barisione

Music back on my hard disk

After my desktop computer died over a year ago I have had no space for mp3s on my hard disk, so I only used the music on my mp3 reader.

A week ago I was able to free some gigabytes of disk space and finally I put my music back on my computer. The first problem I faced was choosing a music player, after some testing the only two competitors were Banshee and Rhythmbox. In the end I chose Banshee, but I have to say that this was a completely subjective choice as both programs are nice and have almost all the features I wanted.

Then I decided to cleanup a bit my mp3s removing duplicates. This is a “once in your life” task, so I didn’t want to spend hours finding a suitable program, understanding how it works and tweaking it: I just needed something that worked without too much hassle.

The first program I found was DupeMusicMatch, you just have to run it passing on the command line the directories where your mp3 or ogg files are and "-r" for a recursive search. DupeMusicMatch just works, it seems to finds some false positives but it seems also able to find duplicates if the file names differ a lot. Thanks Todd Korody for your easy to use program!

by barisione at June 30, 2008 10:44 PM

Christian Schaller

One year anniversary

So on Saturday Wim, Edward, Tim and myself had the one year anniversary of leaving our old jobs in Barcelona and embarking on the journey that has lead us to where we are today working with Collabora. Thinking back it feels strange to see how things has come together over the course of this year. At the point of leaving we only had a vague idea about what we wanted to do going forward, as the decision to leave came about more as a result of deciding that staying was not an option, more than having a clear vision of wanting to do something different.

The deciding factor I guess was getting a message from Robert and Philippe on the day of announcing that we where leaving saying ‘ don’t do anything before we have talked together’, with Rob and Philippe arriving in Barcelona a few days later. After discussing back and forth what we and they wanted to do for a while, we finally arrived a basic agreement during GUADEC in Birmingham. A couple of Months later we where up and running and here we are today, with Collabora Multimedia being a quickly growing part of the Collabora family. Its been an incredible experience so far and we had a lot of fun. And having moved to Cambridge I have even expanded my vocabulary with terms such as ‘utter loss’,'bonghits’, ‘Oxford stinks’,'punting’ and ‘chavs’ :). So I want to thank Rob, Philippe, Wim, Edward and Tim for making this such an incredible time and I am really looking forward to getting the whole team together in GUADEC in Istanbul next week.

And on that note I would also like to welcome a new member to the Collabora Multimedia family; Mark Nauwelaerts who starts tomorrow. I don’t think to many people outside the GStreamer community knows Mark, but he has contributed quite a few great patches to GStreamer. In fact when asking Tim, who outside the current team contributed the best patches to GStreamer, he listed Mark on top of the list being someone whose patches tended to tackle the most technically challenging issues.

So once again a big welcome to Collabora Multimedia Mark, we are really happy to have you on board!

by uraeus at June 30, 2008 01:19 PM

June 29, 2008

Travis Reitter

Soylent 0.1.8 - Tastes better than the original

What's better than a fresh release of Soylent? Two fresh releases of Soylent!



Soylent 0.1.8 - Tastes better than the original



This release is just a quick bug-fix that should make Soylent run better out-of-the-box.



Changes

  • Fix the installation path of the glade file (Florian)


Contributing/Contact



For any bug reports, questions, comments, feature proposals, etc., head

to the Soylent development mailing list: Soylent development mailing list



Release Tarball



http://netdrain.com/soylent/soylent-0.1.8.tar.gz

md5sum: 606792c4a090906f5249f08a39d3bf09

June 29, 2008 07:17 PM

Soylent 0.1.6 - Ready and rarin' ta go!

It's time again for a new release of Soylent!



Soylent 0.1.6 screenshot



Soylent 0.1.6 - Ready and rarin' ta go!



This release brings a lot of little improvements, most notably contact editor bug fixes, a few UI clean-ups, and a fantastic logo by Hylke Bons!



Soylent 0.1.6 screenshot



Perhaps most importantly, this release hints at a big push in the near future: libsoylent, which we plan to be a simple-yet-powerful way to integrate easy people-based interaction into your desktop application. The code in the 0.1.6 tarball is mostly stubs, and the API is far from finalized, but look forward to early previews in the following releases.



I'll be giving a talk on Soylent: Past, Present, and Future in a couple of weeks at GUADEC in Istanbul, Turkey. If you're going to be at GUADEC, make sure not to miss it!



Changes

  • Added a Project logo (Hylke Bons)

  • UI clean-ups:

    • Add a regular menubar

    • Move editing options from button bar to Edit menu to save space

    • Add presence-setting menu
  • Install a proper .desktop file, so Soylent shows up in the Applications menu

  • Clean up autotools config (Gilles Dartiguelongue)

  • Squash lingering Person Editor bugs

  • Code clean-ups in anticipation for libsoylent

  • Initial libsoylent stubs (Sven Pfaller)


Warning



Soylent is still a work-in-progress. Though I don't think it has any serious data-mangling/deleting bugs, you should assume it does. Back up ~/.evolution before you install this release.



There's also a laundry list of Known Bugs (see the README).



Contributing/Contact



For any bug reports, questions, comments, feature proposals, etc., head

to the Soylent development mailing list: Soylent development mailing list



Release Tarball



http://netdrain.com/soylent/soylent-0.1.6.tar.gz

md5sum: e8f262f3edbf7ae53e5c522703c88f80

June 29, 2008 07:05 AM

June 27, 2008

Jonathon Jongsma

webkitmm

As a quick follow-on to my last post, I’ve put a webkitmm git repository up for those that might want to play around with it. It’s certainly still early, but it is mostly complete. You’ll probably need a recent checkout WebKit/Gtk+, I’ve only tested it on trunk. At some point, I’ll probably import it into GNOME subversion, though I really don’t look forward to that.

There is a very simple browser example in the source tree as well:

webkitmm

by jonner at June 27, 2008 11:12 PM

Travis Reitter

A clear DVCS winner for Gnome

James,



I think you may be right that we may not switch to a single DVCS any time soon, but I don't think it's for lack of a clear winner.



The majority of Gnome developers pushing for DVCS seem to favor git (with bazaar at a distant second). Major open source projects (many related to Gnome) have already adopted git (most freedesktop.org projects, X.org, Linux, Ruby on Rails, OLPC), so there's plenty of experience both using git for large projects and migrating from another VCS.



At any rate, I think there are few people who disagree that DVCS of some kind could improve Gnome development (most interestingly, I think, is the possibility for changes that don't fit nicely into a few commits or a single release cycle).



I'm not claiming that I fully understand all sides of the argument (git is the only DVCS I've used), but the only arguments against git that seem valid are cross-platform issues (which seem to be less significant than they used to be) and migration issues (which we would have moving to any new VCS, and as Federico suggested, shouldn't necessarily be that bad).





I wish it were as simple as just providing mirrors or translation services to let developers use any VCS they like, but any translation between VCSes is going to be imperfect. So using x-to-Subversion really isn't ideal - especially when you're going from a DVCS to Subversion, flattening branches and commits and losing original author attribution in the process.



I know I'm not alone in saying that a migration to git would be a major step forward for Gnome and one that few contributors would regret.



Update 1: link to cgit.fd.o, as suggested by Daniel

June 27, 2008 02:52 PM

June 24, 2008

Jonathon Jongsma

Pools, Toy Dogs, Turkey, and WebKit

Summer is coming on full force.  R has discovered a new obsession, this time with the pool.  This goes along with her existing obsessions with fish, ducks, and geese.  I’m noticing a pattern here.  She also enjoys non-aquatic things, particularly books — mostly books about animals.  J got an old picture book about Dogs from a garage sale down the block recently.  It’s obviously from another time, as it contains the following hilariously inappropriate line:

Toy DogsThe Toy Dogs today are bred solely as pets. They have no other purpose in life except to give pleasure, especially to ladies.

Also, I’ll be attending GUADEC for the first time this year, and I’m looking forward to a good time in Istanbul and finally meeting a lot of people in person that I’ve known online for a while.

WebKit work is going quite well. I’ve mostly been focusing on bug fixing so far, though I’ve added some new features as well (CSS text shadows are now supported in the Qt port, for instance). Overall I’ve been really impressed with how clean and well-organized WebKit is for such a large and complex project. I’ve also started playing around with ‘webkitmm’ in my spare time as well. Nothing much to show at the moment, I’m afraid, but I don’t expect it to take too much effort before it’s relatively usable.

by jonner at June 24, 2008 08:08 PM

June 20, 2008

Christian Schaller

Filling the world with Empathy goodness

After a lot of testing and working with the Fedora packagers I am now happy to say that the current version of Empathy in Fedora is ready for wider use. Just be sure to install the telepathy-haze-mission-control and telepathy-haze packages in addition to Empathy to get access to all the major chat protocols. With these packages I have been able to retire Pidgin from use on my system and take the bold step into the future of instant messaging. The VoIP and video conferencing also works, although due to needing a newer version of gstreamer speex support than currently shipping (will be in the next release of ‘gst-plugins-good’) you might get ‘Darth Vader’ voice when speaking.

There is still a little polish and love that Empathy needs, like supporting file transfer with the various protocols, but I think that for many Fedora users it should already support enough features to be ready for primetime. And you get to taste the new world of easy to use VoIP over Jabber/Google Talk :) So do a quick ‘yum install empathy elepathy-haze-mission-control telepathy-haze’ and you are set to go!

by uraeus at June 20, 2008 03:47 PM

June 18, 2008

Travis Reitter

libsoylent API draft available!

Sven just posted the draft for the libsoylent API (the soon-to-be-rockin' "People library").



Basic design goals

  • People cohesion!:

    • Consuming applications won't have to manually associate peoples' accounts on various protocols (which is actually a lot tougher than it sounds)


  • Make it trivial to:

    • Read and (where applicable) write contacts' attributes

    • Start a synchronous or asynchronous communication channel with any contact


  • Base around libebook's EVCard:

    • Gets us vCard's flexible support for arbitrary key/value pairs

    • Brings the benefits of vCard's wide adoption in software in general

    • Shares the standard Gnome addressbook with Evolution and the rest of the desktop


  • Simplicity:

    • Should be easier to use than EVCard directly yet avoid EContact's inflexibility

    • Leverage Telepathy's power while limiting its exposure to the libsoylent-consuming app


We'd really appreciate any and all constructive feedback (preferably on the mailing list, but comments in either of our blogs are, of course, welcome).



If you work on an app that could be enhanced with simple, powerful access to people and their metadata, I've got some questions for you:

  • Is the API missing anything that you would expect you'd need (convenience functions included)

  • Do you see any fundamental design flaws?

  • Does some function just plain look weird? Let us know! :)

June 18, 2008 11:52 PM

June 17, 2008

Pierre-Luc Beaudoin

Is it the end of Ogg Vorbis streams at Radio-Canada?

Update: They were rather quick to get the streams back on! Now that they are up, let’s make them known.

Update 2 : Apparently, I’m being told that it was possibly a real technical problem.  I might have jumped to conclusions considering that I’ve never been able to access their Audio/video section on Linux.

For many years, Radio-Canada (Canada’s BBC in French), was streaming 2 of their radio stations in Ogg Vorbis.  Some 2 months ago, I discovered that the Espace Musique stream had been stopped but I didn’t bother to call then since I barely listened to it.  But today, they shut down the Première chaîne stream, which leaves me without any local news.  That’s enough.

They even erased the page mentioning that such streams ever existed: Radio-Canada.ca.  I’ve already sent a “technical error report” on their web site.  You may do so too here Rapport d’incident technique (only in French).  Here is what you should submit (in French too, since they only broadcast in French, copy/paste will do):

J’étais sur la page: http://ms2.radio-canada.ca/

Je voulais: Écouter vos flux Ogg Vorbis sous Linux.

Il s’est produit ceci: Vous avez interrompus vos flux.  Je ne peux donc plus écouter Radio-Canada sans briser des lois (c’est à dire installer illégalement les codecs WMA sur mon ordinateur pour écouter vos flux WMA).

Nom: <Your name>

Courrier électronique: <Your email>

I’ve also wrote an email to the team responsible for the web site as I’ve been suggested by the person who helped me when I called them.  Their Audio/vidéo section is heavily not Linux friendly, let’s not let it slip anymore!

by Pierre-Luc Beaudoin at June 17, 2008 02:21 PM

June 12, 2008

Pierre-Luc Beaudoin

The cost of a bug fix

Every fix doesn’t call for a blog post, but this one deserves it.  It all started when Jonathon Jongsma found a way to make text disappear in QtWebKit on May 27th.  So he raised a bug.  He and I started working on fixing it.  We rapidly found that WebKitGtk was also affected, but it was unreproducible on the Mac port.

We dove into the code: “grep selection”, GraphicsContext::drawText(), Font::drawText()… but nothing was really different (there) in the Qt or Gtk port which could explain why the text wasn’t being redrawn when changing the selection.

That’s when I discovered git bisect.  Since we had established that the bug wasn’t there when QtWebKit was snapshot for Qt 4.4.0, I had a good place to start.  So after recompiling QtWebKit some 15 times (yes, it took around 3 work days!), it pointed me to this changeset.  Lucky for us, it was related to the bug (text rendering).

After some digging into the patch, I contacted the author, Dan Bernstein at Apple, and we looked at it together.  In little time, he was able to find how to reproduce it on the Mac too.  This was now a WebKit wide bug!  Some back traces later and some trials: we came up with this fix. Pretty simple, isn’t it?  barely 16 chars.  Yet, these 16 chars cost around 1200$* in direct labour time and 3 engineers were involved.

Some will say this could have been prevented with proper tests.  It happens that it was a special case on the Mac, but all other ports always went through it.  Dan now added a pixel test.

The morals of the story are:

  • bug fixing is costly (haven’t we heard that in school?)
  • you never know when someone will hunt you back about your patch
  • git is a cool beast (in fact, it just convinced me to use it)

One question lasts: how come it took over a month and a half before someone found it? :)

* This number is based on market mean hourly rate since exact rates are unknown

Side note on the WebKit party

It was really cool to get to San Francisco and finally meet IRL other WebKit devs.   Kudos for the event!

by Pierre-Luc Beaudoin at June 12, 2008 07:41 PM

June 10, 2008

Christian Schaller

Let it Rip, Let it Rip, Let it Rip

We take some pride in the GStreamer community about our policy of keeping a tidy ship when it comes to licensing. Even though we did most of the sorting based on common sense, mixed with a bit of hobbyist lawyering and a conservative reading of the GPL it looks like we have succeeded. Tons of organisations are now shipping GStreamer core, base and good with their products and often combine them with their own plugins and packages.

Yet, we recently realized that we had let something slip through the cracks, in the sense that both the cd ripping libraries we supported, cdparanoia and libcdio, where under the GPL. According to our policy that means those plugins should be in gst-plugins-ugly and not in base or good where they currently reside. Just moving them was seen as rather painful though as it would have left many linux distributions in a difficult situation, with applications like Sound Juicer depending on one of those plugins being available to work properly.

Luckily a quick talk to Monty Montgomery, creator of cdparanoia and Vorbis, resolved the issue. As of yesterday there is a new version of cdparanoia available which is LGPL instead of GPL. A big thanks to Monty for this. We will update GStreamer so that the next version of gst-plugins-base requires this new version and correctly reports it as LGPL through gst-inspect. As for libcdio we will move that over to gst-plugins-ugly as that library is still GPL.

So if you are a distribution maker grab cdparanoia 0.10 to decrease the amount of license checking you need to do :)

Update: Seems MikeS spotted something that I failed to notice. Monty choose the LGPLv3 for libcdparanoia which means the situation is a little different, as it would mean the plugin is not compatible with GPLv2-only applications. Luckily most GStreamer apps are GPLv2 or Higher or more liberally licensed. A lot of them also have a special clause allowing non-GPL compatible GStreamer plugins. Guess this proves that those exception clauses are now also valuable even if you are not targetting non-free plugins.

by uraeus at June 10, 2008 04:36 PM

June 09, 2008

Christian Schaller

New times, new paradigms

It has been with interest that I have been seeing my friend Andy Wingo and then Alex Graveley commenting on the state of the desktop.

It is somewhat of a debate which has been had in the GNOME community for the last 3-4 years at least. The problem is that nobody is really able to come up with a compelling idea for this ‘revolutionary UI’ that people seem to want. And its not like we are alone in this situation. Nobody else is really able to come up with something earth shattering either, so while KDE4 and Windows Vista both have been blowing their trumpets like crazy lately, its not like you find anything apart from incremental refinements of already known concepts when you dissect them.

And it is not like nobody has tried to come up with new stuff. Alex Graveley has been pushing his own ideas on and off, and the online desktop is another effort who sees itself as redefining the GNOME desktop. Yet, despite Alex’s disappointment in a lack of interest, my contention is that while there are some improvements in the ideas put forward, neither Alex or the Online Desktop has so far been able to put forward a narrative which has gotten people truly sold. And expectation of great interest or unbridled enthusiasm when one hasn’t been sold on the idea is a bit much in my opinion. I think I have walked out after both Alex and Havocs talks at recent GUADECS thinking; looks interesting and I will keep my ears open to news about it, but I am not convinced this will make me rethink how I want to interact and work with my desktop.

Yet we have entered, or been in, a phase where everyone wants a new paradigm for the desktop, even if nobody can agree on what it should do or at least what it should be. So instead we pull in buzzwords of the day like web integration and online presence. Which are all concepts loose enough to be able to mean nothing and everything. In fact the whole web/desktop integration idea isn’t even very new even in the context of GNOME. I assume I am not the only one who remembers IBM’s SashXB effort many years ago, which would change the world through GNOME and Mozilla  ‘weblications’.

So maybe all the ’small’ fixes we focus on these days are not enough to revolutionize the world of desktop computing and change market share numbers so quickly that Microsoft crumbles under our onslaught. But I don’t think such an innovation is possible, or rather if it comes along it will be so different from what we are doing today that it will not really be considered a direct continuation of the PC desktop. However I do think that we are on the right track and that while the incremental improvements we push out in every new release might not feel like something that change the computer interaction landscape, they do add up to creating a stronger and stronger argument for the linux distributors to get traction with major corporations for being open to looking at a Linux desktop migration. And to pull it down to the microlevel, for me personally the fact that I am now for instance able to pair a phone over bluetooth with my desktop and transfer files by drag and drop from it is actually a huge step forward to where we was just a year ago. Or that I am now able to plug and play a SD card into my laptop without obscure mount commands. Sure its not revolutionary, but it is the kind of things that makes it easier for me to feel good about trying to get my family to switch over for instance, as I can now know that getting them to do so will not need to mean endless support calls and frustration on both sides.

So to summarize while I can understand that with the core desktop metaphor feeling like it has only slightly evolved since Xerox introduced it can feel a bit dull and that people feel the time is overripe for something new, lets not walk off a cliff while we walk looking up trying to figure out how to travel the stars :)

Jono’s new effort, Severed Fifth

Since I am in the process of discussing people attempting new stuff I thought I should bring up my friend Jono Bacon’s latest effort, Severed Fifth. I think its a neat example of someone deciding that the current paradigms in the field (of Music) are not working and thus is doing a little experiment to try to figure out if there could be another way of doing things. Most of the time such efforts collapse into nothing, but something they do strike gold and show a path forward. Too early of course to tell if Jono will be able to strike gold here, but I do think he deserves kudos for daring to try. Even in the meritocratic free software world I think we have a tendency to focus a bit too much on providing other people with stop energy whenever the opportunity arise. So if you are interested in exploring alternative ways of organising the world of music then be sure to check out Severed Fifth.

by uraeus at June 09, 2008 06:44 PM

Robert McQueen

Xen virtual interfaces with more than one IP

I’ve got a load of boxes running Debian etch with Xen 3.0.3 with routed networking (rather than bridged, so I can do iptables and reverse path filtering etc in dom0). Since upgrading from Xen 2.x many moons ago, I’ve not known how to configure one virtual interface to have more than one IP. In the meantime, I’ve ended up doing nonsense like providing a VM with two interfaces just to give it two IPs. However, this interacts really badly with reverse path filtering unless you do a bunch of source-routing rocket science in the domU to send out through the right vif.

So, I looked at the vif-route script and it seems to support iterating through a space-separated list of IPs, but I was totally unable to find any documentation or mailing list posts explaining how to format the IPs within the formerly-Python key/value Xen domain config file syntax. After a while playing with the parser and various levels of quoting, I found that actually, the correct amount of quoting is none at all, and also uncovered a bug in another script which prevents it from working correctly. In the hope that this might help others using Google and trying to achieve the same as me, here is my recipe for configuring Xen vif devices to have multiple IPs (note that I think this might be specific to Xen 3.0.x, as I believe 3.2.x introduces config files in the S-expression format which is what xenstore uses internally):

  1. Configure your VM using this surprisingly obvious, but somewhat dubious syntax (including a second argument just to prove that yes, it really does work like that):



    vif=['ip=1.2.3.4 5.6.7.8, mac=00:16:3e:01:23:45']



    When parsed into SXP by xm create, this sets the ip value correctly as a space separated list as the scripts expect:



    (device (vif (ip '1.2.3.4 5.6.7.8') (mac 00:16:3e:01:23:45)))

  2. Fix the bug in /etc/xen/scripts/vif-common.sh:



    --- /etc/xen/scripts/vif-common.sh~ 2008-06-09 01:14:23.065065119 +0100

    +++ /etc/xen/scripts/vif-common.sh 2008-06-09 01:11:06.599986274 +0100

    @@ -103,7 +103,7 @@

    if [ "$ip" != "" ]

    then

    local addr

    - for addr in “$ip”

    + for addr in $ip

    do

    frob_iptable -s “$addr”

    done

  3. Set up multi-homed or aliased interfaces as normal in the domU (depending if you’re a ip or an ifconfig kinda guy).
  4. Profit!

by robot101 at June 09, 2008 12:40 AM

June 08, 2008

Travis Reitter

This drain pipe is older than my country

CIMG0420.JPG



Collabora headquarters. Well, that is, the view from HQ.





Last week I visited the main Collabora office in Cambridge, UK. Saturday, we were lucky to get some really nice weather, so we (and half the town, it seemed) went punting on the River Cam.



CIMG0463.JPG



Alban's first attempt at punting ran us into a couple other boaters (Rob's face says it all), but they're pretty sturdy, so no harm done. For the record, my punting mostly looked like a tight zig-zag - more side-to-side than forward.





CIMG0487.JPG



One of the 27 +/- 5 colleges in the University of Cambridge.





CIMG0506.JPG



Don't dare cross under Daf's bridge.





Check out the rest of the set.

June 08, 2008 09:50 PM

June 07, 2008

Will Thompson

Le coming-out du cochon

I find the different onomatopoeias used for the same sound in different languages entertaining, not least for the ensuing hilarity when you mispronounce them as English words. When I was in Paris with two of my housemates in December, we found a postcard which serves as a perfect illustration of why I enjoy mispronunciation. According to the back of the card, it depicts “Le coming-out du cochon”.

Le coming-out du cochon.

In the same shop, we found another card featuring a painting of a startled-looking boy playing his accordion, with a monkey dancing on his shoulder. I can’t decide how best to interpret the monkey’s expression.

Accordion Jimmy and his Jivin’ Monkey

June 07, 2008 12:48 PM

June 05, 2008

Robert McQueen

Surströmming

In the office, Christian has just unwrapped a very carefully packed box containing a bulging tin of Surströmming. Apparently due to the “unique” smell you have to open it outside, and he’s invited people to come to his house to try it. Now, I’m not keen on various types of fish even at the best of times, so add a year or so of fermentation, and I am very, very scared. In unrelated news, some people in the office have decided to take up vegetarianism.

by robot101 at June 05, 2008 11:08 AM

June 04, 2008

Pierre-Luc Beaudoin

When a geek goes for a walk…

With my D40 and my N810 in hand, we went for a walk on the Mount Royal, Montréal’s Central Park. I knew what I wanted to do with my pictures, but I didn’t check how to do it before leaving. I only figured it should be important to synchronise my digital camera and my GPS. I also set Maemo Mapper to track our route.

Six hours and 80 pictures later, I was back home. I used gpscorrelate to put the GPS position in the EXIF information of my pictures. I was surprised, it was quite easy to do since Maemo Mapper produces data in gpx format.

After some search on the Web, I found that I have to activate this before importing my geotagged images into flickr. I put my pictures online with postr and voilà: see the map.

Once that was done, I knew I could do more with the GPS data. I exported it to a CSV file using gpsbabel and imported it into OpenOffice to generate charts. Here is what I got:

Visite au Mont-Royal

by Pierre-Luc Beaudoin at June 04, 2008 01:21 AM

June 03, 2008

Christian Schaller

Ubuntu Disapointment

One thing I ranted about multiple times in my blog over the years is how Linux distributions have failed to provide their content in Ogg format. Especially when the content is targeted at Linux users it suprise me that they do not make sure to have the video available in the format that basically all linux users have support for out of the box. That said both Red Hat and Novell has actually taken this feedback to heart and more often than not they do provide Ogg videos these days (in addition to various other formats).

It saddens me then when I checked out the link in Jono Bacons latest blog entry. Where the Ubuntu MOTU videos seems only to be available in the proprietary Flash format. For a distribution which likes to drape itself so loudly in the colours of community and freedom this is a huge letdown. And while you can view these videos with things like swfdec you still need to have the patent encumbered codecs available through gst-ffmpeg to actually view the videos. Would it be so hard to also offer those videos as a Ogg Theora torrents for instance?

Update: Talked to Jono. Turns out they do plan on making Ogg’s available, but haven’t gotten around to it yet. While I kicked Ubuntu here, it wasn’t really about them specifically, but the fact that even though the tools have gotten quite good and widespread over the last few years in terms of creating Ogg’s the open source or free software community is still rather lackluster in its willingness to try to help push the free formats. Its kinda how I used PNG images on my website even before there was widespread PNG support, cause if my page got just one person (hi mom) to use a PNG supporting browser it was a step forward.

by uraeus at June 03, 2008 11:21 AM

May 31, 2008

Will Thompson

Compsoc Lightning Talks

If you’re not a massive nerd, I was just shown a joke which you might enjoy more than the rest of this post:

What do you call the blood that comes out when teenagers cut themselves?
Emoglobin.

On Thursday, Compsoc had a lightning talk session. Four people spoke:

  • Andrew, the President, spoke about LastGraph (slides);
  • I talked about ikiwiki, which we use behind the scenes for Compsoc’s website;
  • Luke gave a talk about virtual worlds in general and Second Life in particular, and gave a demo;
  • David spoke on “Windows Vs. Linux: Which Is Better?”, featuring a hilarious sketched-and-scanned graph which I would like a copy of.

I’m more impressed with Second Life than I thought I’d be. If only my laptop were speedy enough to run the thing, I’d take a look. (I tried to run it on my i855; the CPU pegged itself then everything died. Hard reset time!) I like the idea of a scripting language where everything is a state machine. It’s a bit of a shame that the only way to get code into or out of Second Life is to copy-paste between the built-in Notepad-alike editor and your proper editor of choice, which presumably does new-fangled things like “version control”. Oh well.

In case you care what I said about ikiwiki, I stuck my slides on the ’tubes. I’ve figured a few things out since the talk, such as how to get post-commit hooks working in Mercurial. Dom has some plans to add branching to Ikiwiki, so that you can make a test instance of the wiki to play with a new plugin just by making a new branch in svn or whatever. I like this idea.

S5 is pretty slick. I’d not used it before. (I didn’t actually use it directly, though: I relied on Pandoc to convert a file written with [Markdown] into an S5 slide show.) Anyway, there’s a lot to be said for having a slide show that you can just fire up in any web browser. (Except Andrew’s Konqueror apparently didn’t understand it. I wonder whether this is S5’s fault or Pandoc’s fault.)

Pandoc is a highly slick piece of software. It converts from any of Markdown, reStructuredText, HTML or LATEχ to Markdown, rst, HTML, LATEχ, man pages, ConTeXt, DocBook, RTF, or S5. It does all kinds of nice things along the way like curlifying quotes, making proper en-dashes, rendering LATEχ expressions as images so you can use it inline in Markdown and have it exported properly as HTML, and so on. It turns out to be a better Markdown processor than markdown itself, and supports extra things like tables, footnotes and so on. It turns out that the output from a practical I finished today was very nearly valid Pandockian table markdown, so I got a well-formatted project report pretty much for free. Oh, and for extra winning, it’s written in Haskell. I like the idea of being able to write man pages and documentation in something other than raw groff or DocBook XML.

I think the lightning talk format worked pretty well for Compsoc; it strikes me as a good way to get people involved. Nice work, committee!

May 31, 2008 01:51 PM

May 30, 2008

Pierre-Luc Beaudoin

C-552 is quite what we need

Have a look at this NDP proposed bill C-552.  It is exactly what we need, right now. In this time of net throttling and censorship, we need law that will make it clear that every company or person’s data is equal on the network.

Ask your MP to support this bill!

by Pierre-Luc Beaudoin at May 30, 2008 03:08 PM

Will Thompson

The near-impossibility of teaching programming to a subset of students

The camel has two humps[pdf] was an interesting read; a bit wooly, but believable. One of my favourite paragraphs, tangential to the paper's findings, concerned IDEs:

Programmers, who on the whole like to point and click, often expect that if you make programming point-and-click, then novices will find it easier. The entire field can be summarised as saying “no, they don’t”.

May 30, 2008 03:00 PM

May 26, 2008

Travis Reitter

Working at Collabora

At the beginning of the month, I started work at Collabora. Already, it's been challenging, intellectually stimulating, and a lot of fun. I'm really happy to finally work full-time at an open source company with a bunch of smart people :)



I'm telecommuting from the bay area, so I haven't made an intercontinental move. Though I have moved out of San Francisco and into an apartment with a couple friends in my home town (Livermore, California). So I'm paying half the rent and have twice the space as I did in SF (not to mention not fighting twice-weekly for parking). Not too bad.



And a couple weeks ago, I got a preview of the hot Livermore summer that I haven't really experienced since high school. It hit 38 degrees °C (100 °F), making my cold-weather co-workers insanely jealous.

May 26, 2008 07:31 AM

May 21, 2008

Christian Schaller

Jokosher fixes inbound

As I mentioned in my blog entry about Sebastian Dröge joining Collabora he would among other things work on some low level GStreamer issues which has held Jokosher back. Thanks to Sebastian working on improving the GStreamer audioconvert and deinterlave elements things are now looking very good for Jokosher, a big thanks to Peteris Krisjanis of the Jokosher community for testing the fixes so quickly for us. I have now even challenged Jono and Stuart about recording a LUGRadio episode using Jokosher as that was in some sense the original reason for Jokosher being created so I feel it would be a good milestone on progress :)

Sebastian still has some work on the interleave element left before he will switch over to focusing on some improvements for Pitivi mostly improving our Matroska and MPEG support.

Personal life

Starting to settle pretty good into Cambridge life I think.  My ongoing golf lessons are starting to pay off and I can now go to the driving range and feel pretty happy at what I do there. Not to claim I am at a useful level yet, but at least some of the basics are starting to fall into place. I also finally got myself moving on starting up a second activity, in addition to the golf,  so I had my second riding lesson this morning.  I am so far enjoying the riding quite a lot, apart from the dorky looking helmet and the new boots giving me blisters. Still working on finding a good timeslot for the riding though, seems the horses do not enjoy an early morning as much as my golf instructor.

The Cambridge Beer Festival is currently underway and yesterday I got to try the cutely named Norwegian Blue. Not named after the country with the fjords as much as after a parrot in a Monty Python clip :)

We are heading back there this evening with Michael Meeks joining us for some further beer sampling, travelling from the distant planet of Newmarket. We tried getting Edward Hervey also to join us, as he is actually in London currently, valiantly helping one of our customers, but even the famous beer festival cheese selection was enough to lure him away from his task :)

Heading up to Norway tomorrow evening for a long weekend in conjunction with my cousins daughters confirmation. I tried to get her to take a valiant stance for atheism instead, but the lure of presents and a big party strangely enough won out :) Its also my mothers birthday early next week and while I normally do not travel up to Norway I felt it was the right thing to do this year considering my mothers recent brain surgery with the (small) stroke that caused.

by uraeus at May 21, 2008 03:38 PM

May 19, 2008

Simon McVittie

Spec-writing On A Plane

(Written on Friday 16th, posted on Monday)

As I write this, I'm on a plane off the coast of the Netherlands, on the way back from a couple of days designing APIs with Rob McQueen and the RTCom people at NRC Helsinki (who we work with on the chat and VoIP functionality for Nokia internet tablets).

We've had a very useful couple of days, mainly designing the next-generation channel requesting and dispatch API for Telepathy (the same APIs I've been doing preparatory work for on the Telepathy mailing list in the last couple of weeks). API sketches for review and comment are either on are on Merge Monkey or on the way there.

Before even reaching Nokia, Rob and I did a lot of design on the plane over to Helsinki, and I took some notes: here they are, by way of a glimpse at how the Telepathy design process works when we don't have a whiteboard[1] :-)

  • Geoloc looks good in principle, needs some more work
    • add more docstrings
    • add a way to ask people for uncached info (RequestLocations)
    • move access control to Co.I.Presence, call it RichPresenceAccessControl?
  • DeliveryReporting looks good, ish
    • improve wording of delivery-echo and rationale
    • when sending a delivery report, add a reason for the status (using Channel_Text_Send_Error?)
  • Uniqueness requirement for (channel, handle_type != 0, handle) is in the way - let's drop it
  • MSN should use "authentic" 1-1 chats, and use Ch.I.UpgradeableToRoom (name tbd) to migrate the underlying switchboard to be a room
  • XMPP should use Ch.I.UpgradeableToRoom too, but the 1-1 channel may also stay open
  • Mutable handle => handle 0 must stay (for requestotron's benefit)
  • bundles ftw
  • renaming: we want SelfHandleChanged in the core
  • TpC* - add ability to subscribe to ifaces ay construct time (blocks Ready) or later
  • Dispatching: when registering a c'handler, specify everything it can handle
  • If a new bundle can be handled in its entirety by the same handler (call it 'the bundle handler'), do it. Otherwise split it up completely (there is no 'bundle handler').
  • If a channel in an existing bundle can be handled by the bundle handler, send it there, else send to the default handler.
  • Group - add SelfHandleChanged, maybe? Also Connection
  • Add HandleOwners: prop a{uu}, HandleOwnersChanged(a{uu}, au)
  • Use TargetHandleType, TargetHandle
  • Stringified initiator handle as a separate property
  • Maybe even a FirstMessage property, although this stretches the definition of "immutable"
  • org.freedesktop.Telepathy.Client interface

Nokia's Mikhail Zabaluev kindly took notes for some further discussion we had with him and Alberto Mardegan about the dispatch API, which he already posted to the mailing list.

We hope this API will make it possible to integrate Telepathy into the desktop better - it should make it a lot easier to share connections between processes in a useful way and hand out incoming channels to the appropriate handlers, which was always a major goal for Telepathy. It should also let us and others implement exciting new notification mechanisms (hi to the people on IRC and the mailing list wanting to patch their media players to integrate with Telepathy! :-)

[1]When we do have a whiteboard, the design process is: "Robot101 scribbles on a whiteboard, smcv writes down <tp:rationale> elements"

May 19, 2008 09:03 AM

Marco Barisione

Icecream

Why I love icecream:

$ (time make) 2>&1 | grep real
real    21m52.649s
$ make clean > /dev/null
$ PATH=/usr/lib/icecc/bin:$PATH
$ (time make) 2>&1 | grep real
real    8m15.954s

Note that about 4 minutes are spent linking the program, not compiling.

And then, while waiting, you can watch the hypnotic icemon showing where your source files are being compiled:

icemon showing icecc in action

by barisione at May 19, 2008 08:00 AM

May 15, 2008

Marco Barisione

Beta version of Flash 10

Today Adobe released a beta version of Flash 10, from the realease notes:

“Ubuntu OS Support — Flash Player 10 now supports Ubuntu, one of the most popular flavors of Linux.”

  1. “Ubuntu OS”? :)
  2. Previous versions of Flash already work on Ubuntu
  3. How can you say that you support a .deb-based distro if you only release a .tar.gz and a .rpm?

The bad news is that it crashes both WebKit GTK and QtWebKit. This is a perfect example of why I don’t like closed source software, it isn’t because of political reasons but because interoperability with it is hard: you don’t have any simple way to understand what it’s wrong and it’s impossible to fix it.

by barisione at May 15, 2008 05:11 PM