World Of GNOME has interviewed me again, this time about Skeltrack, my role at Red Hat and Open Source at CERN.
If you would like to know more about those (there is even an animal shelter in the mix), check it out here.
The first release of Skeltrack in 2013 is out!
This is also the first version I release without being associated with Igalia but the company agreed that I keep maintaining the project. That’s one of the good aspects of working in Free Software as your daily job: you can continue working on them even if you’re no longer in the company where it was first developed.
This new version is not bloated with new features so “why such a wait?” you might ask. Well, the reason is that there have been a few changes in my life since last year and, more importantly, after I left Igalia, I didn’t have a Kinect and thus, working on Skeltrack was a bit difficult… But finally a few weeks ago I bought one so now I am able to keep hacking.
The greatest thing in this release is a big improvement in the performance of Skeltrack when tracking joints. You see, when I originally developed it, I was more concerned with getting it to actually track the skeleton joints than doing it quickly
Luckily, Iago López (kudos to him) did a neat work in fixing some misuses of GList but more importantly, re-implementing Dijkstra using a priority queue. If you remember your algorithms courses well, with this change you can make Dijkstra go from quadratic to linearithmic time and that’s a BIG improvement.
Here is the difference between the old code and the new expressed in a plot:
The values used to generate the plot were the time it took skeltrack_skeleton_track_joints_sync to execute. For each of the versions, this function was called 25 times for each of the 550 depth frames and the final values in the plot are the arithmetic average of the results per frame. They were executed in my i5 2.40 GHz laptop without any applications or the desktop running (besides system’s services).
As you can see, there’s a great difference between the speed of the old code and the new. I can’t wait to try Skeltrack on weaker hardware now
(BTW, why 0.1.14 and not 0.1.12? Because of the “release curse” which made me aware of a simple but important bug fix right after pushing 0.1.12…)
Besides some small bug fixing in the library, the Skeltrack Kinect example was ported to Clutter 1.12 to keep up with the work done upstream.
Another new thing is that now Skeltrack has a webpage. I recently found out about GitHub’s automatically generated web pages and I thought this would be better than having people visit GitHub’s repo page so there you go: http://joaquimrocha.github.io/Skeltrack/
The page is a bit ugly and minimalist but we’ll improve it.
Just like last year, here I am looking in retrospect to what happened this year but I have to be brief because Helena and I are spending the night with my parents.
Last year I said 2012 would be a year of change but, depending on the perspective, it really wasn’t. In 2013, however, many things will change for sure but I will let you know about that soon. Meanwhile, here is a bit of what happened in my life during this year.
The big trip this year was a very special one — Japan — which I won’t repeat how great it was. We also revisited London and I traveled to other places due to work (even though this year’s GUADEC was in the city I live in).
Last year, I set up a reading challenge at Goodreads for 15 books; 5 more than in 2011. Sadly, I read only a third of those… 5 books in 2012. However, I need to say that in the list there is Crytonomicon, a book I took great pleasure in reading, but which has almost 1000 pages; besides that, the list does not include a few technical books I read.
In 2012, my 4th year in Igalia, I was part of a new team — the Interactivity team. The most important part of my work was definitely the development of Skeltrack: the world’s first Open Source skeleton tracking library.
Skeltrack, together with other libraries like GFreenect was the basis for many of the projects we developed throughout the year.
5 versions of Skeltrack were released since its release, it won an award and in last November it powered a completely Open Source interactive installation in Berlin.
Have a great 2013!
Since the post about the Salutations Interactive Installation in the Museum für Kommunikation in Berlin, many people asked me for videos of the installation so we, the Igalia Interactivity team, came up with a better idea — a making of.
The video shows the an early test application that was created from the one shipped with Skeltrack, then some testing with colleagues at Igalia’s office and finally the installation in Berlin and the final result:
(link to original video in YouTube)
You can get the source code for the application from Igalia’s GitHub.
From its own website, KNetworks “[...] is an open network based in the Atlantic area with main interest in the fields of: e-government, innovation, knowledge transfer, technology, the Internet, collective intelligence, the future and the creation of knowledge.”
Members of KNetworks include several universities and government organizations of the European countries in the Atlantic area.
Being the first Open Source library for skeleton tracking, there are a number of possibilities that Skeltrack makes possible and we developed it in Igalia simply because we wanted to use skeleton tracking and there were no open solutions available. So I am very happy with the recognition, in this case a joint 3rd place.
Since there was a ceremony in Oxford for the delivery of the awards, I bought a shirt in Berlin and flew to London instead of Coruña. I presented Skeltrack and also mentioned Igalia and the cool things that make us different.
At the ceremony, I also had the chance to meet the other contest winners and members of the organization. It was an interesting dinner where I spoke English, Spanish and Portuguese
After that we ended up in the Turf Tavern — the oldest pub of Oxford — where I discovered that I completely dislike ale.
I had never been to Oxford before so I stayed an extra night to visit the city. What a nice city it is! It is kind of similar to Évora, where I studied, in the way that it has many university buildings spread across the city but of course, at a different scale.
On my way back to Heathrow, more awesome stuff: I found out that the old man sitting close to me in the bus was in fact Donald Knuth! I presented myself, chitchatted a bit and, feeling like a little boy who met Spiderman, thanked him for everything.
I would like to thank the organization of the KNetworks contest for the award and congratulate the other contest winners.