Olinux: How relevant is KDE Project regarding self professional accomplishment? How important is KDE for you profesional carrier? Or How proud are you being KDE's founder?
Mathias Ettrich: Without KDE, I probably wouldn't been doing what I am doing now, that is making a living from Unix programming. In that aspect it was very important for my professional carrier. But writing free software in general is a good start into the software industry, KDE is no exception there. Take the big Linux distributors, for example. You'll find KDE Core Team members in leading positions at S.u.S.E, Caldera, Mandrake, even RedHat. Most of these people got the initial contact through KDE. It's a safe bet for an employer, they look at the code and know what these guys are capable of.
When I initially proposed KDE, I was in the lucky position to be the first one to recognize that the time and technology was there to start such a project. If I didn't do it, somebody else would. The interesting part is the project itself, the great programmers it attracted and the they way it grew without giving up its personality. KDE was the first free software project to address user friendliness and consistency on the desktop. This gave us lots of praise but at the same time also lots of critics, like "copying MS-Window", "not innovative", "destroying the soul of unix" and so on. We survived the critics and proved our concept to be right. This is what makes me proud.
Olinux: Please, evaluate rapidly KDE evolution since it began? Can you describe something that really helped the project to succeeded? Have any ideas of number of downloads of KDE1 and its apps?
Mathias Ettrich: In a very short phrase: when KDE started, nobody belived it was possible to a free graphical user interface that could compete feature wise with the offerings on other platforms. Unix was seen as a pure server operating system, especially after the commercial Unix players managed to even kill the few things that were there. Ever tried a new Sun workstation the way it comes from the vendor? Their desktop - although maintained by quite a large group of paid fulltime developers - is worse than twm plus xclock plus two or three xterms. And that was exactly what people were using instead. The Linux community reacted on this obvious shortcoming by praising the command line as the mother of all interactive computing interfaces and by calling everybody a wimp who wanted to use a mouse. A programmer who wanted to utilize component libraries instead of reinventing the wheel for every single program wasn't a real hacker. To be able to change this attitude within the Linux Community and to turn Unix into a serious player on the desktop, were probably the biggest achievements of KDE.
In fact, unlike CDE and other commercial offerings, KDE was so successful that the FSF not only started to bash it, but also to clone it. This brings us on par with Nextstep at its time and is quite a good indicator for good software. We kept the lead, though, and I don't see this changing anytime soon.
The key to the success of KDE is the huge amount of code that is shared between applications. We implemented the basic idea of free software - code sharing - to a degree that was never done before. This was possible due to two reasons: a) the choice of an object oriented language and its sane use within the project and b) the concept of open source in general. Before I forget it: I said "Linux Community" on purpose, as the BSD people in general were much more open towards the idea of KDE.
For the number of downloads: ask our ftp master Martin Konold (firstname.lastname@example.org), I can't remember all those big numbers ;)
Olinux: Shortly, What are the main improvements on the release of KDE2? How can the KDE2 release help the spread of Linux through the desktops?
Mathias Ettrich: The main improvement is certainly Konqueror, the integrated file manager and browser. Thanks to the KParts component technology, it's a very generic and powerful tool. Basically, it lets you browse and view almost everything, may that be web pages, directories, text documents, images, remote machines or whatever. Via our lightweight middleware, the Desktop Communication Protocol (DCOP), all services are easily accessible to all applications. Overall, KDE 2 is a much tighter integrated desktop compared to KDE 1. For a detailed list of technical changes, please point your browser to kde.
KDE 2 may very well help spreading Linux through the desktops because of two very simple reasons: it's good and it's sexy. People will want to have it and play with it the moment they see it. It's also a big step towards an even more integrated Unix desktop. Examples for this are the full support for the upcoming common NET_WM window manager hints, XDND drag and drop, drop support for the obsolete Motif DND protocol, standard-compliant XSMP session management, full support for the new dotdesktop-file standard and last but not least a wide range of support for applications written with the Gimp Toolkit. Apart from the common DND protocol, we propagate color and font settings to non-KDE applications and make it possible to import legacy pixmap themes. For those who like it, KDE 2 also emulate GTK's native look and feel (a modernized motifish-look with mouse-under effects).
Another thing is support for commercial applications. In the libraries, we brought the Qt and the KDE API closer together. It's more straightforward now to port a pure Qt Application to KDE. After the KDE 2.0 release, we hope that some of the commercial Qt applications will also ship special KDE editions. The Opera browser or the excellent video software MainActor may be two great candidates for that.
Olinux: Rapidly, What are the better features KDE2 will bring to users that Windows doesn't have?
Mathias Ettrich: Users coming from Windows will gain much more sophisticated window management (snap to border, more mouse and keyboard shortcuts, different focus policies, shading), a nicer and more modern look and feel with lots of different window decoration and widget styles to choose from, a fancy desktop panel with applets for various tasks, a multi-session capable terminal window that is really usable, virtual desktops without the need of buying two screens and graphics cards, session management, network transparency, overall more configurability, a great mail client and many more neat applications. One of the most important features I almost forgot: a very stable, fast and secure underlying operating system, may it be Linux or one of the free BSD derivates.
Olinux: What is your involvement with LyX? What about KLyX? Do you think LyX is a good paradigm to text edition?
Mathias Ettrich: Unfortunately I don't have any spare time left for LyX development. Bad for me, but doesn't harm the project much as it's really well taken care of. The only support I currently provide is letting my employer host lyx.org.
Regarding KLyX, Kalle Dalheimer and I eventually want to do another port of LyX to KDE 2.0, based on the newest LyX code. If we do that, it will happen together with the LyX Team and the result will be integrated into the LyX source repository. But nothing has been decided yet.
For scientific writing, LyX is simply the best thing you can get. I couldn't possibly imagine having had to write a master thesis with a standard word processor. In that case, I'd rather choosen plain LaTeX and vi.
Olinux: What will the KDE project next steps: release KDE2.0? What are them? When is the KDE2 going to be released?
Mathias Ettrich: If we stick to our schedule, the official release will be at the 4th of september this year. This requires that we manage to provide the final beta at the 18th this month.
Right after KDE 2.0, there will be development business as usual. Mosfet is working on another iteration of the style engine that unfortunately didn't make it into KDE-2.0 in time, the plain ANSI-C DCOP client will be finished (it works pretty well already) and we'll provide DCOP integration for the most popular scripting languages (we have proof-of-concepts for Perl, Python and TCL). There wasn't much point pushing this before KDE-2.0, because for scripting you need applications talking DCOP first. Still a lot of applications want to be ported to the new KDE 2.0 API and make use of the new features provided there.
Olinux: Why was Qt chose for the KDE team? Would you go from Qt to another graphic library like Gtk? What is the difference between Qt versions 2.0 and 1.0?
Mathias Ettrich: KDE is a true open source project that consists mainly of voluntary work. You can't compare this to commercial open source projects like Mozilla or the Eazel file manager. KDE gets written because its authors want to write it, while those commercial open source projects get written because somebody senses business and pays programmers to do the job. Don't get me wrong, that's a perfectly sane thing to do, but it also has an influence on the choice of tools. While you can easily make programmers work with inferior technologies and let them reinvent everything from scratch by giving them enough money, you cannot do that in a free project like KDE. Free programmers work for fun. Better tools promise more fun. Programming with Qt is extreme fun, as it lets you concentrate on what you really wanted to do: writing an application, not fighting a toolkit or a programming language. If Netscape used Qt, they would have release a modern cross-platform browser two years ago. Now we are still waiting for a final release of Mozilla and what we will get ships with its own middleware, a new component system and yet another widget set. Compare Mozilla with Konqueror, compare the sizes of the development teams, the time they used and the results. Then judge for yourself.
If you compare Qt-2.2 (the Qt version used by KDE-2.0 final) with Qt-1.44 (the Qt version used by the latest KDE 1.x), the changes are endless: Unicode everywhere, the object property system, network classes, XML/Dom, highly optimized 2D graphics canvas, graphical user interface designer, generic table control, MDI workspace, generalized widget styles, rich text output and much more.
Olinux: What is your job at TrollTech? What do you do?
Mathias Ettrich: Together with Arnt Gulbrandsen, I'm leading the Qt Core Group within Trolltech. We are responsible for the technical aspects of further Qt development, what modules to develop, what classes to put in. As a KDE Core Team member, I'm most certainly taking KDE into consideration when making this kind of decisions. My most recent project was the Qt Designer, the long-awaited graphical user interface designer from Trolltech. I'm quite proud that we manage to provide this technology to the other KDE developers under the GNU General Public License (GPL) and I'm looking forward to an integration of our GUI design component into the KDevelop IDE. Apart from that, many new developers needs to be integrated in the Qt development team, which demands a good share of my time as well. But I guess that's simply how it is in a sucessful and fast growing company.