Akademy 2021
from
Friday, 18 June 2021 (07:00)
to
Friday, 25 June 2021 (21:10)
Monday, 14 June 2021
Tuesday, 15 June 2021
Wednesday, 16 June 2021
Thursday, 17 June 2021
Friday, 18 June 2021
07:00
Introduction to QML
-
Albert Astals Cid
Introduction to QML
(Track 3)
Albert Astals Cid
07:00 - 10:30
This training is happening in https://meet.kde.org/b/akademy-trainings-3. This training is an introduction to Qt Quick. On the one hand, it will teach you how to compose fluid user interfaces using the QML language. On the other hand, it will teach you how you hook the QML side up to your business logic in C++. Course contents: How to do [basic] QML interfaces Connecting a QML UX with C++ business logic Complex list views including data provided from C++ models
09:00
How to Contribute to Qt
-
Edward Welbourne
(
Qt
)
Cristián Maureira-Fredes
(
Qt
)
How to Contribute to Qt
(Track 1)
Edward Welbourne
(
Qt
)
Cristián Maureira-Fredes
(
Qt
)
09:00 - 12:00
This training is happening in https://meet.kde.org/b/akademy-trainings-1. An introduction to contributing to Qt We'll run through: * An overview of contributing to the Qt project * How to get set up with a Qt account * How to report a bug * How to review a proposed change (such as a fix to your bug) * How to submit a change and get it through review We'll mix talking about it with showing how it's done and we'll take questions after each section, and breaks between topics to give an opportunity for discussion and AFK escapes.
12:00
Break
Break
12:00 - 16:00
16:00
Implicit Bias w/ Dr. Hawkins
-
Carlee Beth Hawkins
Implicit Bias w/ Dr. Hawkins
(Track 3)
Carlee Beth Hawkins
16:00 - 17:30
This training is happening in https://meet.kde.org/b/akademy-trainings-3. Carlee Beth Hawkins, Ph.D., is an educator and researcher of implicit bias and social change. In her research, Dr. Hawkins investigates motivations and strategies for overcoming bias in social and political judgement and behavior. She has published in Psychological Science, Journal of Basic and Applied Social Psychology, and Personality and Social Psychology Bulletin. Her work has also been featured in media outlets such as National Public Radio, The Huffington Post, and Psychology Today. In addition to presenting workshops and training sessions on implicit bias to diverse groups including HR professionals, senior executives, and physicians, Dr. Hawkins led a multi-team project to create an e-course titled "Understanding Implicit Bias" to educate individuals about what implicit bias is, how it influences decision-making and behavior and what we can do about it. As an educator, Dr. Hawkins believes that we all benefit from becoming more aware of our biases. Dr. Hawkins is currently an Assistant Professor of Psychology at Southern Illinois University, Edwardsville. She earned a Ph.D. from the University of Virginia in 2013 and completed a post doctoral fellowship in the Center for Decision Research in the Booth School of Business at the University of Chicago.
KDE Stack Overview
-
Kevin Ottens
(
enioka Haute Couture
)
KDE Stack Overview
(Track 2)
Kevin Ottens
(
enioka Haute Couture
)
16:00 - 20:00
This training is happening in https://meet.kde.org/b/akademy-trainings-2. In this training we will get a solid look at the "KDE Stack" and how the different pieces fit together. There will be a strong focus on the KDE Frameworks offerings and also on how Plasma leverages them. To better understand the context of the KDE technologies, we will also have a biased tour of their history and we will explain some known and lesser known bits in Qt with a different light. Depending on the explored topics, we will provide either high level diagrams of the interacting pieces or code snippets. If you are a KDE contributor whose first name is David or you've been contributing deeply to KDE Frameworks and Plasma the past few years, this training is probably not for you. That said, if you are a KDE contributor, or an aspiring KDE contributor this training is definitely for you. If you're working on a Qt application and wondering what KDE can bring to the table for you, it might be of interest as well.
Modern C++ - STL Containers and Allocators
-
Marc Mutz
(
KDAB
)
Modern C++ - STL Containers and Allocators
(Track 1)
Marc Mutz
(
KDAB
)
16:00 - 20:00
This training is restricted to KDE developers, the room link & password is available at: https://invent.kde.org/teams/kde-developers/training/-/wikis/Akademy-2021 This training is a subset of KDAB's regular Modern C++ training, focusing on containers and allocators. After teaching what's new in the STL containers since C++98, Marc will take a deep dive into allocators and how to use them efficiently. At the end of the training, participants will have a firm grasp of STL containers and allocators, and see the Qt containers for what they are: code-churning 90s designs with lots of baggage no-one needs. As a bonus for the community to which Marc owes his job, he will also include a special section on the Non-Owning Interface Idiom (NOI v2.0), which has never been presented before in public.
Saturday, 19 June 2021
08:00
Welcome & Opening Remarks
Welcome & Opening Remarks
(Track 1)
08:00 - 08:05
08:05
I Can't Work Like This
-
Patricia Aas
(
TurtleSec
)
I Can't Work Like This
(Track 1)
Patricia Aas
(
TurtleSec
)
08:05 - 09:00
Making software products can be fraught with conflicts, where people in different roles may feel sabotaged by others. In this talk I present a model for thinking about the problems we solve and how we solve them, and using that I hope to convince you that team excellence comes from our differences, rather than in spite of them. Hopefully you'll walk away with a deeper understanding of that colleague that never writes tests, or the one that constantly complains that all you do is "make bugs".
09:00
KDE is All About the Apps
-
Aleix Pol Gonzalez
(
KDE
)
KDE is All About the Apps
(Track 1)
Aleix Pol Gonzalez
(
KDE
)
09:00 - 09:40
Our Goal is to get more apps onto more app stores by empowering the app developers and integrating the release process into the stores and into the apps. Changing the culture of KDE to deploy our own apps. This talk will look at progress and barriers to the goal.
09:40
Consistency: What's up?
-
Niccolò Venerandi
(
KDE
)
Consistency: What's up?
(Track 1)
Niccolò Venerandi
(
KDE
)
09:40 - 10:20
A yearly update on your favorite KDE goa.
10:20
Wayland Goal 2021 Update
-
Méven Car
Vlad Zahorodnii
Wayland Goal 2021 Update
(Track 1)
Méven Car
Vlad Zahorodnii
10:20 - 11:00
The Wayland Goal has been steadily making progress, we will look at what has been done since last akademy, how it has been done and by who and have a look at the road ahead.
11:00
KDE Goals roundtable
-
Méven Car
Jonathan Riddell
(
KDE neon
)
Adam Szopa
(
KDE
)
Niccolò Venerandi
(
KDE
)
Lydia Pintscher
KDE Goals roundtable
(Track 1)
Méven Car
Jonathan Riddell
(
KDE neon
)
Adam Szopa
(
KDE
)
Niccolò Venerandi
(
KDE
)
Lydia Pintscher
11:00 - 11:40
The Champions of the KDE goals, along with Lydia and Adam sit down to discuss the goals initiative, and answer community questions.
11:40
Qt for Python
-
Anupam Basak
(
Freelance Software Developer
)
Qt for Python
(Track 1)
Anupam Basak
(
Freelance Software Developer
)
11:40 - 11:50
**Qt for Python** is the project that provides the **official** set of Python bindings for developing Cross platform Desktop Applications with Qt Framework using Python 3. This talk will serve as an entry point to the planned workshop on the same topic. The workshop will cover the basics of developing cross platform desktop applications with Python using Qt and QML
11:50
Health Analysis of the KDE Community
-
Carl Schwan
(
KDE
)
Health Analysis of the KDE Community
(Track 1)
Carl Schwan
(
KDE
)
11:50 - 12:00
This short talk will be focused on an analysis of various projects inside KDE using their git histories. It is some sort of continuation of this blog post: https://carlschwan.eu/2021/04/29/health-of-the-kde-community/, but with more plots and data. More importantly, I want to take a step back and look at the lessons we learned along the way and how we can help our community to grow more in the future.
12:00
SPDX License Markers in KDE - Progress Update
-
Andreas Cord-Landwehr
SPDX License Markers in KDE - Progress Update
(Track 1)
Andreas Cord-Landwehr
12:00 - 12:10
SPDX is standard to add license information to source code files in a machine readable way. This is important because: - it allows automatic checking - it enables super cool new features that were not possible before - it prevents ourselves from accidentally providing software that has an unusable/conflicting license In KDE Frameworks all non-deprecated parts already contain these markers, Plasma also did major work in this direction and similar efforts happened at further places in KDE. This talk will highlight what was achieved, where we are and it gives some ideas what people now can do with having license markers available.
12:10
Power Profiles in Plasma
-
David Redondo
Power Profiles in Plasma
(Track 1)
David Redondo
12:10 - 12:20
In this talk I will briefly outline what platform_profiles are, what power-profile-daemon does and how it is used in Plasma, allowing you to control the performance of your machine.
12:20
Break
Break
12:20 - 17:00
12:30
Collabora Office Hour
-
Alvaro Soliverez
(
Collabora
)
Collabora Office Hour
Alvaro Soliverez
(
Collabora
)
12:30 - 13:30
17:00
Sponsors' Talks
Sponsors' Talks
(Track 1)
17:00 - 17:40
17:40
Staying Indoors - OSM indoor maps for KDE Itinerary
-
Volker Krause
(
KDE
)
Staying Indoors - OSM indoor maps for KDE Itinerary
(Track 2)
Volker Krause
(
KDE
)
17:40 - 18:20
Outdoor maps as found on any mobile phone nowadays aren't really useful for finding your way in large buildings such as major train stations or airports, as those maps don't represent vertical layers very well. How do we get indoor maps for those cases onto Plasma Mobile and into our apps? Finding your way through a complex multi-floor building you are not familiar with can be challenging, even more so when you have heavy luggage or a stroller with you, or are relying on a wheelchair, which can turn even a few stairs into a hard to overcome obstacle. Naturally you'd want your mobile phone to help you navigate, in the same way it does outdoors. In this talk we'll look at the OpenStreetMap (OSM) based indoor mapping library which has been developed for KDE's digital travel assistant Itinerary. While having a special focus on train stations and airports, it works equally well for any other building with the necessary indoor mapping data available in OSM, such as for example university buildings[*], museums or shopping malls. We will see how its use of a declarative client-side renderer based on MapCSS allows to customize the map display to app-specific use cases and deal with the increasing level of detail in OSM. The use of Marble's vector tile server on the other side allows efficient access to current OSM data. Besides showing a static OSM map, live data from other sources can be integrated as well. A particular important example are the realtime status information of elevators and escalators. Knowing beforehand whether one of those is out of order is convenient in any case, but for wheelchair users can be absolutely crucial. Finally, we will look at the challenges around indoor localization and routing. Outdoors we can often rely on multiple GNSS systems, indoors reception of those is typically very poor if available at all, while we at the same time have a higher demands on correct vertical positioning. [*] Not the Akademy 2019 one though, this is all limited to Euclidean space.
What's cooking for KDE Frameworks 6
-
Nicolas Fella
What's cooking for KDE Frameworks 6
(Track 1)
Nicolas Fella
17:40 - 18:20
With Qt6 released there is a new major version of the KDE Frameworks on the horizon. Even though the final transition is still a bit in the future the work towards it is already ongoing since Akademy 2019. This talk presents the work that happened and is going to happen for KF6. It highlights the core design decisions, goals, and areas where more work is needed. Learn what you as an application developer need to know about upcoming changes and how you can help shaping the foundation of all KDE software.
18:20
C++ Coroutines and Qt
-
Daniel Vrátil
C++ Coroutines and Qt
(Track 2)
Daniel Vrátil
18:20 - 19:00
Coroutines are one of the brand new features in C++20. In this talk I will introduce how coroutines in C++ work and I will present QCoro, my experimental library that makes it possible to use C++ coroutines with certain Qt operations, like DBus calls, network replies etc.
The History of Software Distribution - A Personal Journey
-
Dan Leinir Turthra Jensen
The History of Software Distribution - A Personal Journey
(Track 1)
Dan Leinir Turthra Jensen
18:20 - 19:00
Getting software to end users has always been an issue those who create the software have been worried about. A great many solutions have been proposed and attempted for this problem, and in this talk you will see an overview of the history of these attempts, and a discussion of some of the advantages and flaws each of them presents. Recently, a lot of attention has been paid to three attempts at getting software to users, in the form of Flatpak, Snapcraft and AppImage. These, however, have not been the only attempts at making it easier for both software developers, and your humble speaker has been involved in one way or another with a number of attempts for several years now, both as a volunteer contributor and as part of employment. In this talk we will explore the many ways this has been done, both high profile and more quiet attempts, some very interesting approaches, and some which have turned out to be less than successful. We will see what we can learn from those attempts, and we will see where we go from here.
19:00
KF6 the Architecture Overview - Time to Slice Things Up Yet Again
-
Kevin Ottens
(
enioka Haute Couture
)
KF6 the Architecture Overview - Time to Slice Things Up Yet Again
(Track 2)
Kevin Ottens
(
enioka Haute Couture
)
19:00 - 19:40
A new Qt major version has been released. As usual this is when we really get into preparing the next incarnation of our development platform. The last time we went full steam into cutting kdelibs into pieces. What are we going to do this time? Beware, this talk might include references from slasher movies. ---------- The move from kdelibs4 to KF5 was kind of our own Copernician Revolution. We used the opportunity to split our single platform package into dozens of components. This served us well but the model proposed to structure them is showing some limitations. With KF6 this is our opportunity to address those issues. In this talk, we will revisit how the KF5 offer has been structured. From that scheme we will highlight what worked well and not so well. Then we will proceed with an idea which was discussed during the latest KDE Frameworks Sprint and see how it could improve things. This is an interesting cocktail which is one part technical, one part community and one part marketing. Indeed, it might end up redefining in parts the nature of both KDE Frameworks and Plasma. Finally, we will explore the current state of our frameworks to see how far we are from the new envisioned structure and how feasible this rethinking of our platform is.
Kdenlive
-
Massimo Stella
(
Kdenlive
)
Kdenlive
(Track 1)
Massimo Stella
(
Kdenlive
)
19:00 - 19:40
Presentation of the latest version of the Kdenlive application
19:40
Promo as a Service
-
Aniqa Khokhar
(
KDE
)
Paul Brown
(
KDE
)
Promo as a Service
(Track 1)
Aniqa Khokhar
(
KDE
)
Paul Brown
(
KDE
)
19:40 - 20:20
In this talk, attendees will learn about the services the Promo team offers projects and how they can benefit from them.
Wayland for Qt application developers
-
David Edmundson
(
KDE
)
Wayland for Qt application developers
(Track 2)
David Edmundson
(
KDE
)
19:40 - 20:20
When talking about Wayland a lot of focus is put on the compositor and the shell. For 40 minutes we will completely ban uttering the terms Kwin or Plasma and focus purely on the application side. This talk explores what wayland means for Qt application developers. Why should developer need to care? what do they need to care about? This talk explores some common traps and pitfalls we've seen in client applications, and how to debug and fix remaining issues and how to address any porting that may be needed. We also look into KDE's existing contributions to QtWayland's client QPA and how you can get involved.
20:20
ARM Memory Tagging Extension - Fighting Memory Unsafety with Hardware
-
Alexander Saoutkin
ARM Memory Tagging Extension - Fighting Memory Unsafety with Hardware
(Track 2)
Alexander Saoutkin
20:20 - 21:00
Qt and by extension C++ is the technical pillar of the KDE community that has served us well since our inception. However, there is no such thing as a free lunch; the performance and expressive power of C++ comes at a hefty price - it is memory unsafe. In turn, users experience crashes, odd behaviour and often ample opportunity for attackers to turn memory unsafety into powerful exploits. A variety of tools and techniques have been introduced to eliminate (but mostly to prevent and mitigate) the drawbacks of memory unsafe languages, but a lot of these tools are difficult to use and often have prohibitive overheads. The ARM Memory Tagging Extension (MTE) is a new hardware feature expected in ARMv8.5+ processors that allows metadata (i.e. tags) to be attributed to both memory and pointers. As will be seen in the talk, this can be used to prevent a wide variety of common memory related bugs with overheads low enough that one can use it as a security mitigation in production as well as a debugging tool. In addition, this feature opens up the possibility of other non-conventional use cases, such as being able to set infinite watchpoints, which in addition can be enhanced to create a race detector. These will be briefly discussed as well and hopefully will inspire future interesting use cases for this new versatile extension.
Towards sustainable computing
-
Cornelius Schumacher
Towards sustainable computing
(Track 1)
Cornelius Schumacher
20:20 - 21:00
The way how we use computers has an impact on our environment. It has ecological, societal, and economic consequences. These consequences can be destructive, be it climate change or undermining people's autonomy. How can we move towards a sustainable way of using computers? How can we keep our planet and our society in a shape which provides healthy and desirable living conditions for us and future generations? We have answers. In this presentation we will discuss how KDE can contribute, and give an overview about two projects in this area, the FOSS Energy Efficiency Project, and the Blue Angel ecolabel. The goal of the [FOSS Energy Efficient Project (FEEP)](https://invent.kde.org/cschumac/feep) is to make measuring energy consumption an integral part of our development process. Collecting data is the base for understanding and optimizing energy efficiency. We will discuss how measurements can be done, including the scientific research behind it and how it's done in practice, and have a look at measurements for Okular, KMail and Krita. Energy efficiency measurements are one part of the criteria for the Blue Angel ecolabel. The Blue Angel is a successful label with a long tradition in many different product areas, issued by the German government. It recently has been extended to cover software as well, using criteria for energy efficiency as well as for user autonomy. We will discuss the current [effort to get KDE applications certified](https://invent.kde.org/cschumac/blue-angel-application) with the label, and how we can scale that within our community and beyond. The topic of sustainable computing becomes more and more important. Free and Open Source Software is uniquely positioned to make a siginificant contribution here. We have a strong background in KDE through our values and our technolofy. We have a great chance to make tangible achievements. Let's do this together in the KDE way.
Sunday, 20 June 2021
08:00
Plasma: Work From Home Edition
-
Kai Uwe Broulik
Plasma: Work From Home Edition
(Track 1)
Kai Uwe Broulik
08:00 - 08:10
This presentation will show you how to make working remotely more productive and more fun with the latest Plasma release.
08:15
Growing a KDE Video Community
-
Niccolò Venerandi
(
KDE
)
Growing a KDE Video Community
(Track 1)
Niccolò Venerandi
(
KDE
)
08:15 - 08:25
At the beginning of 2021 I started up an experiment to create a video community around KDE, specifically using Youtube. I will cover how that went, the benefits for KDE, and you can do the same. Let's grow this community :)
08:30
KIO FUSE - A Summary
-
Alexander Saoutkin
KIO FUSE - A Summary
(Track 1)
Alexander Saoutkin
08:30 - 08:40
KIO FUSE provides a FUSE compatibility layer to KIO, allowing all applications - not just one linked to the KIO library - to benefit from the network transparent access to files and data that KIO offers. In this quick talk I'll clear misconceptions on how KIO FUSE works, give an overview of what work has been done and what work is planned in the future.
08:45
Kalk - My first OSC project
-
Rohan Asokan
Kalk - My first OSC project
(Track 1)
Rohan Asokan
08:45 - 08:55
Kalk is a cross-platform calculator application with a focus on ease of use and simplicity. It is built over the Kirigami Framework. I have implemented a new binary calculator feature as well as ported to an infinite precision number system. This talk briefs about the work I had done during the Season of KDE on Kalk.
09:00
KDE e.V. board report
-
Adriaan de Groot
(
KDE
)
Lydia Pintscher
Neofytos Kolokotronis
(
KDE
)
Eike Hein
(
KDE
)
Aleix Pol Gonzalez
(
KDE
)
KDE e.V. board report
(Track 1)
Adriaan de Groot
(
KDE
)
Lydia Pintscher
Neofytos Kolokotronis
(
KDE
)
Eike Hein
(
KDE
)
Aleix Pol Gonzalez
(
KDE
)
09:00 - 09:40
KDE e.V. does a lot of work behind the scenes to support the KDE Community. In this talk the board of KDE e.V. will give an overview of the activities of the last year and provide an outlook to the next.
09:40
KDE e.V. working group reports
-
Aleix Pol Gonzalez
(
KDE
)
Lydia Pintscher
Eike Hein
(
KDE
)
Neofytos Kolokotronis
(
KDE
)
Adriaan de Groot
(
KDE
)
KDE e.V. working group reports
(Track 1)
Aleix Pol Gonzalez
(
KDE
)
Lydia Pintscher
Eike Hein
(
KDE
)
Neofytos Kolokotronis
(
KDE
)
Adriaan de Groot
(
KDE
)
09:40 - 10:20
The working groups of KDE e.V. are groups of KDE e.V.working on supporting KDE e.V. and the KDE Community at large around specific topics. In this session the working groups will report on their work of the last year.
10:20
Building a discourse community for Krita
-
Raghavendra Kamath
Building a discourse community for Krita
(Track 1)
Raghavendra Kamath
10:20 - 11:00
With its continuously growing user base, Krita needed an independent community space to bring together users and developers under one roof. In this talk I share our experience in building a dedicated discourse community for our users and how it is helping us to connect with our users and also get them involved in betterment of Krita.
Porting user applications to Qt 6
-
Kai Köhne
(
The Qt Company
)
Porting user applications to Qt 6
(Track 2)
Kai Köhne
(
The Qt Company
)
10:20 - 11:00
Qt 6 is the next major release of the Qt series. As a major release, it contains some significant changes, both in the module structure and in the external API. In this talk I will give practical advise on how to port applications from Qt 5 to Qt 6. Based on experience on porting Qt Creator, I will explain the most common API pitfalls, as well as useful processes and tools to help in the porting work.
11:00
Developing products that break out of our bubble(s)
-
Neofytos Kolokotronis
(
KDE
)
Developing products that break out of our bubble(s)
(Track 1)
Neofytos Kolokotronis
(
KDE
)
11:00 - 11:40
KDE develops software products used daily by millions of people. Some are expected to be used by a generic pool of users, others are intended for specific groups. Yet, all of them certainly have the potential to reach even more users. In this talk I will present the various levels of bubbles that our products need to break out from, in order to grow their userbase. I am going to explore KDE applications that are already doing amazingly well, take a look at those that can be considered as great candidates to travel outside our orbit, and provide some tips on how we can enable more of our apps to achieve greatness.
Kinoite, a new Fedora variant with the KDE Plasma desktop
-
Timothée Ravier
(
Red Hat
)
Kinoite, a new Fedora variant with the KDE Plasma desktop
(Track 2)
Timothée Ravier
(
Red Hat
)
11:00 - 11:40
Fedora Kinoite is an immutable desktop operating system featuring the KDE Plasma desktop. It is based on rpm-ostree, Flatpak and podman to create a great user experience with atomic and safe updates for the system (rpm-ostree), the applications (Flatpak) and development tools or containers (podman). Fedora Kinoite is entirely built from Fedora RPM packages which tend to be very close to what upstream KDE is providing. This talk will explain the goals and advantages with Fedora Kinoite and what is coming next to help KDE developers develop and test upcoming desktop changes more easily.
11:40
Closing the distance between CPU and GPU with Signed Distance Fields
-
Arjen Hiemstra
(
Blue Systems
)
Closing the distance between CPU and GPU with Signed Distance Fields
(Track 2)
Arjen Hiemstra
(
Blue Systems
)
11:40 - 12:20
Traditional 2D rendering methods make use of the CPU. However, modern systems feature an increasingly powerful GPU. Unfortunately the traditional methods are not very suitable for running on the GPU. This means we need to reconsider how to render 2D elements. In this talk I will talk about one technique called Signed Distance Fields, which is used by the KQuickCharts framework as well as the ShadowedRectangle in Kirigami. Signed Distance Fields require some changes in how we deal with 2D elements, but once we have overcome those, they become a very powerful tool for advanced 2D rendering.
Make a living in KDE
-
Lydia Pintscher
Neofytos Kolokotronis
(
KDE
)
Make a living in KDE
(Track 1)
Lydia Pintscher
Neofytos Kolokotronis
(
KDE
)
11:40 - 12:20
Last year, KDE e.V. Board announced as a goal last Akademy to put together an initiative with the intent of helping people make a living with KDE products. In this presentation I'd like to explain how we worked out what we wanted to do and how we expect it to evolve in the future.
12:20
Break
Break
12:20 - 17:00
17:00
Sponsors' Talks
Sponsors' Talks
(Track 1)
17:00 - 17:40
17:40
Plasma internals the next few years
-
Marco Martin
(
KDE
)
Plasma internals the next few years
(Track 2)
Marco Martin
(
KDE
)
17:40 - 18:20
Work is starting on Kde Frameworks 6 and the Qt6 transition. The architecture of the Plasma Shell was born in the early Qt4 era, built on top of different technologies. The Qt4 to Qt5 transition brought for us an important technology change: Qt Quick: Plasma was redesigned to use that as its first class citizen for the GUI. While this new port to Qt6 doesn't pose a technology change as big as the Qt4 to Qt5 port, gives us the opportunity to exploit the lessons learned in the Plasma 5 lifetime, and the possibility to refactor and simplify things in order to offer a leaner and more robust experience for users and developers alike. The talk will briefly cover the development history of the Plasma shell in the past and will cover the current plans of architectural and API changes that will happen in Plasma 6.
The Art of Logging
-
Andreas Cord-Landwehr
The Art of Logging
(Track 1)
Andreas Cord-Landwehr
17:40 - 18:20
Proper logging is essential for every software developer. When doing this in a sane way you will be rewarded with easy to understand warnings and errors that allow you to track down many bugs without even having to start a debugger. But this is not everything! Doing logging right allows sysadmins to analyze why certain features of a system are not working. And also for the embedded world, they are the probably most important way to understand, what is going on on your smartphone when it is not doing what you want. In this talk I want to cover the following topics: - How does the Qt logging framework work? How to reasonable create logging categories and choose the right severity? And how to change log levels of your applications? - How do modern logging backends work? Specifically, I want to look into systemd's journald backend and explain how to use it to analyze full system logs and filter them for your application. - At the last section, I will explain how one can access and analyze logs via remote access. In particular this can be done with embedded devices like Plasma Mobile smartphones.
18:20
Addressing wayland robustness
-
David Edmundson
(
KDE
)
Addressing wayland robustness
(Track 2)
David Edmundson
(
KDE
)
18:20 - 19:00
Plasma hasn't been one of the first desktops to transition to wayland, which still gives us the opportunity to make the best transition. One of the biggest issues that face wayland adoption is stability, if a client crashes, you just reopen it. If kwin wayland crashes, we lose everything. This is true across all desktops. This talk showcases work across multiple libraries and toolkits to tackle this at the root with a method of "compositor handoffs" allowing clients to safely securely and seamlessly reconnect to a relaunched wayland compositor. This not only tackles the issue of robustness but also opens up a whole avenue of new opportunities that were previously impossible. We will look at the work done and the upcoming steps remaining for this to reach all end users.
Qt Quick 3D in Qt 6.2
-
Christian Strømme
(
The Qt Company
)
Qt Quick 3D in Qt 6.2
(Track 1)
Christian Strømme
(
The Qt Company
)
18:20 - 19:00
### Title: Qt Quick 3D in Qt 6.2 ### Abstract: A look at features of Qt Quick 3D in Qt 6.2 ### Description: Qt Quick 3D is a modern and approachable 3D engine for Qt Quick. This talk will start by giving a short introduction to Qt Quick 3D before taking a closer look at some of the features available in Qt 6.2 and how they can be used. Examples of topics are: 1. Smooth integration with 2D Qt Quick UIs 2. Animation support 3. Instanced rendering 4. Particle effects.
19:00
Dev Trek The Next Generation
-
Igor Ljubuncic
(
Canonical
)
Dev Trek The Next Generation
(Track 2)
Igor Ljubuncic
(
Canonical
)
19:00 - 19:40
Snaps, the final frontier. These are the voyages of the OSS Snapcraft. Its mission: to help developers create applications easily, to simplify distribution and packaging, to improve security and updates, to boldly run where no one has run before. Self-container applications, with reliable updates and behavior across a wide range of distributions, a friendly store, tons of users. We'd like to invite you to a presentation about snaps, the new software packaging mechanism, designed to make life easier, both for developers and users. In this session, we will show you the nuts and bolts of snaps, the snapcraft command-line tool, the surrounding ecosystem, and take you on a journey of discovery and productivity. Engage.
How we can solve the personal data problem.
-
Björn Balazs
How we can solve the personal data problem.
(Track 1)
Björn Balazs
19:00 - 19:40
Data collaboratives, trusts, cooperatives and many more have for long been discussed as a cure for the current problems with personal data. None of them so far succeeded in practice. I think, we can change this. In my talk, I will provide a vision for a system, that is trustworthy, democratic, transparent and that guarantees digital privacy for each and everyone, while providing fair access to personal data for those interested. I will show that a 'global digital personal data cooperative' can be realized and what we in KDE can do for it right now. Compared to a traditional cooperative, this is facing some special challenges, such as: - Personal data is immaterial - The data is extremely sensible - The problem to be solved is global - There is an existing market, where we can individually trade our data for 'free' services - How we want to handle personal data differs per person and will change over time I will show how we as KDE, free software communities and civil society can deal with these challenges and just start hacking the system right away. We can actually change the world. We can make it securely private again, without loosing the comfort of big data. This is a big vision and this is my first step into general public. Thanks for joining despite.
19:40
KDE NETWORK
-
Bhavisha Dhruve
Tomaz Canabrava
Aniqa Khokhar
(
KDE
)
Aiswarya Kaitheri Kandoth
KDE NETWORK
(Track 1)
Bhavisha Dhruve
Tomaz Canabrava
Aniqa Khokhar
(
KDE
)
Aiswarya Kaitheri Kandoth
19:40 - 20:20
***KDE NETWORK*** aims to grow and diversify our community by outreaching to more countries and create Brand awareness about KDE. This talk will try to enlighten on: 1. The KDE Network team and the methods for reaching out contributors/developers and end users 2. Traverse through the achievements in our Pilot Projects in India-Kerala and Brazil. 3. Explore our upcoming projects.
20:20
Journey from Farm Girl to Holograms
-
Jeri Ellsworth
(
Tilt Five
)
Journey from Farm Girl to Holograms
(Track 1)
Jeri Ellsworth
(
Tilt Five
)
20:20 - 21:20
Jeri Ellsworth will share her journey as lifelong inventor, entrepreneur and maker. The journey from farm girl to holograms is not without its ups and downs. She will share how obstacles were overcome through courage, persistence, and a inquisitiveness about how the world works. Some stories feature Jeri's mentors who were critical to achieving success, whether it was to design the best toy that could delight millions of kids or how to become lead avionics engineer for a low earth orbit rocket. Jeri's current startup is the culmination of an 8-year quest – including a nearly $2million Kickstarter campaign – to bring holograms affordably into every home, called Tilt Five.
Monday, 21 June 2021
07:00
Game Time!
Game Time!
(Social Events)
07:00 - 08:00
09:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
09:00 - 12:00
11:00
AGM
AGM
(BoF)
11:00 - 13:00
12:00
Break
Break
12:00 - 16:00
16:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
16:00 - 20:00
21:00
Game Time!
Game Time!
(Social Events)
21:00 - 22:00
Tuesday, 22 June 2021
07:00
Game Time!
Game Time!
(Social Events)
07:00 - 08:00
09:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
09:00 - 12:00
12:00
Qt Contributors' Summit
Qt Contributors' Summit
12:00 - 16:00
<a href="https://wiki.qt.io/Qt_Contributors_Summit_2021">QtCS Wiki</a>
16:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
16:00 - 20:00
21:00
Game Time!
Game Time!
(Social Events)
21:00 - 22:00
Wednesday, 23 June 2021
07:00
Origami with Tomaz
-
Tomaz Canabrava
Origami with Tomaz
(Social Events)
Tomaz Canabrava
07:00 - 07:30
Did you always want to learn Origami, but never had the opportunity? You're in luck! Sensei Tomaz Canabrava will show you what the art of folding paper is all about. To join in the fun, be sure to prepare three (3) pieces of paper beforehand. If you want, set up your webcam so that it points at your hands and show everyone how you're progressing!
09:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
09:00 - 12:00
12:00
Qt Contributors' Summit
Qt Contributors' Summit
12:00 - 16:00
<a href="https://wiki.qt.io/Qt_Contributors_Summit_2021">QtCS Wiki</a>
16:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
16:00 - 20:00
21:00
Origami with Tomaz
-
Tomaz Canabrava
Origami with Tomaz
(Social Events)
Tomaz Canabrava
21:00 - 21:30
Did you always want to learn Origami, but never had the opportunity? You're in luck! Sensei Tomaz Canabrava will show you what the art of folding paper is all about. To join in the fun, be sure to prepare three (3) pieces of paper beforehand. If you want, set up your webcam so that it points at your hands and show everyone how you're progressing!
Thursday, 24 June 2021
07:00
Game Time!
Game Time!
(Social Events)
07:00 - 08:00
09:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
09:00 - 12:00
12:00
Break
Break
12:00 - 16:00
Fedora Office Hours
-
Neal Gompa
(
Fedora Project
)
Marie Nordin
(
Fedora Project
)
Fedora Office Hours
Neal Gompa
(
Fedora Project
)
Marie Nordin
(
Fedora Project
)
12:00 - 13:00
13:00
MBition Office Hour
-
Kai Uwe Broulik
Eike Hein
(
KDE
)
Johna Thelin
(
Mbition
)
MBition Office Hour
Kai Uwe Broulik
Eike Hein
(
KDE
)
Johna Thelin
(
Mbition
)
13:00 - 14:00
14:00
GitLab Office Hour
-
Nuritzi Sanchez
(
GitLab
)
GitLab Office Hour
Nuritzi Sanchez
(
GitLab
)
14:00 - 15:00
16:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
16:00 - 20:00
21:00
Pub Quiz
-
Adam Szopa
(
KDE
)
David Edmundson
(
KDE
)
Pub Quiz
(Social Events)
Adam Szopa
(
KDE
)
David Edmundson
(
KDE
)
21:00 - 22:00
Friday, 25 June 2021
07:00
Game Time!
Game Time!
(Social Events)
07:00 - 08:00
09:00
BoFs - See the Wiki
BoFs - See the Wiki
(BoF)
09:00 - 12:00
12:00
Break
Break
12:00 - 17:00
17:00
Community's Adventures in Analyticsland - Or the State of the Community Through New Analytics
-
Christelle Zouein
(
enioka Conseil
)
Kevin Ottens
(
enioka Haute Couture
)
Community's Adventures in Analyticsland - Or the State of the Community Through New Analytics
(Track 1)
Christelle Zouein
(
enioka Conseil
)
Kevin Ottens
(
enioka Haute Couture
)
17:00 - 17:40
Things got a bit quiet and slow again regarding the community data analytics. The universe has a weird sense of humor, admittedly it went out of control this time. But behind the scene, things have still been happening in the community at large and with our community data analytics tooling in particular. This talk will explain what's new in that department and produce a new report on the community adventures. No line will be stolen from Lewis Carroll for this talk... until we decide otherwise. ---------------------- In this talk we will pick up where we left in 2018. We focused quite a bit on the history of the tools we use for community data analytics. Because of this we showed only a few phenomena which could but didn't do a large study of the community. Since then, more features have been added to our tooling which allow to leverage more data for GitLab based projects. Since KDE now switched to GitLab for a little while, it is time to take a closer look at the interactions happening there. This is especially interesting since even quite a bit of traffic from mailing lists moved on that platform. We will revisit several older topics under that new light. In particular, we should have a much more precise reading of the contributor networks than ever before. Also, we will see how KDE did under the on-going pandemic.
Releasing Android Apps - Building, optimizing and deploying release APKs
-
Volker Krause
(
KDE
)
Releasing Android Apps - Building, optimizing and deploying release APKs
(Track 2)
Volker Krause
(
KDE
)
17:00 - 17:40
We create more and more mobile-friendly applications, many of which also work on Android. But having to cover the distributor role there as well, how do we actually go about releasing our apps there? Targeting Android with our applications is interesting both for reaching a like-minded community on its FOSS variants such as LinageOS as well as for the vast user base of its proprietary variants, and is in line with KDE's goal of improving our application delivery. However, it is also up to us to wear the distributor hat and take care of packaging and delivery to the respective app stores there. While we have the infrastructure to build nightly debug packages targeting Android for about 25 apps, and distribute those via a dedicated F-Droid repository, only very few applications have proper releases for Android. All of those use custom solutions to build their release packages, unlike on other platforms we have no common infrastructure for this. In this talk we are going to look at ongoing efforts to expand the existing setup of Craft and Binary Factory to also cover Android release packages. Craft and Binary Factory are already used to build Windows, macOS and AppImage packages, covering Android as well promises less dependency, package and infrastructure maintenance work. Building release packages isn't as easy as changing a few build flags though. Particularly for mobile apps it is useful to optimize the package size by ensuring we only include what is absolutely necessary, both for code and data. At the same time it's crucial the package is complete, especially regarding translation catalogs. We'll therefore look at ways to inspect, analyze and optimize the release packages. Finally, a package itself isn't enough for an app store presence, we also need the associated metadata describing the application, e.g. with texts, tags/categories or screenshots. Most of this usually exists in form of AppStream metadata already, and we'll see how that can be used for Android app stores as well.
17:40
Kockatoo: Social Media Made Easy
-
Paul Brown
(
KDE
)
Manav Sethi
Kockatoo: Social Media Made Easy
(Track 1)
Paul Brown
(
KDE
)
Manav Sethi
17:40 - 18:20
<p>Although still in early stages of development, Kockatoo intends to help communities, projects, companies and individuals to post to a wide variety of social media platforms with minimum hassle.</p> <p>In this talk we will look what problems Kockatoo intends to solve, where we are at, and what comes next.</p>
Qt 6: New Features and Roadmap
-
Lars Knoll
(
Qt
)
Qt 6: New Features and Roadmap
(Track 2)
Lars Knoll
(
Qt
)
17:40 - 18:20
The talk will give an overview over the largest changes that came with Qt 6, where we are right now with Qt 6.1 and the roadmap towards Qt 6.2.
18:20
Interactive UIs in Qt Quick 3D
-
Shawn Rutledge
Interactive UIs in Qt Quick 3D
(Track 2)
Shawn Rutledge
18:20 - 19:00
Over the last decade, Qt Quick has become one of the best technologies for developing hardware-accelerated 2D "fluid" user interfaces, and is on track to eventually replace conventional desktop-style widget-based GUIs in many applications. In Qt 6 another possibility is approaching adolescence: you can use the same declarative QML language to create 3D applications too. In this talk we'll explore some of the possibilities: 2D applications for working with 3D content (like CAD, 3D design and 3D printing applications), 3D applications which also contain 2D user interfaces mapped onto the surfaces of the objects (games and simulations), and fully immersive 3D user interfaces. We hope that with all this power available via such an easy language as QML, the community can begin to develop entirely new categories of applications.
The KDE Qt 5.15 patch collection
-
Albert Astals Cid
The KDE Qt 5.15 patch collection
(Track 1)
Albert Astals Cid
18:20 - 19:00
In April, KDE announced a patch collection for Qt 5.15 https://dot.kde.org/2021/04/06/announcing-kdes-qt-5-patch-collection This talk will explain why this patch collection was created, what it exactly is and how it is maintained.
19:00
O² a WIP
-
Nuno Pinheiro
O² a WIP
(Track 1)
Nuno Pinheiro
19:00 - 19:40
The process of creating design in an Opensource Universe. A short intro to Oxygen², what moves it forward, and were I would like it to go. The struggles of design for yourself and everybody else.
Qt Design Studio an Introduction
-
Thomas Hartmann
(
Qt
)
Qt Design Studio an Introduction
(Track 2)
Thomas Hartmann
(
Qt
)
19:00 - 19:40
QML, a user interface markup language, is part of the Qt framework. QML is a declarative language (like CSS and JSON). Qt Quick is the name of the QML based framework for defining modern user interfaces. To break the cycle of painstaking feedback loops between designers and developers the Qt Company is also developing Qt Design Studio a graphical editor for Qt Quick and QML. Qt Design Studio comes also as a free community version for non-commercial users and is available for Linux. This talk is showing how Qt Design Studio with Qt and QtQuick can be used to create applications with a modern user interface and how to involve UX designers in the development process. The free community version is freely available for non-commercial users and can be utilized to improve and speed up the development of Qt/QML Open Source applications. Release blog post: https://www.qt.io/blog/qt-design-studio-2.1-released The download of the free community version: https://download.qt.io/official_releases/qtdesignstudio/2.1.0/
19:40
Working professionally with KDE
-
Aleix Pol Gonzalez
(
KDE
)
Working professionally with KDE
(Track 1)
Aleix Pol Gonzalez
(
KDE
)
19:40 - 20:40
In this presentation I'd like to share my experiences with working with the KDE Community both as a Blue Systems employee who has to work as a developer on KDE products. I would like also to reflect on the experience of having hired several contractors to work with the KDE community and how we aspire it to work for further positions.
20:40
Final BoF Wrap Up, Akademy Awards, & Closing Remarks
Final BoF Wrap Up, Akademy Awards, & Closing Remarks
(Track 1)
20:40 - 21:00