Yay for regular blogging – last post was four months ago and that was from matthias who guessed my password :) – now I've found that spending a week with motivated and enthusiastic KDE hackers does wonders for my own motivation, so here we go:
In the last week I attended Akademy, the annual KDE community event – including the KDE developers community conference, an embedded development day and several days of BOF sessions. I was of course there with my Nepomuk hat on – in fact, with it pulled as far over my head as impossible, trying hard to hide the fact that given the choice I program in python not C++ and I use Gnome not KDE.
The event took place in Mechelen, Belgium – or actually in Sint-Katelijne-Waver, a 3-minute train-ride from Mechelen. The organization was excellent, Wifi never went down as far as I know (take that ESWC). The first two days were the developer conference, i.e. your standard fair of parallel tracks of talks. Interesting was Frank Karlitschek's initial keynote about the KDE websites (he runs kde-looks, kde-files, kde-apps, etc.), he pointed out that one of the main strengths of KDE is the community and we should bring this from the websites to the desktop. He imagined starting with things like showing KDE users in your neighbourhood in a Plasma-applet as a start and moving up to more collaborative features, like writing on the same document, etc. I was going to bring up Nepomuk an ideal for providing data-representation for such a venture, but someone else in the audience beat me to it – instead I quizzed Frank on the use of open standards for this later. He knew OpenSocial, but was not impressed, and had already made his own REST-based API, but confessed that he should look more on DataPortability for representing data (FOAF FOAF FOAF :)
On Sunday Laura did an excellent job with the Nepomuk presentation (she sat up all night to finish it :) and we had several interesting questions afterwards – which we discussed further in the BoF session on Wednesday. The issues popping up were, in order:
- Indexing Performance (i.e. why does nepomuk take 100% of my cpu forcing me to turn it off?) when indexing lots of files, Redland is horribly slow, it is slightly better with Sesame.
- Packaging – depending on Java to get Sesame is problematic – but (some guy?) said it should be possible to use Sesame with OpenJDK and he even tried it during the BoF session and said it worked fine. That leaves just to political problem of putting Java in the core of KDE.
- Merging data – given a PIMO person with corresponding crawled/akonadi'ed address-book entry, facebook profile, twitter profile, etc. How can we combine the different parts of that person into one consistent view? In Java-Nepomuk this is the area of the LocalDataAlignment component — where the mapping required is coded explicitly in Java. Solving this problem generally is very tricky — but half-decent application specific things can be done with SPARQL construct queries.
The rest of the week include the free gifts of N810s to all Nepomuk developers (and me :) – thanks Nokia! – chatting more with Akonadi people about identity on the desktop vs. the web, a trip to Brussels, a boat-trip and a lots of Belgian beer :)
On the boat-trip I also learned that the kdebindings project not only has python, ruby, C#, etc. bindings for nepomuk and soprano, but also that it includes code to map soprano to ActiveRDF! Time permitting I will shortly try to mirror this with a rdflib Graph interface implementation on top of Soprano.