ISV/Why use KDE

From KDE TechBase
Revision as of 12:29, 13 May 2013 by Maidis (talk | contribs) (→‎Technologies: KHTML page no longer available, i replaced it with webkit)

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 Community

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 annual KDE Conference aKademy to discuss KDE related topics and shape the roadmap for future development.

KDE e.V.

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.

Adoption of KDE

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.

Development

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.

Documentation

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.

Technologies

KDE provides a wide range of powerful technologies such as WebKit 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).

KDE uses well-known standards like UDev) and D-Bus (interprocess communication).

Compatibility & Integration

The last major KDE release was KDE 4.0. All KDE 4.x versions are binary compatible, i.e. software written for KDE 4.0 will be compatible with KDE 4.5 years later. As KDE is based on standards it is, for instance, easy to integrate applications with plain .desktop files.

Freedesktop.org & Portland

As an ISV, your target is probably not only KDE but all Linux/UNIX desktops. This is made 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.

Sub-Projects

KDE has many sub-projects to more specifically coordinate unique project goals of major supporting applications. Several of these significant projects are noted below:

KDE Pim
The goal of KDE Pim (Personal information management) is to provide an application suite to manage personal information. This includes applications like an email client, a calender etc. The main result is KDE Kontact, our personal information manager.
Calligra
KOffice is an integrated office suite using KDE-technology and features a full set of applications which work together seamlessly to provide the best user experience possible. The office suite contains applications like Words, Tables, Stage, Krita, Kexi and many more.
KDevelop
KDevelop is an Integrated Development Environment (IDE) for KDE. It supports language like C/C++ and Java and helps with rapid application development.

Roadmap

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.

Further details can be found in the roadmap page.