Category Archives: Notes

‘Extending the Hildon desktop’ at the Maemo Summit 2009

I’ll be hosting a BoF session on extending Maemo 5’s new desktop at the Maemo Summit 2009 in Amsterdam next weekend. It’ll be held in the 770 room on Sunday at 12:00.

Here are some documentation pointers for Hildon desktop extenders:

In preparation for the event, I’d love to hear from people interested in the Hildon desktop, and specially from people developing home and status menu widgets.

Updated: The final Maemo 5 SDK has been released, I’ve changed the libhildondesktop link to the newest version.

The newest version of Indesxifrable, code name “Ningú no ho entén”, available now!

Dear people making announcements, specially on planets:

Please provide a small description of what the project does or at least a link to the main page. “Text Editor” is easy to understand, but many project names are not. What does PiTiVi do, and why is the Simple Timeline gone? What’s a gbrainy and why is it included in a CD? We really want to know!

Thanks and have a good day 🙂


Next week I’ll be at FOSDEM 2008 in Brussels. This is the first time I’ll be at a big programmer meeting, so I’m pretty excited. I first thought I’d just attend one of the many DevRooms, but seeing how many interesting talks there are, I’ve had to make myself a schedule using Google Calendars. I know I won’t be able to attend everything in there, but I’m unable to choose right now.

Re: Unqualified Reservations: What’s wrong with CS research

Mencius Moldbug’s article What’s wrong with CS research gets it completely right on programming languages:

Choosing the best notation is the entire problem of programming language design, and this problem is neither mathematical nor scientific. A programming language is a user interface for programmers, and if you can reduce UI design to math, science, or any formal process, call Apple, not me.

I have noted before that there has been a lot of research on type systems but very few studies on programming languages usability, and this article provides a good explanation for it.

Although, as a small criticism, he gets dynamic higher-order programming completely wrong.

Research on learning to program

The camel has two humps (working title) is a very interesting paper that describes a test which supposedly can tell who will be good at programming and who won’t:
From author Saeed Dehnadi’s page:

We (Saeed Dehnadi, Richard Bornat) have discovered a test which divides programming sheep from non-programming goats. This test predicts ability to program with very high accuracy before the subjects have ever seen a program or a programming language.

Also interesting from the paper:

From experience it appears that there are three major semantic hurdles which trip up novice imperative programmers. In order they are:

  • assignment and sequence
  • recursion / iteration;
  • concurrency.

My own experience seems to confirm this path, I know many programmers who, like me, have problems with concurrency. But I’m not sure if it’s because it’s inherently more difficult or because of the way most languages describe it (shared state).
Via Lambda the Ultimate