This page intends to help Independent Software Vendors (ISVs) getting into KDE related topics. This includes companies developing commercial applications as well as other Open Source Projects.
The KDE project attracts many people with different backgrounds. As such, the day-by-day growing KDE community includes many developers, translators, artists as well as usability and accessibility experts and - of course - lots of users. For several years now all those people are welcome to meet at the yearly KDE Conference akademy to discuss KDE related topics and shape the roadmap for future development.
The non-profit organization KDE e.V. helps in creating and distributing KDE by securing cash, hardware, and other donations, then using donations to aid KDE development and promotion. All its members are part of the KDE community which means the KDE e.V. plays an important role in the KDE project. Members of the KDE e.V. form several working groups like the Marketing Working Group (MWG) and the Human-Computer Interaction (HCI) Working Group to help realize KDE's vision.
KDE is one of the biggest Open Source projects making the Linux/UNIX desktop's experience much more user friendly. As such, distributions strongly support KDE by actively taking part in its development process and ship KDE as their default desktop environment. Many companies use KDE for production use.
The KDE development process takes place in steady release cycles. Release schedules and feature plans help the KDE project coordinating a KDE release by introducing several phases like feature freeze and message freeze. This phases make sure that developers concentrate on polishing the release and the translation teams have time enough to translate all the KDE software into many different languages. Further information about KDE development tools can be found on the development pages.
The KDE project provides excellent documentation about its API and its technologies, such as KParts or KXmlGui. There are many Tutorials and HOWTOs which help getting into KDE development. An overview can be found at the development pages.
KDE provides a wide range of powerful technologies such as KHTML and KJS which are adopted by other companies like Apple (Safari browsers) and Nokia. Additionally there are several development frameworks like KParts (KDE's component technology), KIO (network/protocol architecture) or KXmlGui (build GUIs based on XML definitions).
The last major KDE release was KDE 3. All KDE 3.x versions are binary compatible, i.e. software written five years ago is compatible to the latest stable release KDE 3.5. As the KDE is based on standards it is for instance easy to integrate applications with plain .desktop files.
As an ISV, your target is probably not only KDE but all Linux/UNIX desktops, that includes for example Gnome. Of course this is possible due to strong collaboration between KDE and other projects like freedesktop.org which defines standards and software that helps integrating applications in all standard conform desktop environments.
One of those projects is the Portland project, which intends to develop a common set of Linux Desktop Programming Interfaces and Tools to allow applications to easily integrate with the free desktop configuration an end user has chosen to work with.
KDE has a lot of sub-projects with different aims. Here are some examples:
An often arising question is: Can I use KDE to develop commercial applications? - Yes, you can develop commercial applications for KDE. KDE's foundation libraries
kdepimlibs but also
KOffice libraries and its major apps are licensed under the
LGPL, which means you can link closed source applications against those libraries. You additionally need a valid Qt License though.
KDE development follows a release schedule in order to coordinate releases. These usually cover for minor releases the last 10 weeks and for major releases the last 20 weeks before the official release. The features planned for a release are usually published at the same time as the schedule.
Some KDE sub-projects have their own roadmaps: