Facts ?
Here are some small statements or facts that I like to point about KDE and
Gnome. Beware, they are somewhat provocative. You can take them at 1st or at
2nd degree, it is up to you. I like these statements because they reflect a
some key differences about Gnome and KDE.
KDE has achieved what Netscape, Sun and Gnome havn't suceeded in : a browser, an office suit and a working desktop !
KDE renders gtk themes faster than gtk itself !
KDE doesn't contain any GPL code that is copyrighted to the FSF.
KDE is more mature than Gnome. Gnome is two years behind KDE.
Gnome is controlled by the Gnome Foundation, not by the developers
Eazel spent $13 million in a file manager!
Miguel claims things while KDE produces code.
KDE has achieved what Netscape, Sun and Gnome have not suceeded in together !
KDE has a powerful browser : Konqueror.
It is w3c compliant, it features Javascript, Java, CSS, SSL, it works with
netscape plugins. It is not yes as mature as Netscape in certain areas but is
for sure more stable and less resource hungry than Mozilla. And the missing features are coming very
quickly. Don't forget that for the same price, you also get a ftp client,
an info browser, a man browser, a nfs browser, a samba browser, a digital
camera browser tool, a file
managment tool, a post-script viewer, a pdf-viewer, a mpeg viewer, ...
It was done in two years of development by less than 10 core developers, while
Mozilla is out for almost 3 years now, supported by a company and by
free software, and is still not usable as a day to day browser. They should
have realised, when QtScape was done in one week, that Qt was a quicker and
better way to go.
Sun has tried to bring an Office suit to unix with Star Office, now known as
Open Office. But look at it, it sucks
! 400 MBytes of source, more than the whole KDE project in itself ! Who wants
to use such a beast ? It will eat your disk, your memory and your cpu before
you can open any document. And I laugh when Miguel says they will provide
Bonobo components for this.
However, Gnome
already has a good Office suit project I hope they will not discontinue it to
use BloatOffice instead. KDE also has a good Office suit project, named KOffice, which features a spreadsheet
(KSpread), a work processor (KWord), ...
Gnome tries to compete with KDE, in bringing a desktop to unix. They promise
components, Corba, Bonobo, applications, office, etc. But in KDE, we do
already have a solid component model, that doesn't use Corba but is language
and platform independant (XPart with DCOP), and allows powerful integration
(KPart). It is rock-solid, used by more than 30 programs already. We also
have lot of applications, office suite, ...
Gnome technology is perhaps
for tomorrow, KDE 2.0 is here now !.
KDE renders gtk themes faster than gtk itself !
There is not a lot to say, everything is
here.
KDE doesn't contain any GPL code that is copyrighted to the FSF.
First, I recognise there is no need to be especially proud of that. But given
how much the FSF and RMS have been unfairly bashing KDE and praising Gnome, they
deserve this little pitch. And I precise, there is LGPL code in KDE that is
licensed the the FSF.
KDE is more mature than Gnome. Gnome is two years behind KDE.
In Gnome, should strings be allocated in functions calls or not ? Well, this
is not clear as you can check.
This kind of things is exactly why I prefer KDE and Qt to Gnome and Gtk. Gtk
and Gnome still lacks a lot of things that Qt and KDE have had for years.
Examples :
- Should we allocate QString or not ? Well, Qt uses a powerful
implicit
shared mechanism for strings that allow you not to care at all about
such things. Your QString will be managed correctly and you won't have any
segfault or memory leaks. Hey, that's good technology.
- Unicode character display ? You better wait for Gtk 2.0. Oh, Qt has had
that since the
release of Qt 2.0 which was in June, 25. 1999. Quite a long time, no ?
- Anti-aliasing ? Mmh, there is a patch which is enabled by default in KDE
cvs qt-copy and of course, a how-to
.
Many people have been using it and are very happy with it.
Stable API ? Qt and KDE releases are binary compatible.
This means that an application compiled with KDE 2.0 will work without any
change with KDE 2.1 . So you can safely update your system. And if the binary
releases are compatible, you understand that the API is rock-solid. You can
safely develop your application without the need to update it at every new
release.
Good flow of new versions and stable improvements. How long has Gnome
been waiting for Gtk 2.0 ? And Gnome 2.0 ? 2 years ? Finally, the first Gnome 2.0 developer release was without Gtk 2.0. Mmh, such a nightmare in dependancies...
Looking for Canvas ? Well, Qt has had the QwSpriteField for a
long time (1995) and it has been included in the official Qt as the QCanvas,
in August 2000, with the Qt 2.2 . Gnome also has Canvas which are planned to
move into Gtk 2.0, I think.
[ I have attended recently a presentation of EVAS, the new Canvas released by
Rasterman. I haven't got into the details yet, but QCanvas and QwSpriteField
uses exactly the same optimization techniques that he describes. So perhaps,
EVAS for 2D is not more than a QCanvas. ]
XML ? You need to parse and generate XML docuements ? You are right, this
is the way to go. XML tools and
classes are available native in Qt since Qt 2.2.
You want a GPL Toolkit ? You are right, it is not good to allow
development of non-free software without the authors being rewarded. The FSF
insists on that.
But because Gtk is LGPL, you can develop proprietary software with it.
Qt is GPL, so it is really free. If you want to develop non-free
software, you got to pay for a license. I find this a very good free-software
friendly business-model.
Embedding ? Well, Qt has been available for
embedded devices since March, 20. 2000. The api is the standard Qt api, so
all you have to do to port an application to Qt/Embedded is to recompile it
:-). This could also be used on Linux Framebuffer, to get rid of X on your
desktop.
Windows version ? It could be cool to have some Gnome/KDE applications on
Windows, no ? Well, from the beginning, Qt has always been available
for Windows and all Unices. There is now a project which has managed to get
KDE on Windows
Gui designer ? Gnome has Glade, Qt has QtDesigner. They work exactly the
same way, i.e. generate a XML file that is then parsed to generate code.
Generators are available for C++ and Python. Note that QtDesigner can import
Glade files.
Are we over ? No! With Qt, you can have network integration
, OpenGL support, Workspace support for MDI applications,
themability and plenty of other things. You better check directly at their documentation.
Component framework ? Gnome is developing Bonobo but it is still a pain
to use it (it was said at the OSDEM by
Gnome developers). KDE has a stable component technology, KPart
for native in-process embedding and XPart for
out-of-process embedding. KPart is very stable (it is used everywhere in
konqueror) and easy to develop with. Check the tutorials
Good documentation ? You better leave Gtk then! Check the Qt documentation and the KDE
documentation and enjoy it. Complete API reference, detailed architecture
overview, tutorials, references to standards, everything you could have
dreamed of! Who said free software usually lacks documentation ! With Gnome,
you are limited to the "Use the source, Luke" solution, which is not very
friendly.
Bindings ? KDE has Python, Perl, Java, Ruby, Objective C and C bindings.
The Python bindings are extremly well supported and documented. Check the pykde and pyqt
homepage.
I can continue like that during hours. This is all these kind of things that
allow me to say that Gnome is 1 or 2 years behind KDE. Gnome will very
probably have these things in the future but at the moment, they are under
development (for the most advanced of them). In KDE, all this is there
and has been stable for more than 1 year.
Gnome is controlled by the Gnome Foundation, not by the developers
The Gnome Foundation membership is open to every gnome contributor. But the
reason it exists is to make sure companies like Ximian, Eazel, Sun and
others can make themselves heard and can influence where the project is
going. If it wasn't a problem of money, the project could still be controlled
by the core developers. But now, the goal of the project is decided by the
Gnome Foundation members.
Free Software is not only about freely writing software, sharing, modifying
and distributing code. It is also about keeping your projects free from
influences and controlling what happens to them. Free software is made and
controlled by individuals, as opposed to commercial software which is
controlled by companies and boards of directors.
The most successful free software projects are usually controlled by one or
very few individuals (Linux, emacs, gcc, ...). Boards tend to produce
drafts, discussions, reports, talks, ... Small teams of core developers tend
to produce simply code. And this is what Free Software is about.
KDE makes its own decisions freely ! KDE has issued a statement on this :
Now we have been asked "Will KDE ever create a KDE Foundation in the same
sense as the GNOME Foundation?" The answer to this is no, absolutely not. KDE
has always been and always will be controlled by the developers that work on
it and are willing to do the code. We will resist any and all attempts to
change this.
Update:: KDE has now created the KDE
League to support promotions and distributions of KDE, as explained in this article. One could easily draw
parallels between the Gnome Foundation and the KDE league, and argue they are
the same things. But this is not the case. Both associations have common goals
(promote a desktop, help establish a standard), but the Gnome Foundation has a
steering comitee and an advisory board for the Gnome development. KDE keeps
its bazaar model ans is still lead by its core developers.
Eazel spent $13 million in a file manager!
Well, there is not much more to say about it. Eazel had great plans, a lot of
money but in my opinion a very poor Business Plan. They spent their $13
million venture capital in a beautiful file manager, with more than 60 people
working on it. Now Eazel is no more but Gnome has a file manager, at the cost
of the bankrupt of one company. Cool!
But if we have a look at KDE, we see Konqueror, a very good file manager that
can certainly competes with the best browser and file managers available.
Konqueror is developed by a team of approximatively 10 people, from which one
only (David Faure) is a full time paid developer.
Miguel claims things while KDE produces code.
Miguel is a very good PR guy. He claimed many things. That Ximian would
produce an improved version of Gnome. That
there would be some bonobo components for Star Office. He had all the
attention he could dream of, from the press, from the Free Software community.
But when you see the results, you can be disappointed. Bonobo is very heavy,
Gnome 2.0 is late, Ximian doesn't produce an improved version of Gnome, they now
sell propietary module for interconnection with Windows and work on Mono. The
Star Office/bonobo integration doesn't look even started nor possible.
On the other side, look at KDE. No big promises, no big press attention, but a
desktop that is there, has a stable component technology one year before
Gnome, has very good technology that permits developers to now concentrate on
applictions, has anti-aliasing, right to left internationalisation, has plenty
of good applications. KDE just delivers features while Miguel talks about
them. And KDE has never changed its direction, contrary to Ximian/Miguel.
Last modification : $Date: 2002/02/11 19:00:31 $ - $Author: philippe $