Akademy retrospective

Akademy retrospective

I had an amazing time with the KDE community in Vienna this past week at Akademy. In fact it was my first Akademy despite contributing to KDE for so long, but Vienna was a great reason to make my first trip to Europe.

selfie of mpyne in front of an ad for a yellow submarine

It's like Vienna knew I was coming over

It was nice to experience in person many of the things I read about from previous Akademies. There were the talks, meeting up with friends, the late-night hacking, showing others the work I’ve done. I even got to participate in impromptu collaborations such as taking Helio’s Qt1 port to CMake and building and running it on the Windows Subsystem for Linux within minutes of his announcement of the release.

I also got a reminder again of the importance of open source and making the work we do available to the wider community at the postmarketOS talk on day 2 of the talks, where the presenter noted how their effort to port a real Linux (as opposed to something like AOSP) to mobile form factors with a good GUI ran into some roadblocks related to their use of Alpine Linux (which uses musl libc), but managed to overcome those roadblocks more quickly thanks in part to some patches I’d written a year ago for musl support. This helped get them closer to running Plasma Mobile on platforms like the original Nexus.

This talk was the first I’d heard of this, and this platform wasn’t the reason I’d pushed to get KF5 to compile on Alpine, but then that’s the beauty of open source — people will do amazing things with even the smallest contributions you make, if only you get those contributions out there.

Improving the onboarding experience

A big theme of this Akademy was improving our ability to onboard new contributors, whether that’s testers, artists, bug triagers, designers, and developers, which is one of our major goals as a community. We need help everywhere, and this focus was reflected in many of the “Birds of a Feather” (BoF) sessions we conducted.

Improving kdesrc-build

I led a BoF on this topic for kdesrc-build and participated in a few others as well. There’s a lot out there that we can do to improve our story here, in kdesrc-build and elsewhere, and I’m hopeful we can accomplish real improvement here over the next year. But it was also nice to see and hear a lot of the positive feedback our developers had about kdesrc-build.

A blackboard listing some user complaints about kdesrc-build

Pain points from the kdesrc-build BoF

A blackboard listing some suggested improvements for kdesrc-build

Suggested improvements from the kdesrc-build BoF (some less serious than others…)


At that BoF, Dominik Haumann also demonstrated a mockup for GUI he’s been working on that, in association with the work I’ve been doing to add support for APIs in kdesrc-build to communicate to external processes, would make it easier to use kdesrc-build. More to follow on that, but I’m excited for it.

Other options for onboarding

Also, there was acknowledgment during the week that kdesrc-build is not the best method to get access to bleeding-edge KDE software for all the types of new users.

That’s OK — I agree myself, and if anything it would be surprising for a command-line script to manage to be all things to all people.

So we talked during the week about other options for getting people access to more recent builds of KDE software (Plasma, the Frameworks, Applications, etc.). These options could include:

  • Using virtual machines like KDE Neon’s Developer Edition (recommended by Nate Graham)
  • Flatpaks or Snaps for nightly builds
  • Conan.io C++ binary packages
  • Container-based solutions (e.g. being able to “docker pull” a kdesrc-build-based image based off a standard Linux-based docker image and which automatically gets you all the way to a working install without extra effort on your part)

There’s pros and cons to all of these. I don’t expect kdesrc-build would go away — our developers need some way to build our software on their own, but many of these would be much easier for power users to test on, or for application developers to use to just get the latest Frameworks easily.

Closing Thoughts

All in all, Akademy was an amazing experience, it more than met up to the reputation it had built in my head from seeing things from the outside here. It’s never too late to attend either, so don’t let missing a few like I did keep you from going to your first!

The team that hosted Akademy did an amazing job in organizing. These types of events offer every opportunity for “Murphy’s Law” to strike, but you’d never have noticed from my perspective as a participant — everything simply happened smoothly. I was especially impressed with the extracurriculars like the day trip to the Kahlenburg, and the sightseeing tour of Vienna hosted by the local team (the tour was so good you’d never have believed it was organized nearly at the last minute in response to the high interest we showed).

Now, it’s time to dive into all the “TODOs” I’d collected from just a week of in-person engagement with the Community, until the next time I can come back!