Less than two weeks to go until Akademy 2019! Quite excited to go there again, for the 16th time in a row now. Until then there’s quite a few things I still need to finish.

I'm going to Akademy 2019


I got three talks accepted this time, which is very nice of course, but it also implies quite some preparation work. The topics are rather diverse, all three cover aspects I ended up looking into for various reasons during the past year, and where learned interesting or surprising things that seemed worthwhile to share.

Secure HTTP Usage - How hard can it be?

Day 1, 15:00 in U4-01, details.

This is the hardest one of the three talks to prepare, as I’m least familiar with the full depth of that subject. I did look into this topic during the past year as part of the KDE Privacy Goal, and I wasn’t too happy with what I found. So this talk will cover our current means of talking to remote services (QNetworkAccessManager, KIO, KTcpSocket, QSslSocket) and their issues (spoiler: there are more than you’d wish for), and how we could possibly move forward in this area.

To illustrate the problems, I’ve written a little demo application which can be found on KDE’s Gitlab, as well as the first patches to actually address the current shortcomings.

KPublicTransport - Real-time transport data in KDE Itinerary

Day 2, 14:00 in U4-08, details.

In last year’s presentation about KDE Itinerary I assumed that access to public transport real-time data would be a big blocker. I was wrong, after the talk I was contacted by people from the Navitia team, which lead me to discover all the existing work the Open Transport community has already done in this field, one of the biggest (positive) surprises for me last year. So here I’m going to show what’s available there for us, and our interface to this, the KPublicTransport framework.

KDE Frameworks on Android

Day 2, 15:00 in U4-08, details.

While Android isn’t really my area of expertise either, I ended up digging into this as part of the work of bringing KDE Itinerary to that platform, and again not being entirely happy with the current state. Platform specific code in applications, even more so error-prone string-based JNI code, isn’t really something I like to maintain. Pushing more of that to the libraries that are supposed to isolate applications from this (Qt and KDE Frameworks) is the logical step here.

This one looks like it’s going to be the most challenging one to squeeze into its given time slot. I also couldn’t stop myself here from implementing a prototype to address some of the issues mentioned above.


Due to popular demand I’ll also be hosting a BoF about creating custom KItinerary extractors, currently planned for Thursday, 9:30 in U2-02. Since most people will have had to travel to Akademy everyone should have sample data for train or plane tickets, and for accommodation bookings that we can look at to get supported. Having a very recent version of KItinerary Workbench installed will be useful for this (which as a result of preparing this is receiving inline editing capabilities for the extractor scripts, and is getting close to being able to reload even the extractor meta data without requiring an application restart). My goal for this would be to get more people into contributing new or improved custom extractor scripts for so far not supported booking data.

I’ll also try to bring the latest version of the Plasma Mobile Yocto demo, in case we want to do an embedded device BoF again.


While we have been fixing a few Akademy-related KDE Itinerary bugs already, one thing that doesn’t work yet is automatically integrating the Akademy events in to the itinerary (that’ll need the browser integration).

Until then, there is a manually created file that can be imported into KDE Itinerary here. At the moment this only contains the conference days, for the welcome and social event there are no locations available yet. Having the events in the itinerary will make the navigation features more useful, e.g. to find your way from your hotel to the event.

See you in Milan :)