KDE's yearly world conference - Akademy - was held last week in Almería, Spain. Lots of interesting things happened in the Plasma-verse during Akademy 2017.
State of the Union
Right after the first day's keynote (slides), Marco Martin and Sebastian Kügler caught the general audience up in their presentation "Plasma: State of the Union". Sebas talked about how the architecture around Frameworks 5 and Plasma 5 worked out very well, and how the 5.8 LTS release was received positively, especially by the users who value stability and predictability.
Marco then presented a number of new features that have been added to Plasma since last year's Akademy and that are planned for the upcoming 5.11 release. There is the improved integration for web browsers, better support for touchscreens, enhancements in the taskbar, return of the App Menu (Global Menu), encrypted volumes through Plasma Vault, more elegant artwork, a redesign of the System Settings user interface, and many more.
The KDE Store has gained a lot of traction since its relaunch at Akademy 2016, and now even allows its contributors to receive donations directly from happy users. (Full disclosure: Your editor was able to buy a pizza last week from donations coming through this new feature in the KDE Store).
Plans for the future of Plasma include getting the Wayland port ready for end-users, and thereby delivering on the promise of smoother graphics, a leaner graphics stack, better protocol semantics, improved high-DPI support and more features for touchscreens and convertible devices (such as edge-swipe support).
Another talking point which deserves a special mention is Plasma's vision statement. The statement had been discussed on Plasma's mailing list and on KDE's Phabricator collaboration tool over the last couple of months, and it is now finalized. Plasma's vision statement reads:
"Plasma is a cross-device work environment by the KDE Community where trust is put on the user's capacity to best define her own workflow and preferences.
Plasma is simple by default, a clean work area for real-world usage which intends to stay out of your way. Plasma is powerful when needed, enabling the user to create the workflow that makes her more effective to complete her tasks.
Plasma never dictates the user's needs, it only strives to solve them. Plasma never defines what the user is allowed to do, it only ensures that she can.
Our motivation is to enable actual work to happen, across devices, across different platforms, using any application needed.
We build to be durable, we create to be usable, we design to be elegant."
Its cornerstones are stability, usability (which includes features to make the users' lives easier) and elegance, meaning that the team aims to create stable software that helps users get their job done elegantly, but swiftly and with pleasure. For a more detailed explanation of Plasma's vision, head over to sebas' weblog.
Halium Unifies Mobile Linux
Bhushan Shah, maintainer of Plasma's user interface for mobile devices, talked in detail (slides) about the latest endeavour - Project Halium. Halium is a collaboration that aims to share the development effort among several groups. By creating a common base, Project Halium wants to make it easier to bring Plasma Mobile to a wider range of devices. In just a few months, Halium has not only allowed Plasma Mobile to run on its new reference device (the Google Nexus 5X), but has also provided the basis for ports to the Fairphone 2 and a few other handsets.
With other Free software mobile stacks (such as Ubuntu Touch and Firefox OS) being discontinued, Plasma Mobile positions itself as the best option to create truly Free and community-developed mobile devices. While its development is not very fast-paced, its continued improvements begin to bear fruit. This makes Plasma Mobile an increasingly attractive platform for people and companies that want to escape the Duopoly of today's smartphone market and bring something entirely new to the table.
Kirigami Makes Convergence
Most of today's applications are written using QWidgets, which is still the most powerful tool for certain kinds of applications. QWidgets does have some graphical limitations, which may sound bad, but this limitation leads to more consistent UIs across applications. Using QWidgets makes it difficult to deviate from the human interface guidelines (HIG) too much, thus enforcing visual consistency.
This is about to change. Qt is investing heavily into QML, which has fewer graphical limitations, putting more power into developers' hands. A side-effect, however, is that it makes it (too) easy to create applications visually and interactively inconsistent with each other.
Kirigami was born both as a human interface guideline (HIG) and a framework implementing it. Kirigami has been stabilized over the past year and will be released together with KDE Frameworks 5 starting August 2017.
Kirigami provides the skeleton for applications, allowing developers to write visually and interactively consistent applications with little effort. While it seems that Kirigami limits the endless flexibility that QtQuick-based UIs offer, it solves common problems of in-app navigation. Moreover, it solves the lack of consistency across applications, providing uniformity and reducing the need to 'learn' a new application. In order to think outside of the box, you need a box in the first place, and Kirigami provides that box.
One example of a Kirigami app is Koko, a simple QML-based image viewer. Although Koko never received any real designer input, it has been resurrected as a Google Summer of Code project by Atul Sharma, and has been redesigned to be a textbook case for Kirigami. Other Kirigami-based applications are Discover (Plasma's software center), the new System Settings user interface (to be released with Plasma 5.11), and of course, Kirigami's first adopter: Subsurface Mobile, an application for logging scuba dives. Kirigami provides a morphing UI, which allows creating applications that work equally well on desktop and mobile. With Kirigami, creating a convergent application is a breeze.
The main target platforms for Kirigami are Plasma Desktop and Plasma Mobile, with the convenient side-effect of working nicely on Android. While we care a lot about following the look of Material on Android, we're not interested so much in the feel. With Plasma Mobile, we want to innovate without the legacy that Android and iOS have on their top-heavy UIs. Such interfaces are very hard to use with a single hand on big screen phones, and this is something we want to avoid.
Kai Uwe Broulik wins Akademy Award for Plasma
Kai Uwe Broulik, a Plasma Hacker extraordinaire, was lauded an Akademy Award this year for his work on Plasma. As the developer behind features like the App Menu, web-browser integration, and many other cool features big and small, Kai is a tireless and positive force that many of his teammates follow as a role model. The award, which also reflects positively on the rest of the Plasma team, is well-deserved and received gratefully.
Swapnil Bhartiya interviewed Kai shortly after the Akademy Awards ceremony. In this interview, Kai reveals his ideas and thoughts on Plasma and the desktop in general. It's well worth watching.
On Monday, the Plasma team held a day-long birds-of-a-feather (BoF) session. BoFs are collaborative meetings where everyone with the same interest is welcome to participate. The sessions are focused on making plans and finding solutions for problems that need face-to-face interaction. Naturally, they are also a great opportunity to look into the developers' kitchen. Let's take a peek!
The Plasma team plans to improve support for convertible devices (laptops with touchscreens and detachable keyboards). In order to do that, some improvements to the virtual keyboards are planned.
Other aspects that need improvement include screen rotation, sensors support, and the appearance of the UI when used with one's finger. Furthermore, the team talked at length about structuring the (somewhat dynamically grown) battery of QtQuick imports in a more logical way.
Finally, a BoF session on Wayland resolved a number of problems in applications using Wayland, leading to direct results. For example, KMail will support the Wayland display server natively in an upcoming releases.
Changes planned for Plasma Mobile include a more efficient and clean implementation of the top panel, better backend-sharing between desktop components and mobile UIs, and better support for third-party applications, especially those left in the rain by the demise of Ubuntu Touch.
Akademy provided a great opportunity to prepare for the next big leaps in different areas of Plasma. As always, it was also a wonderful opportunity for the Plasma team to get together, socialize, and keep working as a team of friends.
Do you use KMail or Kontact? The KDE PIM developers want to get more knowledge about how KMail is used so they can better know where they should focus and how they should evolve Kmail and Kontact. They want to make the best user experience possible and you can help by filling out a short survey.
The survey won't take more than 5 minutes and it will be a big help.
Please share the survey with your family members, friends and colleagues who use KMail too!
The second day of Akademy BoFs, group sessions and hacking has just finished. There is a wrapup session at the end so that what happened in the different rooms can be shared with everyone including those not present.
Antonio Larrosa kicked off Sunday with his talk on The KDE Community and its Ecosystem. He expressed concern about what he perceived as an increase in the isolation of certain communities and laid out the advantages of working on intra-community relationships.
Later on in the day, Kevin Ottens gave his audience a taste of what Qt's 3D API can do in his talk Advances in Qt 3D. There are more and more applications that rely on 3D everyday, especially with the increase in popularity of virtual reality. Ottens introduced the tools Qt developers looking to include 3D into their programs and even treated attendees to a preview of a feature that is still in the works and that helps manage shader code.
Dan Leinir Turthra Jensen gave a very entertaining talk on Supporting Content Creators or Satisfying Your Inner Capitalist. Leinir laid out ways app developers could make enough money to be able to sometimes eat, while at the same time still feed their craving for developing cool stuff under free licenses.
Jonathan Riddell gave a demonstration of what Neonception would be like by running Neon inside Neon using Docker images. The point being that, apart from looking cool, as Neon comes in various experimental flavours, developers can run unstable versions in a container without endangering their main set up.
Jonathan gives a good explanation himself in the following video:
Ivan Čukić rounded off the day, invoking the Cthulhu of programming languages. In his talk C++17 and 20, he reviewed some of the more interesting features included into C++17, as well as those planned for C++20. Although some attendees would probably prefer C++ lay dreaming a few aeons more, new things like ranges, concepts, and coroutines may just convert some developers over.
For most of the year, KDE—one of the largest free and open software communities in the world—works on-line by email, IRC, forums and mailing lists. Akademy provides all KDE contributors the opportunity to meet in person to foster social bonds, work on concrete technology issues, consider new ideas, and reinforce the innovative, dynamic culture of KDE. Akademy brings together artists, designers, developers, translators, users, writers, sponsors and many other types of KDE contributors to celebrate the achievements of the past year and help determine the direction for the next year. Hands-on sessions offer the opportunity for intense work bringing those plans to reality. The KDE Community welcomes companies building on KDE technology, and those that are looking for opportunities. Join us by registering for the 2017 edition of Akademy today.
Akademy has had its first full day of BoFs, group sessions discussing our plans for the next year. The wrapup session has just finished so watch the video to find out about what Plasma devs are working on, what tutorials happened and how we avoided a fist fight to the finish.
Every year at Akademy we celebrate some of our hardest working achievers in the community. The prizes are selected and awarded by the previous year's winners. The winners this year are:
Kai Uwe Broulik for their valuable work on Plasma.
Non-Application Contribution Award
Cornelius Schumacher for their long term contributions to KDE.
Martin Konold & Olaf Schmidt-Wischhöfer for their work on the KDE Free Qt Foundation.
Honourable mentions also go to Lars Knoll and Tuukka Turunen for their work on the Qt side of the foundation which controls Qt's licensing.
The organising team were also given a certificate and thanked for their hard work. The organisation has been led by Kenny Duffus who has helped for over a decade making the events appear to run smoothly. The local team have worked hard this year led by Rubén Gómez and Ismael Olea to bring us a fabulous event.
Akademy continues for another four days with meetings, workshops and hacking from teams within KDE to discuss their work over the forthcoming year.
One final announcement was made at the end of the talks. The location for next year's Akademy was announced to be in Vienna, Lukas Hetzenecker introduced what he assured us was a beautiful and welcoming city.
As it always happens when Akademy takes place in Spain, Akademy-es 2017 became a prelude of the international event and many well-known KDE developers attended.
Throughout two days, talks were offered covering many different topics, including Plasma, programming (C++, Qt, mobile), exciting projects like Kirigami, proposals for the future such as KDE on automobile, encouragement to use KDE software and contribute to KDE, and information about KDE España.
People who could not attend should not be worried as videos of the talks will be available online.
The local newspaper stopped by for a photo shoot and to write a story on the world gathering of KDE developers that was about to happen.
Attendees also got a chance to play around with Slimbook Ultrabooks such as the well-known KDE flavour or their new Pro edition.
As usual, KDE España members gathered to celebrate their AGM. If you wish to find out what goes on in there, or if you wish to help us out organizing events like Akademy-es and getting the word out in Spain about KDE, please consider joining KDE España. It is now easier than ever!