KDE Looks Ahead
An anonymous reader pointed us to an article thats currently appearing at Linux Today regarding the future of KDE. Its essentially a report from KDE2. Talks about their new com solution, organizational changes and more. Its an excellent update on some excellent software.
Kanossa: Speed is not the only reason to make the change. Stability is the other one. mico-c++ was never as stable as we'd need it.
DCOP: It's basically a wrapper around libICE, which is a well known X11 standard that just didn't get as much attention as it should have, and it's entirely possible to build a wrapper that transfers requests from other systems to DCOP.
This message is provided under the terms outlined at http://www.bero.org/terms.html
First off, it seems to me that your only criteria for software excellence is that is has GNU in front of its name. That other people prefer other software, or have no preference, must be beyond your comprehension.
"they use QT"
This is a criticism? Gnome uses QTK. What's the difference? Both are Free and Open. Both are of high quality. One just doesn't have a "G" in front.
"they use C++ to write the core libs"
So what? C++ is an open, standardized and freely available language. Every bit as much as that other language used to write the core libs of Gnome. GUIs use object-like constructs, messaging, subclassing, etc. It makes sense to write GUIs in an OO language.
"they abandon corba"
They did not abandon CORBA. They just stopped using it for the GUI.
"they critize gnome left and rigth"
BFD. You're criticizing KDE but you don't see me crying about it. If it's okay for Gnomies to malign KDE, then the opposite is fair game.
"well, it was nice competing with you KDE."
ROTFL!!! Anonymous cowards now have the priviledge of deciding which desktop will win or lose?!? Make me laugh any harder and I'll start shooting milk out my nose (visual mercifully deleted). This is not a zero-sum game. Both Gnome and KDE can win. But if you insist on only one desktop for everyone, then you will be the one who loses.
A Government Is a Body of People, Usually Notably Ungoverned
First off, Qt is just a pretty at GTK. All you need to do is implement a style. Unfortunately, there are few style available for Qt2.0. I'm on the verge of writing a Qt style engine, but who knows if I'll get time.
But I absolutely agree with you on Qt's productivity! Now I couldn't write a email client in an hour, I'm not that good yet. But I've thrown away dialog editors because setting up layouts and widgets by hand is almost as fast. When QtArch gets upgraded to Qt 2.0, then you will have something very close to a Free RAD.
I am currently working on my second Qt app. The first one took six months. Kept finding a better way to do it and going back and rewriting. I cursed MFC the whole time for teaching me bad habits. This second project is going much, much faster. It's only been a month and it's looking like it will be at feature complete in a week or two. It already looks infinitely better than my first one. Trolls documentation is so great, that O'Reilly's book is almost superflous.
A Government Is a Body of People, Usually Notably Ungoverned
--
.. read this .
GNOME's use of corba is not standard. IIRC, ORBit uses a proprietary authentication scheme that made interoperability difficult if not impossible from the begining.
-matt
I know this seems a bit off-topic, but really it's not. The question is: why can KDE get away with doing something MS is taking so much heat for? And yeah, the answer is: it's not what MS did, it's how and why they did it.
--
Between gnome and kde, i mean. I think this should be a primary focus for the two projects. While it is good to have multiple competing systems for the sake of diversity and innovation, compatibility would simplify matters for programmers and users.
According to kde.org's news, redhat 6.1 includes both windowing systems and as they put it, equal opportunity installation choice for KDE and Gnome. As a new user of Linux, or more precisely, someone who is about to become a new user, I was wondering whether i should install the same desktop on each of my systems for experimental purposes, or would it be more difficult to share applications and files?
Juln
Now that's interesting...
could this mean the end of Mozilla...
wish they'd said more...
Full plate and packing steel! -Minsc
I have a question to pose out there... despite the efforts to make the KDE (or GNOME if you prefer) a unified-feeling interface, it still has the distinct feel of being separated. Part of this is just the UNIX mindset - you write what you need/want, and only that, lots of small stuff over one huge program.
However, I just want to pose a question for my own notes (i.e. PLEASE comment) at what point does it become worthwhile to integrate closely related programs, and at what point is it better to keep them separate? Obviously it's different for every situation, but case examples are fine. For example, while web and e-mail may be better off separate, what about combining kpackage and kfm? (Or leave them alone and provide a third executable that does this?) This applies to libraries too. One large QT/GTK/etc library and header that does it all, separate libraries and headers for core and components?
One of the points on the dual-edged sword that is *nix is that although things are cleanly separated and non-bloated it also does make things genuinely difficult for new users to get around in. Whether or not this is a goal that should be overcome or something to leave in to preserve *nix style is a whole other brand of flamebait. =-)
Just some random thoughts that popped into my head.
I'm sorry to say that I have a bad feeling after reading the plans for KDE2. It sounds like KDE is becoming more and more like commercial software.
If KDE moves away from standards (CORBA) and encourages developers to use its own (open, but KDE-specific) shared libraries for communication between the applications and the desktop, then we can forget about building applications that work well under both KDE and GNOME. Sure, it could still be possible to run the application under both environments, but not efficiently and not with all the nice features that each environment offers. What happened to the nice statements about convergence and interoperability between the two major desktop environments?
Both DCOP and Kanossa would only work under KDE, and it would be extremely difficult to implement anything compatible in a GNOME application (it could be similar, but not directly compatible). That is, unless you link your software with the KDE libraries, but then again the developers would then be tied to KDE. Is it really necessary to give away this freedom (not linking with KDE libraries and Qt) to gain some efficiency?
I find it really distressing that KDE is moving away from CORBA. For one thing, the possibilities of distributed objects are endless. And Microsoft already has such a thing in their DCOM model (which sucks, I know. But still, its there).
Why couldn't they just swallow their pride and use a faster ORB? Say ORBit? I know that there are no C++ bindings, but that's better than falling back to a shared library implementation! The fact is that MICO (which they were going to use) has been pronounced too slow to be usable by everyone who's tried.
And forget interoperability with this thing -- there's no technological basis to make GNOME and KDE interoperable now.
-- Slashdot sucks.
But is this plugin usable for straight Qt, or does it need KDE as well? I browsed through the CVS and didn't find anything usable for straight Qt there.
A Government Is a Body of People, Usually Notably Ungoverned
For those of you familiar with KDE, you'll know it's component model is broken into two parts: KOM (KDE Object Model), and OP (OpenParts). The KDE Object Model is still going to be corba, but the embedding UI component part (OpenParts), will be done using the new scheme. This is similiar to both Gnome and COM.
Of course GNU software won't use Qt. If they could get away with it, they wouldn't use *anything* that's not officially GNU. Rather like Microsoft.
But GNU/GPL/RMS is not the holy trinity of Free and Open software. Not by a long shot. RMS is not my god and I'm not going to pattern my life after his wishes. If RMS doesn't want me to be able to choose a non-GNU desktop, then to Hell with him! I don't give a fart in a hurricane how many people are using Gnome or KDE or whatever. If I wanted to use what everybody else is using, I'd be using Windows.
A Government Is a Body of People, Usually Notably Ungoverned
> insert(mouth(money));
:)
Shouldn't it be insert(mouth, money)? money as a parameter of the mouth() function is a little odd. Then again, money talks
I've finally had it: until slashdot gets article moderation, I am not coming back.
> But really the thing that makes me laugh about it is the endless hours of debate that Linux zealots have had regarding why the Windows registry is incredibly sucky. :)
> And then KDE goes and implements the Windows Registry.
I see no hypocrisy here. Uninformed flaming zealots have a knee-jerk reaction against the registry because it's part of Windows, and real coders like the KDE people implement it because they know better. The main problem with the registry is that it's become abused as a dumping ground. That doesn't make the database itself bad.
I've finally had it: until slashdot gets article moderation, I am not coming back.
However, even more important are all the seperate applications. I recently saw a page with Ksendmail, Kbind and soon to come Kapache. It looks like soon you can rely on KDE for everything and theoratically would not need a text console at all anymore. KDE is setting standards. It compiles, even KDE2 for the most part and it's not even done yet. It's purty. It works and gets the job done.
Of course: KDE is bloated. And perhaps a bit too much like Windows for some.
Nevertheless it's definitely part of my wishlist for Spring 2000: Linux 2.4, Xfree 4.0, KDE2.0, Koffice, Mozilla... I can hardly wait.
Kanossa: Shared libraries rather than CORBA - yeah, I bet it is faster - it should be, too. While I agree that for simple applications this is important, I believe the future for Linux on the desktop is in enterprise envrionments. Distrubuted computing is absolutly fundemental to this, and Kanossa appears to give that away for a bit of speed. As for DCOP... don't try and tell me that yados (yet another distributed object scheme) is going to be promoted. DCOM, CORBA, RPC, DCE, XML-RPC is quite enough for me, thanks.
Remember Win95/Office95 back on a 486? Slow, wasn't it? But all those technolgies (COM/DCOM) which were introduced then are just begining to bear fruit now.
I think this is a backwards step for KDE - at least Baboon (or whatever the GNOME component model is called) still uses CORBA.
OTOH, I REALLY like the embedding of Java applets. That is going to be really useful in the future.
Comments would be appreciated.
Having worked with CORBA for the last eight months, I can say that the KDE 2 direction seems to be the right one. CORBA is a simple, elegant concept seriously let down by its implementation. The language mappings for C++ are horrendous, and the whole thing has that `designed by committee' feel also suffered by Motif.
MICO and the other ORB's that I've used all suffer from being bloated middleware that hinders the development of efficient ditributed applications. In fact, I used a proprietary system that used the same basic concepts as CORBA at my last job. Despite the discomfort I felt using a proprietary system, it did offer a far better API than CORBA.
DCOP looks like it will build on a very efficient foundation, namely RPC and libICE from the X Window system. My only worry is that C++ isn't the best language for implementing such systems, so I hope they are sticking to C for this library.
Chris
Chris Wareham
Although KDE is nice, it could use some major work on speed and memory consumption. While Window Maker and Enlightenment run on my 486/50 MHz with 12Mb of RAM, KDE brings it to a crawl. Although this software was meant for pentiums, it should at least be able to run standalone without any problems, but as standalone apps they are very slow and perform poorly as opposed to GNOME apps which run at acceptable performance levels (even good enough to play that cool Othello game that comes with GNOME, Iagno I think). Even with the slow down, though, KDE is still better, faster and more stable than certain other operating systems.
The best way to accelerate a windows box is at 9.8 meters per second square.
"It sounds like KDE is becoming more and more like commercial software."
What?! First of all, Free Software as defined by RMS, and Open Source Software as defined by OSI, are not antagonistic towards commercial software. On the contrary, they are in support of it. Second, what's so bad about "commercial" software? Not everything can be the result of a hobby. Developers have to feed their families as well, so why not do so using their skills?
"If KDE moves away from standards (CORBA) and encourages developers to use its own (open, but KDE-specific) shared libraries for communication between the applications and the desktop..."
First of all, and this has been stated here dozens of times, KDE is not abandoning CORBA. OpenParts is just a layer between CORBA and the GUI.
Second, why shouldn't they use their own libraries? That's precisely what KDE (and Gnome) is, a bunch of shared libraries! One of the participants in the communication is always a KDE component, so it makes no difference if it is a KDE library or not. The number of people desiring to use the KDE communication implementation between two non-KDE applications is insignificant.
Third, if I recall, Gnome encourages its developers to use Gnome shared libraries as well. That's what makes Gnome Gnome!
"Both DCOP and Kanossa would only work under KDE..."
Not necessarily. Remember your earlier point about them being shared libraries. Nothing prevents the interface from being used by Gnome, XFCE or anything else.
"That is, unless you link your software with the KDE libraries, but then again the developers would then be tied to KDE."
I'm not sure I know where you're coming from with this. All KDE applications have to be linked with KDE, just as all Gnome applications have to be linked with Gnome. If Gnome implements a Kanossa interface, or if KDE adds a Gnome interface for Kanossa, then it doesn't matter if your application is Gnome or KDE. If your application is tied to neither desktop, you will still have to use someone's communication protocols!
"Is it really necessary to give away this freedom (not linking with KDE libraries and Qt) to gain some efficiency?"
What's the difference between linking to KDE and Qt versus linking to Gnome and GTK? Playing devil's advocate, Gnome already gave away this "freedom" when it mandated its own shared libraries.
A Government Is a Body of People, Usually Notably Ungoverned