How to Become a KDE Developer

Antonis Tsiapaliokas

In late 2009, Antonis Tsiapaliokas had his first contact with Linux. At that time, he had just started learning the C programming language and he was mostly unfamiliar with KDE software. Less than two years later, he just made his first code contributions to KDE software.

Seasoned KDE developer Tomaz Canabrava, who helped Antonis develop his programming skills, asked him why he chose to contribute to KDE. Read on to find out more on how Antonis became a KDE developer.

Tomaz: Hi Antonis. Could you please start by introducing yourself to our readers?

Antonis: Hi! My name is Antonis Tsiapaliokas and I am 19 years old. I am a computer science student at the Technological Educational Institutes (T.E.I.) of Larissa, Greece, but my hometown is Katerini-Katalonia.

Tomaz: How did you first become interested in Linux?

Antonis: Everything started in September of 2009, when I began taking classes at the T.E.I. I knew about Linux since my high school years, but back then I never considered switching to a new operating system because I was able to do everything I wanted to do with Windows. Moreover, I thought that learning a new operating system would be boring. But when I moved to Larissa I suddenly had a lot of free time and I thought to myself 'let's give it a try', and I installed Slackware in my system for the first time. After that, I tried to find out more about Linux through web searches, and I also learned quite a lot from LinuxTeam, a group in the T.E.I. of Larissa which tries to spread knowledge about Linux and its benefits to the student body.

Tomaz: How did you start using KDE software?

Antonis: In the Christmas of 2009 I removed the Slackware installation from my computer, which was using Xfce 4, and I installed Debian Testing with KDE's Plasma Desktop 4.3. I had installed Kubuntu and Slackware with Plasma Desktop 4.1 and 4.2 in the past but they were too buggy, so I ended up using Xfce 4 instead. I then realized that the Plasma Desktop was very stable and flexible in Debian Testing, and so within a few days I replaced Xfce 4 with Plasma Desktop permanently.

Tomaz: Why did you decide to contribute to KDE?

Antonis: After I started using Plasma Desktop regularly, I became very impressed with the work that KDE developers are doing and I decided that I wanted to help them. I first tried to contribute as a Debian packager of KDE software, but I very soon realized that packaging is not for me. At around that time I took a class at the T.E.I. that focused on C programming, which quickly became my favorite course. I then went to KDE's Wikipedia page to find out what programming language was most used in KDE software. When I saw that it was C++ I thought to myself "great! KDE software is written in a language closely related to my favorite one!" I had come across other languages in the past, such as PHP, MySQL, Javascript or Python, but they all seemed to me either very simple or very difficult without even offering any advanced features.

Tomaz: So how did you take your first steps to becoming a KDE developer?

Antonis: At that point, I started researching the requirements to become a contributor to KDE, and I decided that I should learn C++ and Qt. I wrote a post to the KDE developers mailing list asking for advice, and you kindly offered to help. Back then my programming knowledge was limited. For instance, I knew what functions and variables were and how to use them, but I had to go through a lot of pain and trouble until I was able to write a program using pointers. Thanks to your help, I managed to advance in my understanding of C++ and object-oriented programming and, later on, of Qt, to the point that I feel comfortable using them to write serious code today.

Tomaz: Have you been able to make any code contributions to KDE software?

Antonis: Yes! I have submitted some patches for KMahjongg and I am also preparing a new patch for KMail 2.

Tomaz: Thank you for your time and good luck with your future contributions to KDE!

Antonis: Thank you!

Dot Categories: 


Where can one find the procedure for becoming a contributor?
What qualifications are needed?
How can one tell if one is qualified or not?

There are links to information about getting involved in various ways at

You do not need any formal qualifications. It's very likely that you will have the skills to contribute in one of the areas and otherwise it is possible to develop them.

You can tell if you have the right skills by giving something a try, listening to and learning from the feedback and improving those skills. I think that applies to all of us.