I spent last weekend in Beijing attending GNOME Asia 2014; yeah, long trip from Europe just for 3 days, but it was totally worth it. The worst part of it was of course fighting jet lag when I arrived, and fighting it again 3 days later when I came back to Spain 🙂 The conference was really well organized , so kudos to all the local team!
After a quick sleep on Friday morning, I attended the development and documentation training sessions that Kat, André and Dave gave. They were quite interesting, especially since I’m not involved in the real user documentation that GNOME provides. I have to say that these guys do an amazing job, not only teaching during conferences, but also through the whole year.
There are, from my point of view, two main ways of learning new things:
- The ‘engineer’ way: Learning things as you need them, what you would do when you start writing an application and looking for examples of how to do what you want to do (autotools, anyone?). It is a very ‘engineer’ way, as you pick black boxes that you’ll use to build something bigger, while not fully understanding what the black box does inside.
- The ‘scientific’ way: When you learn something in order to fully understand it and be able to teach others. This approach takes a lot longer, as you need to make sure that everything you learn is accurate and you end up questioning the things that are not clear enough. Learning stuff to teach others is actually what you do in University; you’re learning things that will afterwards need to be explained in an exam to someone who knows more about the subject than you do.
Sure, both ways have their ups and downs, but if you want to write software you need to be able to switch between those two mindsets constantly. You’ll use the engineer way when reading API docs, looking for the bits and pieces that you need to build your stuff. You’ll use the ‘scientific’ way when you need to start learning a new technology, or when you need more detail on how to do things. While the API docs are taken care of by the library developers, it is the documentation team the one making sure that user guides, tutorials, and other developer resources are kept up to date, which are definitely some of the toughest and most important tasks done to help newcomers and other developers. So go on, go learn GNOME technologies and teach others, join the documentation team! 😉
GNOME Asia is not a usual conference. If you have attended a Desktop Summit, GUADEC or FOSDEM before, all those conferences are built by developers and for developers. The focus of those conferences is usually not (explicitly) to attract newcomers, but instead to be a show of the latest and shiniest things happening in the projects. Of course we also had part of that in Beijing, say Lennart’s talk about the status of systemd or Allan’s talk about application bundles. Those both were very good talks, but likely too specific for most of the audience. Instead, I chose to talk about something more basic, focused on attracting newcomers wanting to write applications, and so I gave an Introduction to D-Bus talk, including some examples. It is the same talk I gave last year in GUADEC-ES, but in English this time (my Mandarin is not good enough).
I would like to thank the GNOME Foundation for sponsoring the flight to Beijing, and of course to all the local team who, as I already said, did an amazing job.
 …except for the tea-less tea-breaks 😉
SQLite and DBus
I’ve been lately packaging the latest releases of several programs for Ubuntu Lucid (or Trisquel Taranis), mainly due to our bleeding-edge requirements in Tracker. You can find them in my personal PPAs in Launchpad:
- SQLite 3.7.1 (enabling Write-Ahead logging):
- dbus 1.3.1 (enabling file descriptor passing):
The real packaging work was done by the Debian guys, of course (kudos to them!); I just prepared the necessary bits to make them get compiled as Ubuntu packages.
In addition to this, during the last GNU Hackers Meeting in The Hague, I also changed the Ubuntu packaging of GNU Psychosynth, the most entertaining music synthesizer I’ve ever played with. The latest packages are now available in the GNU Psychosynth Team’s PPA, and right now only Ubuntu versions >= Lucid will be supported (as they no longer require Andrew Fenn’s Ogre Development PPA).
More information in: http://www.psychosynth.com/index.php/Ubuntu_Repository
Oh, and Juan Pedro was able to do another demonstration of GNU Psychosynth during the meeting, which got recorded, so that you can understand what this great program does… watch it and enjoy!