Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
KDE GUI

KDE Strikes Back 361

Nerds writes: "The fourth beta release of KDE has been announced. Also, you might want to check out this editorial at LinuxPlanet. It is a bit biased, but the author makes good points." Its an enjoyable piece that everyone ought to read: it takes some pot shots, and points out some very real truths (and does both with a reasonable sense of humor).
This discussion has been archived. No new comments can be posted.

KDE Strikes Back

Comments Filter:
  • by Sun_Tzu99 ( 224988 ) on Thursday August 24, 2000 @04:34AM (#831086)
    I think that the debate over the linux desktop is the same as the debate over religeon. Which one is the correct/best one? Protestant, Roman Catholic, Jewish Orthodox, KDE, Gnome, or for that matter, Mac OS, M$ Windows of Linux? It all comes down to a matter of personal preference, and there is no real way for a clear "Best" one to be found, they are all good in different ways.
    I personally use KDE, I like it, It works for me, etc... That's not to say that Gnome is bad (M$ Windows is bad) Pick the window manager you like and get over it!

    ___________________
  • I thought the article was quite good, but it's a shame he included sly attacks on Gnome along with mainly factual comments. I was unimpressed with the quotes from anonymous 'Gnome experts who also know KDE', and the rumours about tensions within the Gnome camp, but the points about the languages and API are worth considering.

    If only Qt was LGPLed...
  • by Dan Hayes ( 212400 ) on Thursday August 24, 2000 @04:37AM (#831091)

    As someone who has worked with Microsoft's products almost exclusively over the last ten years but has recently come to appreciate the benefits of open source the sort of ideological arguments that occur in the open source community truly amaze me. I mean, there seems to be little difference between "free software" and "open source" and yet each concept has rabid followers which decry the opposition at every step.

    Thanks to my handy Corel Linux distro I'm well on my way to becoming a Linux "guru". After installing it I tried each desktop and came to the conclusion that KDE is a lot smoother and efficient than Gnome was, and have since been using that. But I constantly hear people bewailing the fact that it's somehow "tainted" by the fact that a couple of words in the license don't match their Beloved Leader's psuedo-communistic writings. And then they go and try and create an entirely new product! So much for the idea of having the source encouraging "code reuse"!

    As a consultant I can tell you that these issues seem rediculous and petty to outsiders. And they certainly add nothing to either the image or the quality of Linux, but instead cause resources to be squandered in duplicate efforts. As long as it works, why should the license matter so much? It's only software, it's not a matter of life and death.

    To be perfectly honest, some of the rabid fanaticism that I see here just strikes me as childish. There's a real need to grow up in some people and get on with improving the code rather than slating the "opposition".

  • I'm still amazed by the amount of people who do not understand that Gnome and KDE are NOT window managers...
    --
    The world is divided in two categories:
    those with a loaded gun and those who dig. You dig.
  • by FascDot Killed My Pr ( 24021 ) on Thursday August 24, 2000 @04:39AM (#831099)
    I'm getting pretty sick of the GNOME vs KDE flamewars. But before you mod me up as +47 Insightful because I'm spouting the party line of "we should all just get along" read what I have to say: Both GNOME and KDE have got it wrong.

    From a economic perspective: You can't win in the marketplace by being "just as good as" the existing Goliath. What features specific to GNOME or KDE are offered that surpass what you can do in Windows?

    From a usability perspective: Why is there all this harping about a "consistent UI"? Check my sig for a soundbite on this, but then come back for an explanation. Sure, it makes sense for a word processor and a spreadsheet to have "File" menus with "Save, Save As, New, Close, etc" all in the same place. But does it make sense for all apps? Think about it this way: My car has a certain UI. My telephone also has a UI. They have absolutely nothing in common but I can use them both very effectively. What if LifeKDE sprang into being and created a phone with a steering wheel? Would I be better off?

    How does this apply to computers? Because a computer isn't just one tool. It is a generalized tool simulator. Every "application" is a tool. If two applications serve radically different purposes, I would expect them to have radically different UIs. For instance, people often mention that Blender has a difficult to learn UI--irrelevant! The purpose of a UI is not to be easy to learn. The purpose of a UI is to afford access to a tool. (if the UI is difficult to remember that is a different issue--internal consistency is a valid goal) To go back to the Blender example, people often go on to say that once they learned the UI quirks it turned out to be very powerful. Exactly!

    What does this have to do with KDE/GNOME? I think each of these projects has a certain amount of validity. For instance a lot of apps need to have file selection dialog boxes. That should probably be a system service. But "standardization" beyond that level is, IMHO, a very big mistake.

    So what do I recommend? I recommend two projects:

    1) The Common GUI Services Project for things like file selection dialog boxes.

    2) The Advanced UI Research Project to do research on what kinds of UI elements work best with what kind of tool and then making that research available to the tool makers.
    --
  • by jmv ( 93421 ) on Thursday August 24, 2000 @04:40AM (#831100) Homepage
    Did I say FUD? He complains about Miguel trying to blast KDE, then he goes on blasting gnome for 5 pages, Nice! I find this whole article so childish! I think he's trying to start wars on just about every subject:
    - license wars (QPL/GPL mess)
    - language wars (C vs/ C++)
    - toolkit wars (QT vs GTK)
    - "commercial wars" (which compagny is good (QT), which is not (Helix)

    At last, when has anybody (relatively important) working on gnome said "Gnome's goal is to kill KDE". This is the worse piece of FUD I've seen in the OSS community.

    (Note: For those who want to know, I use mostly gnome, but use KDE and KDE apps regularly and enjoy them)
  • by vicoder ( 219088 ) on Thursday August 24, 2000 @04:43AM (#831103)
    Thi article is totally biased. I mean to say Miguel did it all for the money and the whole point of GNOME was to kill KDE. C'mon! Get real. Kill off KDE. It was setup as an alternative and sure any software would like to have a user based particilarly from a competing product but GNOME was made as an alternative to KDE because at the time with the QT licenses. This guy seems to be a KDE enthusist in the way he downplays GNOME. What does he consider a nasty comment from Miguel. That he says GNOME is better than KDE? What is he supposed say "Well GNOME isn't as good as KDE but I would like you to use it". Of course not...I mean if he wants users...KDE is very good product and is getting better but lets not downplay GNOME. A bit of irony of the GNOME ethusiast though. the who Free Unices (BSD, Linux) is supposed to be about choice but *some* GNOME developers/users seem to want it to be the only one. This is where they make GNOME look bad. Gnome 1.2 is a very good product from helix gnome and I use it and have the KDE 1.9.2 Libraries for some of the superior KDE programmed applications. Lets keep the competition friendly between the two desktops.

    Anyone paying attention to XFCE Lately
  • by Spoing ( 152917 ) on Thursday August 24, 2000 @04:43AM (#831104) Homepage
    I use a variety of desktops/wms/environments on different operating systems. Most aren't 'compatable' without quite a bit of toil and trouble.

    Under X, it's different. KDE and Gnome -- let alone other wms and apps -- are very compatable, and running programs from one on the other is usually a no brainer. Sure, there are incompatable pieces, but none that prevent you from switching between different desktops/wms.

    The only thing people are griping about are the last few inches of compatability; libs used, file formats, and the main language used to create the reusable parts (C vs. C++) -- *not* that you can't use any of your favorite tools if you switch between them.

    With the exception of licencing, it's a bad idea to even acknowledge this as a any kind of squabble...and I'm not even convinced the licence issues that get dragged up are reasonable after Trol Tech's changes.

    I'm sure there will be plenty of people who think I'm just not getting it. That the issues raised are important in a practical, moral, and cosmic sense.

    Well, I don't see smoke, I see a description of smoke. There's definately no fire. You can't even warm a marshmellow with this.

  • by PimpBot ( 32046 ) on Thursday August 24, 2000 @04:44AM (#831106) Homepage
    ...does it seem to anyone else that Taco is stoking the fires in the KDE/Gnome battle?

    I say this because, well, typically KDE beta announcements are posted by HeUnique. They are typically short and sweet: "KDE Beta x is out. Go have fun."

    Taco, otoh, seems to be posting material that's pretty inflamatory towards Gnome...trying to make KDE look bad. I know people can say stupid things sometimes, but I don't think its _just_ the KDE camp doing it ;-)

    Am I crazy? Ok, well, I know I am, but am I just reading into this too much?
    --------------------------
  • by Tet ( 2721 ) <slashdot@a s t r a d y n e . c o.uk> on Thursday August 24, 2000 @04:45AM (#831108) Homepage Journal
    It is a bit biased, but the author makes good points.

    It's more than a bit biased. It's utterly, completely and unfairly biased. It has numerous digs at GNOME, all conveniently attributed to anonymous sources. It's low on facts, and its only purpose can be flamebait. And at that, I'm sure it will succeed. I have never before criticised /. for posting a story, but there has to be a first tiem for everything. This story crossed the line. Flame wars don't achieve anything, other than lots of page view. Maybe the conspirancy theorists are right about /. trying to get more ad revenue...

  • What people are bitching about is the fact that KDE is not legally redistributable in binary form. KDE is licensed under the GNU GPL, which prohibits distribution unless all of the source can be distributed under the terms of the GPL. KDE uses QT, but QT can't be distributed under the terms of the GPL. Therefore it is not legal to distribute KDE, at least not when linked to QT. Quite simple, really.
    This has little to do with ideology. KDE could fix their problems by removing all outside GPL code and changing their license to one that would permit distribution. Troll Tech could fix the problem by making QT available under a GPL-compatible license. Why they don't do this I don't know, but I doubt there is any ideology involved.
  • Because

    a) Qt existed before a majority of compilers even supported templates, let alone the std::-library.

    b) QString uses UniCode, std::string doesn't. QString also provides reference counting and copy-on-write (yeah, I know that this can be bad in certain situations in multi-threaded environments etc., but it's also much more efficient in the normal case)

  • There's a small Gnome waiting in the middle of the ring. He's getting really cocky because his opponenet hasn't shown up yet.

    The bell rings.

    A gigantic gear falls on and squishes the small gnome.

    Idunno, it seems even shorter than Bigfoot vs. the Loch Ness Monster to me. :)

  • "There's a real need to...get on with improving the code..."

    If it weren't for people like RMS and his "psuedo-communistic" ideas there would be no code to improve. It's licenses like the GPL that ensure that code freed remains free.
    --
  • A large part of the problem is that this zine is propagating the tired old techniques of the industry rags of yore that turned every competing product into a Marketshare War(tm), often fallaciously polarizing the debate in a world with more than two competitors. "Foo Strikes Back", blah blah blah. The debate is deliberately warmed-over to keep us from getting bored.

    I agree with you about the religious issues and flames surrounding licenses. But I found one point you made curious: "They...cause resources to be squandered in duplicate efforts" Are you suggesting that duplicate efforts like gnustep [gnustep.org], gnome, and the host of other desktop projects wouldn't exist without the debates? Don't you think that the hackers behind these projects have better motivation than that? And what, exactly, is wrong with the choice afforded by the diversity that this "duplicate effort" brings?

  • There's a good reason why TrollTech doesn't want to GPL the QT library: they make money off of it for cross platform applications. Trolltech is basically preventing people from forking the QT code, making a QT library that may be backwards compatible with the current QT library but under the GPL license, therefore, undercutting TrollTech by providing it freely.

    Trolltech has probably done as much as they can given their commercial interests to help get as near to the GPL as possible. This only affects how Linux distro CDs are burned or what might be at the offical distro site; you can easily get QT and KDE and whatever else extends from that from third parties for whatever distro you're running. Sure, it's an extra step, but I would think that the distros could explain what KDE is and sites they might be able to obtain it from without too much question.

  • A QString is unicode capable, a STL string isn't.
    Besides, Qt was started before many OSes had a
    useful STL implementation.
  • by The Pim ( 140414 ) on Thursday August 24, 2000 @04:53AM (#831126)
    It amazes me that, for all the emphasis the point receives, a participant in this discussion doesn't understand the difference between free software and free beer. It seems from his diatribe that the latter is all he can comprehend, while it is of secondary importance to the GNU and GNOME projects. It's painful to hear him boast righteously that he won't make much money from his KDE book, while accusing GNU (which has sold software since its inception) of hypocracy for cooperating with corporations on the terms of free software.


    Poverty does not a saint make.

  • by jmv ( 93421 ) on Thursday August 24, 2000 @04:54AM (#831128) Homepage
    What he means:

    It's been a while since the last gnome/KDE flamewar, so I need to start one. Gnomers are always gratuitously nasty about KDE and that's why Gnome sucks. It's also bad because it's controlled by big nasty companies like Helix and RedHat. Fortunatly TrollTech are nice guys and don't count as a big bad company.

    ...no need to continue.
  • by RPoet ( 20693 ) on Thursday August 24, 2000 @04:54AM (#831129) Journal
    Dennis E. Powell has written numerous .comments about Linux desktops, KDE most notably. He's always worth a read, and he makes no effort to hide his bias toward KDE.

    You should read with a critical eye though. It's *always* suspicious to base major points you have on a source who just happens to be anonymous and untracable. For all we know, this may be a cheap trick Dennis pulls to hide his incompetance when it comes to technical aspects like APIs.

    I also question his saying that Gnome was founded with the one goal of killing off KDE. He uses cheap semantics such as "Gnome is written to the venerable and venerated GTK+, while KDE is written to the technically excellent but politically reviled QT."

    He goes on to say "I've tried for years to find out who the king of KDE is, and have concluded that there isn't one." Of course, KDE has a founder and über-developer. Mathias Ettrich is for KDE what Miguel de Icaza is for Gnome, and I've heard him bashing Gnome in interviews lately so I don't see the fairness of that not being mentioned is Denis' article.

    I hate to see all this FUD within the Linux camp, when we despise the traditional FUD. I guess with big things like Evolution, Nautilus and the Gnome Foundation going on in the Gnome camp and the long-anticipated release of KDE 2.0 along with KOffice in the KDE camp, this is bound to happen as a result of natural human pride. I hope we can all see through the FUDding and the bashing and just look forward to getting some great software RSN!
    --
  • by GlobalEcho ( 26240 ) on Thursday August 24, 2000 @04:55AM (#831132)
    Powell has one point that has often bugged me about open source software. Far too much of it is written in portable assembly language (a.k.a. "C"). I appreciate the advantages of this as much as the next guy -- it's good to have a lingua franca, C is widely portable, and a lot of tools for programming it are already there. Nevertheless, C is really primitive, and it's difficult to write reusable bits of code for it. Up until 1997, I had a job where we wrote code in object-oriented languages (C++ and Objective C). Since 1997, I've worked at a place where everything must be ANSI C. That has paid dividends in portability, but we've expended tremendous effort doing things like

    * writing array structures, and functions to operate on them (pseudo-objects)
    * writing standardized error handling
    * synchronizing related structures
    * fixing memory bugs
    * avoiding that oh-so-tempting copy/paste by generalizing function arguments

    all of which would have been alleviated by using some flavor of object-oriented language (or even C++! ;-} ).

    If you look at the code for open-source projects, you can see them inventing the wheel, over and over. I suppose you could argue that things are going slowly in the Java direction, which is fine. But that just means that Gnome is in retrograde motion.

    - Brian K Boonstra (who can't wait to start using Mac OS X)
  • If I'm not mistaked (I may be, though), You can have a unicode string in C++. Since string is just
    typedef basic_strig string;
    You can define
    typedef basic_strig unicode_string;
    or something similar.
  • Well, as far as the point of languages, its mostly a matter of preference. In my experience, his points make no sense tho. C++ is *always* less efficient in memory use. I've heard a zillion times that C++ can be as good as C, but I've never ever _ever_ seen it.

    C++ is further a lot less portable, even between unix platforms (or even compilers!). Every experience I've had with building C++ projects on various forms of unix results in either the compiler being the 'wrong' compiler, the libs being wrong or whatever. Add to that the linking problems (nope, cant link a object file compiled with this C++ compiler to one compiled with that, etc).

    Its interesting to see Mr Powell refer to GTK as venerable. He must have some entirely new meaning of the word, since I cannot think of one that in any way would be appropriate.

    Anyway, it's sort of fun from a flameflinging point of view (and flamewars are always fun), but the author is obviously biased to the extreme and has no idea what he's talking about (read some of Mr Powells other articles for other fun opinion pieces).
  • There are several things I like about KDE that make it a better desktop environment than Windows, IMHO:

    - double-clicking a taskbar icon will iconify that application. great for getting stuff out of your way.

    - right-clicking a taskbar icon gives you a menu which includes 'iconify other windows', which is really handy since I usually have like 14 Konsoles, 11 Netscapes, GAIM, XMMS, Quanta+ and StarOffice open simultaneously.

    - Alt-F2 brings up a little input field which I can use to start an app quicker than using the menus. It keeps a history too, so I can cycle through previous commands.

    - Rotating desktop wallpapers. I have a directory of about 450 hi-color psychedelic 1024x768 wallpapers, and I have KDE set to switch to a random one every 30 seconds. Keeps things interesting.

    - Right click on desktop gives you a menu which includes 'Logout'. I find that much easier to deal with than windows, which requires you to hit Ctrl-Alt-Del or click on the Start button.

    So, I guess it's subtle things like that, that make me like KDE so much.

    I like GNOME in concept, but it just doesn't feel right to me. I installed Helix GNOME the other day... It has a very slick, professional installer, but the underlying GNOME still seems cumbersome and sort of clunky.

    I'll keep an eye on GNOME, and I will definitely check out Nautilus at some point, but for now I'm sticking with KDE.

    --
  • Oops, I lost my "greater than" signs... it should be basic_string&lt char&gt and basic_string&lt short&gt
  • As far as Red Hat is concerned:

    Because we didn't finish building the packages in time.

    We're currently building the packages, and they'll appear on ftp either later today or early tomorrow.
  • What a waste of bandwidth and developer resources...

    There are some things the open source movement could do with learning from the Cathedral...

    I wish to hell both bloody groups would stop their bickering and get on with producing a viable, desktop alternative to MS...

    As a person who uses both desktops (And MS - due to the fact that I cannot use KDE or Gnome for all my tasks) - I'd really like to have one proper environment.

    More to the point, as a Systems designer (In my daytime incarnation), I really, really wish I didn't have to recommend NT 4 on the desktop (With Linux/UNIX in the back room)

    So, if any of the Gnome or KDE developers are listening:

    GET YOUR F***ING ACTS TOGETHER

    Bloody stupid idiots take all the credit and kudos that goes with the JOB of being an open source programmer, but can't actually buckle down to produce what the users want.

    If the Kudos was money, they'd be fired.

  • Heres my interpretation:

    KDE

    Is about stucture and order you have one way to do something and only one way. Everything looks the same, feels the same, works the same. You get on with it.

    Gnome

    It is about having lots of diferent bits and peices that don't quiet seem to fit toegther, you use GTK,Gnome,Bonobo, perl,scheme,tcl,python... You wonder why your Gnome desktop doesn't work like your friends Gnome desktop. You scream at it when something fails to work that should well damn work.

    Only one is an advantage

    If you don't believe me, why is Helix Gnome so popular? It couldn't be that it introduces some standards to Gnome could it?

    This isn't intended as flamebait, just my opinion.
  • by Masem ( 1171 ) on Thursday August 24, 2000 @05:03AM (#831151)
    One reason that GUIs for apps should be consistant (not necessarily similar) is twofold:

    Learning the system. Sure, average /. reader knows how to find things, but the average joe *expects* "File/Save", "Edit/Cut", OK and Cancel buttons, etc. By sticking to basic conventions for all apps, it makes GNOME or KDE more user friendly to all computer users and makes Linux look better and better.

    Scripting. Sure, most of the time Linux people will be scripting using /bin/bash or other shells, or perl or tk or whatever other language. However, GUI scripting can be quite useful. From my understanding of the gtk and kde basics, the concept of scripting is there, it's more a matter of apps using it. It would be nice if, in the end, we had something similar to AppleScript, where each app has it's own mini-API for script calls, so that if I wanted to save a file during a script operation, I can call the app's 'save' function. However, until that's implemented across GUI apps, one will have to rely on the GUI's underlying toolkit to provide said calls, so that instead, I could call "menu file -> item save". Standardizing on names and orders can help very much here as well.

    Of course, it should be possible for advanced users to customize the gtk/kde app, like it was possible for X Toolkit apps to use resources and change every aspect of the design. XML makes for a powerful tool here.

  • Sorry... I did state that "M$ Windows is bad" but I didn't mean it... OK maybee I did.. I'm a rotten human being and I am not worthy of /. because of this one mistake...


    ___________________
  • from the article: Gnome's stated purpose, its whole reason for existence,is to kill KDE. Nice, huh?

    Which just proves the cluelessness of the articles' author. GNOME was started to offer a totally free (in the FSF sense) alternative to KDE. It was also an attempt to coalesce various projects based around the Gimp Toolkit.

    Chris
  • by hey! ( 33014 ) on Thursday August 24, 2000 @05:06AM (#831157) Homepage Journal
    To be perfectly honest, some of the rabid fanaticism that I see here just strikes me as childish. There's a real need to grow up in some people
    and get on with improving the code rather than slating the "opposition".


    Ah, but hard core hacking is a young man's game. Why deny them the pleasures of the young, including passionately naive (or naively passionate?) political activism? Especially when it's so useful.

    Companies play motivational gurus real bucks to light a fire under their employees. The respective Gnome and KDE teams helf self organized into groups whose motivational levels compare favorably to a rutting bull-moose.

    Go Gnome! Go KDE!

    Hey -- motivation is motivation. You can't fault their productivity levels.
  • KDE fans, this isn't a flame. It's a free world, you have choices, and whatever you choose is fine with me.

    But *I* choose not to use KDE, specifically because the underlying toolkit is not Free. Period. Be as "technically superior" as you want, but I am not going to rely on any software built on a proprietary foundation. Been there, done that, got seriously burnt.

    Until such time as the QT toolkit is properly released under a true Free Software licence, then any software that depends on QT will not be installed on my system.

    Yes, it's THAT important.

  • GNOME vs. KDE: Battle of the Desktops [8m.com] runs on a computer called NES. NES emulators [zophar.net] are available for GNU/Linux, BSD, DOS, and Windows.

    Have fun!
    <O
    ( \
    XGNOME vs. KDE: the game! [8m.com]
  • It proves open-source nay-sayers correct. Those people who say that open-source projects only lead toward fragmentation and dissent: they are absolutely right.

    Open source means that people have the freedom of choice. If they want to work together on the same thing, fine and well. If they don't for any reason (personalities, technical, ideology, etc,) they are free to try on their own and the world judges them on their results. I believe that's the entire idea of capitalism too, right?

    Now what would happen if everyone were forced to work on the same project? Sooner or later, egos and personalities would clash. I'd bet good money that before too long, the infighting among them would destroy the project. The current system gives people elbow room to move if problems show up.

    Besides, next time the nay-sayers come around, point out the Linux/BSD fragmentation. Did it produce two crappy OSes? No, it produced two very good OSes which have their own niches. Did the MySQL/Postgres competition produce two crappy databases? Nope, once again, we've got two great products which are excellent in their respective domains.

  • A GPL Qt could not really 'undercut' Troll Tech in any way. You could do nothing with a GPL Qt that you cannot do with QPL Qt today (well, from their point of view). You would still need to pay to get a separate license for the code to develop proprietary software, wether it's GPL or QPL.

    The patch clause doesnt make a windows port unfeasable, and the 'give us your internal code' clause is rather unenforcable.

    As far as I've seen the only reason they dont just GPL Qt free edition is because they feel it doesnt protect their library against *proprietary* use. Legal opinions differ (which is funny, since their free license is regarded as compatible with the GPL in all but the patch clause and internal use clause, neither of which would affect the ability for proprietary software to link to Qt, which pretty much seems like they replace the GPL with a license that make no difference for the one reason they do not use the GPL).
  • I don't think that this was meant as a troll, but let's count the signs:

    • Linux has "rabid followers" - check.
    • poster is a "Linux guru" - check check check.
    • Linux and/or some of the Linux community's members are "communistic" - check.
    • forking is bad - check.
    • poster is speaking from authority as a "consultant" - check.
    • Linux community and its concerns are "petty" - check.
    • duplication == bad - check.
    • community should "grow up" - check.

    These are some of the phrases you should definitely use the next time you wish to start a /. flamefest.

    But seriously, I can see how if you came from a Microsoft background the size, lack of direct organization, argumentativeness, and general confusion on the issues that this community sometimes displays would be very daunting. But there are good reasons for many of these traits - they've developed in step with the community and are as much a part of it as vaporware announcements are in the MS world. Let's look at some examples:

    • "free software" vs. "open source" and the whole argument over licensing. This probably does look wildly strange if you're coming from a background where all software has more-or-less the same boilerplate license; a license where you don't have to read it because you know that you as a user are granted basically no rights. The Free Software/Open Source (see, I'm being inclusive) community argues about licenses because licensing really matters. This community wouldn't exist without three or four more-or-less-open licenses which were carefully constructed to give the user some rights to the software they use, including the rights to make changes and distribute them. Licensing does matter because different licenses bring about openness in different ways, and unfortunately sometimes these ways aren't 100% compatible with each other. If the community didn't have strict regard for licensing terms between different open licenses, then there would be no ground to stand on when real license violations occur (by commercial vendors, for instance). And since there's no central authority to dictate licensing policy, what you see instead is a bunch of hackers with more-or-less accurate knowlege of the situation arguing about it.
    • "pseudo-communistic". Um, no. You should read some of ESR's writings on the topic - this community is generally driven by rampant self interest on the part of the users. This is a Good Thing(tm) - people fix and/or improve what they know. The reason that some folks' writings (not naming names here) are often called communistic is because some advocate decreasing the user's rights to the software a little in the interests of increasing the utility of the software to the whole community.
    • code duplication or forking are bad. On the contrary - the ability to take the code, improve it, or totally replace it if you think you can do better is what drives this community forward. Sure, there's duplication of effort. It's unfortunate that sometimes this duplication is caused not by bad code but by licensing mismatches. But like I said before, the different licenses imply different plans for creating openness in the community. If you want to use software as a tool to advance a particular license, you may have to write that software. But in the process users get more choices, and developers get to try out more different ideas. After all, without a Fearless Leader enforcing a set organizational pattern on the community, you'd never get all of those hackers on the same project anyway :)
      Sure, resources (mainly hacker time) aren't used in the most efficient manner, but on the other hand you can't complain too hard about work that people want to do for free. The free software/open source community is not and will never be a command economy - it really is a wide-open marketplace, where the number one commodity is developer interest and user mindshare. Open markets are rarely as efficient in the short term at sorting out where resources should be applied, but in the long term such a system will be more resilient than the most carefully planned central organization. (I'm tempted to make a comment that commercial development models are closer to being run in the communist system, at least as communism was practiced in the USSR and the PRC, but this is already a huge post, so oh well.)
    • the concerns of the community are "petty". This community mostly argues about the things that any development team (which lacks central management) would argue about - functionality, tools, release schedules, development processes, languages to use, and standards. Just because you don't see Microsoft having these internal disagreements doesn't mean they aren't there. Sure, the open community also argues about licensing, but as we discussed above, licensing is almost the most important issue. A consequence of operating a development team in the open is that the whole world can see your dirty laundry, but on the other hand with this system ideas have to succeed on their own merits and not on management fiat. Meritocracy in action only looks petty because the public gets to see every little argument that occurs.
  • This article is a troll and a banner count generator - Simple as that. It's easy to see that there are not many factual references. All I see from the editorial is an exaggeration of the "war" between the two camps.

    Trolls like this are only going to add fuel to the fears of people outside the open source community that Linux is fragmentating, which is totally untrue, and a myth we don't want to see happening for real or have people believe in.

    Sure the competition can be intense, and probably beneficial to both sides, but the way it is being publicised is much more damaging to the community as a whole.

    On another point Powell loses all journalistic integrity when writes the following:

    "This time it isn't because of anything Miguel has said; he seems to be busy alienating opposing forces within the Gnome community itself through his new company, Helix Code, which plans to make money from Gnome."

    The motives of the Gnome community with the formation of Helixcode have been take totally out of proportion in my opinion. Dennis E. Powell might as well attack commercial Linux distributions at the same time if he wishes to take this viewpoint. In his view, commercial Linux-focused corporations would also be hypocritical for "pretending" to support open source for the benefit of society, but at the same time earning a profit from it! This attack is very unjustified.

    Any organization or corporation has the right to sell their open-sourced products at any price they choose fit as long as the purchaser has the same right to do so, and Helixcode is no exception. It's a fundamental cornerstone of the GNU Public License that Powell seems to totally ignore in blatantly attacking Gnome while sidestepping the issue of Troll Tech's QT licensing.

    Gnome and KDE was originally about bringing about standards to the Linux desktop, but unfortunately it seems destined to become mere cannon fodder for endless flame wars and giving the false impression that Linux will suffer the same failures of fragmentation as Unix did.

    MashPotato - Mobile Array of Support Helpers for Potato

  • It's not about whether you can see source code or not.

    It's about what you can do with it.

    Currently, you can use Qt to write open source applications for X11 only and write bugfixes.

    You can not port it (according to readme that comes with sources) to another platform, be it win32, beos, mac, or future systems like berlin. You have to rely that Trolltech will allow you to port your (GPLed) application to these systems.

    Yes, I understand that Trolls want to make money. I don't object. But I want to run my applications on any platform in my sight. Qt may be technically superior (or may not, we will not discuss it here), but it does not allow run my programs on platforms other that *nix/X11 that I routinely use (e.g. at work).

    1. Open Photoshop/Photopaint/GIMP/etc.
    2. Apply a noise-creation filter (clouds, etc.)
    3. Apply filters.
    4. Repeat applying filters until you are satisfied.
    Good enough?
  • by Havoc Pennington ( 87913 ) on Thursday August 24, 2000 @05:28AM (#831183)

    Although most responses have been positive, some articles and comments about our recent GNOME Foundation announcement have been disappointingly inaccurate.

    In particular, two mistakes are common. The first is referring to the Foundation as "consortium"; the Foundation is not a consortium, but an organization of individual contributors to the GNOME Project. The companies joining the Foundation join an advisory board which has no decision-making function; decisions are made by a board of GNOME contributors elected by the membership. At this time, around two-thirds of the members of the Foundation are independent volunteers not employed by one of the advisory board companies. The Foundation is simply a legal entity that can act on behalf of the preexisting GNOME Project. The GNOME Foundation is comparable to the SPI/Debian and the Apache Software Foundation. For more details, see the press release: http://www.gnome.org/pr-foundation.html

    The second mistake is that this represents some kind of flareup or resurgence of a "war" with KDE. At our press conference, we took pains to discourage this interpretation of the announcement when members of the press asked about it. We are interested in healthy and friendly cooperation with the KDE project and other free software projects. Interoperability efforts such as http://www.freedesktop.org continue and will not be affected by the GNOME Foundation.

    Both GNOME and KDE have valuable contributions to make. We're creating a foundation to help us run GNOME well, and we're excited about the recent commercial acceptance of GNOME, but these things are advances for GNOME, not attacks on anyone else. Our primary focus is to expand the userbase of free software; competing with other free software is not the point.

  • Are you at all familiar with GNOME programming? Many of the deficiencies you mention not a problem with Gnome, because they're available through GLib.
  • by orabidoo ( 9806 ) on Thursday August 24, 2000 @05:33AM (#831191) Homepage
    What people are bitching about is the fact that KDE is not legally redistributable in binary form.

    that is irrelevant. the KDE people are putting a GPL on a product that depends on Qt, and that's a perfectly clear indication that they intend to allow you to redistribute it. If they suddenly turned around and tried to sue you for redistributing KDE, no judge would listen to them for half a second.

    the REAL licensing problem with KDE, is that you cna't write commercial (non open-source) apps for it, without paying Troll Tech. now, we free software hackers don't care much about this, but companies do. that's why you won't see Sun or IBM telling its ISVs that they should code for KDE, which is probably one of the big reasons why GNOME was picked over KDE for the onslaught of big-corp support. The only way Troll Tech could fix this would be LGPLing (not GPLing) Qt, but that would be quite squarely against their interests, so they won't do it.

    other than that, this article didn't seem very convincing. Lots of babbling about politics and personal problems. I say, who cares. If you read the Linux Kernel mailing list, you'll see a lot of politics, conspiracy theories, and bitching and flaming even among the biggest developpers (including Linus himself). And you know what? It doesn't hamper kernel development -- it just moves it along. When there are disagreements, it's better to flame, say what you think, then look for common ground, than to pretend the disagreements aren't there. And no big project can exist without disagreements between people; not KDE, not GNOME, and not the linux kernel.

    and then there's the technical arguments of KDE's superiority because of its greater consistency, which can be effectively countered by pointing out GNOME's greater openness (with multiple programming languages, its use of CORBA, and a non-toolkit-specific component model). I won't pass any hard judgements here: both consistency and openness are needed for a project to be good, and obivously KDE needs more of one and GNOME more of the other.

  • more KDE apps are developed more quickly because QT is C++.

    Really? I've been programming for nearly 2 decades now, and I've yet to see any proof that C++ leads to quicker development, despite what it's advocates may claim. Certainly, I see more gtk+ apps being developed than Qt apps.

    In an object-oriented system, you can reuse menu classes -- i.e., you don't have to reinvent the menu implementation with each library spin off.

    Indeed. You seem to be falling into the trap, though, of thinking that gtk+ isn't object oriented, just because it's written in C. In fact, it is. And it has a nice, consistent menu implementation, too. Just call gtk_menu_new(), add the menu items you require, and plonk it into your application. Simple, really. Just like using the QMenuBar class in Qt. Speaking of which, if your wonderful object oriented system lets you reuse code, rather than reimplement it, why does KDE choose to define its own KMenuBar class, rather than just using the default Qt one?

  • by jilles ( 20976 ) on Thursday August 24, 2000 @05:42AM (#831197) Homepage
    These religious battles seem to be very american. Americans like two sided conflicts and arguments. You have two presidential candidates (al & george), the other two or three can't be taken very serious. Two desktops, in a war there's the good & the bad (and serious confusion if the two change position during the war). Two browsers (yes I know there are a few others but their marketshares are very small). Open source vs closed source.

    And now we are faced with two linux desktops. How boring. On one hand we have Gnome: inconsistent hacked together mess of programs (really, gnome office does not exist yet although gnumeric apparently looks nice). Integration is a dirty word in the dictionary of a Gnome developer. It offers a paper thin cover over the decades old UNIX interface.

    KDE on the other hand is very promising, and has been so for years. Always nearly done but not quite so. Promises to reinvent everything including office apps, browser and filemanager.

    I don't want either. I want mozilla + framemaker + a desktop that lets me use both comfortably. Gnome is too bloated for that, and KDE tries to replace both excellent tools. Perhaps the replacements are good but I don't care. I want a decent filemanager that lets me rename files for instance (bumped my head trying to do that using the latest gmc on a fat drive, doh!). I want copy paste to work with any application, not just Kedit or Kword.

    And guess what, I already know that neither KDE nor Gnome will deliver on any of the above any time soon. Gnome will still be a mess in two years and KDE will still be promising but not yet finished in two years. And I'll still be running windows in two years. Not because it is so great but because it fullfills all my needs. It's bloated, it's ugly, sometimes unstable but the apps I need are available for it and work together nicely in a consistent way. I'd buy a mac if they were priced reasonably. But I wouldn't install linux for desktop usage, even though it's free (as in beer, I don't care about the speech). For me linux is a server OS (and a good one too). Did you notice that the companies backing Gnome are in the server business as well? One of them once tried to deliver a desktop and failed miserably.

    end rant.

  • I wish to hell both bloody groups would stop their bickering and get on with producing a viable, desktop alternative to MS...

    Both groups are already doing that. Just because a few developers write articles like these doesn't mean that both developer teams are completely focussed on bashing each other. In fact, they are coding right now.

  • Helix was going to do this for one project, and they decided not to do it. It is not a requirement for any project at this time.
  • Not every application is an editor. Including editor commands in every application is ridiculous, and can be misleading.

    And for the Blender example, what does File- Save save? The entire scene? The current object? A texture?

    You simply can't have a consistent interface for any and all programs. Even something like "Exit" can have different meanings. Sometimes it means "close this window", sometimes it means "shutdown the app and close a whole slew of windows". It may have a consistent meaning for the programmer, but it can have many for the user.

    As for scripting, I personally believe that engine and interface should always be completely seperated for tools (for toys it doesn't matter so much). I'm going to try very hard not to launch into my usual tirade against XML.

    ---
    Despite rumors to the contrary, I am not a turnip.
  • by Havoc Pennington ( 87913 ) on Thursday August 24, 2000 @05:54AM (#831207)
    Also, the reason was not to fork proprietary versions, that would probably be forbidden by the assignment papers just as it is for the FSF assignment papers. It was just to change license between LGPL/GPL/etc. and be able to defend copyrights in court.
  • by jilles ( 20976 ) on Thursday August 24, 2000 @05:56AM (#831208) Homepage
    A window manager is a curiosity that you need to use X. In the case of KDE it is part of the whole environment (though a replaceable part), and in Gnome you can choose from a few (though I haven't found the right one yet, you know the one that just does its thing without fucking up or being annoying).

    Other operating systems come with an integrated window manager. That works fine for me. So it's not surprising that few people know the difference between a windowmanager and a desktop environment. It's because they should be integrated.

    You might argue that being able to swap windowmanagers adds choice. However, it also makes testing more difficult (which is why it is so hard to get Gnome and windowmanagers to work properly, i.e. not just stable). Now we get to choose between Gnome and KDE, yay. 40% of the apps will run optimally under gnome, 40% will run optimally under KDE and the remaining 20% will run lousy on both. Great choice.
  • writing array structures, and functions to operate on them (pseudo-objects)
    You have to do this in an OO lang too. If the lang is sufficiently complex, you could use a template-type object for a generic class, but then again you can do the same type of thing in C.

    writing standardized error handling
    I've done this before too. It's a matter of a 20-line C source file to implement a fairly complete error handling library. Plus, you could just keep the code around as a personal library type thing.

    synchronizing related structures
    This can get messy. However, in OO programming you should think about these things anyway -- it's as much work, just less coding.

    fixing memory bugs
    Don't tell me you can't have memory bugs in an OO language, just because it's OO. C might benefit from stronger type rules, but there are a horde of utilities for debugging memory bugs, and profiling them as well, for speed optimization.

    avoiding that oh-so-tempting copy/paste by generalizing function arguments
    Um, you can write generic functions in C. It's not even hard.

    Now don't get me wrong, developing in C has its drawbacks, and doing OO in another language can have its advantages. I personally have found ways of dealing with these drawbacks, though, and I find myself at least as productive in C as in other languages (C++, LISP, Prolog, VB, etc.). And I hate to see misinformed people blaming the language for the bad design decisions of the relevant programmers.

    Finally, open source projects do tend to reinvent wheels, but this is NOT the fault of C. It's the fault of everybody needing something a little different for their projects, and deciding to reimplement the functionality.

  • I also question his saying that Gnome was founded with the one goal of killing off KDE.

    Is that not the case? That's why Gnome was started! Because KDE was not open source because of QT.
    Read on Gnome's web page: "The GNOME project was born as an effort to create an entirely free desktop environment for free systems."

    He uses cheap semantics such as "Gnome is written to the venerable and venerated GTK+, while KDE is written to the technically excellent but politically reviled QT."

    What's wrong with that? My understanding is that C is excellent for operating system but that GUI are best done with OO languages... No?
    As good as the C API can be, it will still take longer to develop a GUI with a C interface than a C++ one (and I know what I am talking about!).

    Ok, I am biased toward KDE but so are you about Gnome!

  • by TheDullBlade ( 28998 ) on Thursday August 24, 2000 @06:03AM (#831217)
    That important code is available under the GPL is not proof that it would not be available without the GPL.

    How many programmers who would have written public domain code decided to use the GPL just because "that's what all free software is written in"? RMS didn't invent free software, he distorted the name Free Software for his own purposes ("it's not really free unless you place restrictions on how you can use it" - good logic, Mr. Stallman).

    ---
    Despite rumors to the contrary, I am not a turnip.
  • ('It's a standard only if it matches what we want')

    You know, I've said many, many times in the past here on slashdot and elsewhere. When you command 90% of the market, YOU are the standard, regardless of what the other 10% agree should be standard. It does not matter that everyone except MS agrees that some format should be common, they are the minority, and the "true standard" is what the majority uses, thus windows.

    I have had my arguments with Windows for years, and probably will always have some problems with it, but I have used MacOS, linux, solaris and windows in various combinations for years, and for day to day work, I must honestly say that I am most productive under windows 2000 (which is the first MS release I will call a true operating system, since it actually operates my computer without crashing it ;-) Regardless of what you may think of windows, or regardless of which superiority it may indeed have, it is not the "standard" for desktop computing, it is a fringe operating system for the desktop, and as such, to make it work on the desktop, and therefor to truly SET the standard, it needs to be the dominant player, not just the technically superior product. To do this, it needs to adhere to the standards that people care about, the standards of ease of use and productivitythat they need, and for that, linux is not there. Gnome gets it close, IMHO, KDE gets it even closer, but its still not there yet, the only company to get UNIX of any flavor "ready for prime-time" as we used to say, is APPLE, with OSX. When the power user can pull up a CLI and get down to serious work, and the average user can do anything they need to on their system and NEVER pull up a CLI, then linux/unix will be ready for the desktop and may become a large enough player to start setting standards.

    Once again, I must let out the old battle cry. "If you want linux to dominate the world, you have to make a linux the world can use"


    I think....therefore I am
  • Troll Tech existed to make a profit off Qt years before Helix Code, and now many KDE developers work for Troll.

    But it's a moot point, anyway. Everybody is welcome to make money while making free software.

    Bruce

  • There is a difference between creating completely free desktop and development environment and trying to actively kill off another project. Gnome was not started to kill KDE. A completely free system (beer and speech) was and is necessary given their (Miguel and the other original Gnome hackers) and my worldview.
    ----
  • Bonobo is way to fat for a DE. The statement on the KDE technology page sums it up pretty well. You can find it here. [kde.org]
  • of course they *can* pay them, but do you see Sun recommending to one of its clients that it should pay Troll Tech a large fee? they would if there was nothing else around, or if they had some kind of partnership with TT, but otherwise I can see how they'd rather tell them to code for GNOME.
  • Search for kde2. Redistribute.

    Leave the arguments and grab the funtions.
  • I notice that Caldera OpenLinux and their Technology (Kernel 2.4) preview as well as Suse have precompiled binaries already available, but this is not so for Redhat-6.x and Debian-2.2. One thing I've noticed about GNOME is that the team makes every effort to support most any platform (including other architectures). I recognize that there was once a tiff between Redhat and the KDE teams, but since there are so many Redhat (and to a smaller extent Debian) users here in the States, that if the KDE team wants significant penetration in the US market they're going to have to provide good support for it's most popular distributions.

    I am not biased. I will support KDE if my users request so. But I won't manually compile the tree just to show it off. I think the KDE folks ought to re-think their attitude toward Redhat users and support RH6/7 as a top-teir platform -- one with the potential to attract huge numbers of users down the road. That is the goal, right???
  • No. If they were corporate, they would release a product to make the marketing folk happy even if it wasn't ready. KDE won't release until they're ready with a polished product.
  • However, FreeBSD and Linux are more or less source compatible. GNOME and KDE are not. If several OSs are source compatible, then they survive because software written for one is quickly ported to the other. However, if they are not source compatible, one or the other dies. Think about it. Would anybody use FreeBSD if it wasn't UNIX compatible? Not that many people develop for FreeBSD in particular. If it didn't have UNIX compatiblity, it wouldn't get any apps. Sure it would still have it's own merits, but the total lack of software would kill it. That's the way it is with GNOME and KDE. You can't write an application that works on both (unless you don't take any advantage of the DEs and write a straight X application.) Thus, developers will undoubtedly choose one, and one will undoubtedly win. Due to the nature of Open Source, the other won't die, but will become very marginalized. Take GNUStep. Sure it's not dead, but is it really ALIVE? Also, I find your concept of "freedom of choice" increadibly self-serving. Two incompatible APIs are only freedom of choice for the developer, not the user. Back when there were only window managers, there WAS freedom of choice. Developers generally had to program to the X API (either directly or through toolkits) and all applications worked on all window managers. A person could choose any window manager they wanted, and still be guarenteed that they could run all the applications. Now, you've got to choose one. Either GNOME or KDE. (Or you could use both, but considering their sheer size, that's a bad proposition as well.) Now, it's the developers who choose what environment YOU run. Now, if you want to run KDevelop, your stuck with KDE. (Even if it is inside GNOME, it is still a KDE application. It looks and acts like one, and integrates best with other KDE apps.) If you want GNapster, your going to have to have GNOME. That's not freedom for the masses, that's freedom for developers. Whether it is Microsoft, KDE, GNOME, there is somebody deciding what your going to use.
  • by SimonK ( 7722 ) on Thursday August 24, 2000 @06:24AM (#831243)
    Sigh. Its really not that simple; as the GPL contains a degree of ambiguity the case is arguable both ways. Section 3 of the GPL (covering the distribution of binaries) requires that if the Program is distributed in binary form it must be accompanied either by source, or an offer from some party of distribute source. It is implied that the Program includes all libraries required to run it, but that the components of the operating system are exempt unless they're distributed with the Program.

    The ambiguities with KDE/Qt are twofold:

    1. Since a GUI system and toolkit are generally considered parts of a modern OS, it is arguable that the OS exemption applies to Qt, and indeed could apply to KDE itself. The term "operating system" itself is ambiguous: the GPL implies a compiler is part of an OS, whereas MS would usually exclude it, but argue that a web browser is. Its doubly ambiguous in the case of Linux, where the bits are available separately, but are distributed in a wide range of combinations (which generally do include Qt and KDE).

    2. KDE is licensed under the GPL and LGPL by its authors in full knowledge of the licensing terms for Qt. Thus it is only sensible to assume that in granting this particular license they intended to allow binaries of KDE to be distributed, providing source was available for them, without the source for Qt (since this has never been available under compatible terms). Given this, a judge is going to laught hysterically and award costs to the defendant if they were to try to sue someone for distributing their binaries.

    Given point 2, I really have to wonder why people keep bringing up this infernal argument.

    IANAL. This is legal advice, but comes entirely without warranty :-)

    Simon
  • That is a rather poor example. Is it just a matter of preference whether you believe that God exists or not? Ultimately, there either is, or isn't a God. There cannot both exist a God and not exist a God. And if you're wrong...

    Questions about Truth are not the same as questions about what your favourite colour is, or what would you like for dinner, or do you like your beer on a thoroughly salted napkin or a coaster? Just to pick one religion, Christianity claims that Jesus Christ is God's son...that he existed in space and time. Given the rest of the Biblical narrative, whether or not this is true has an enormous effect on every person that has ever lived, is living, or will live. I'm not even stating whether it's true or not. I'm just saying that the Truth actually does matter. It's not just a matter of preference.

    hope that the day after you die is a nice day.

    :)
    ----

  • by molog ( 110171 ) on Thursday August 24, 2000 @06:25AM (#831248) Homepage Journal
    From the article linked above: "Miguel and the Helixes" are in a running battle with Red Hat and Eazel...

    Maybe I have it all wrong. When Helix really started coming around I remember reading on Redhat Labs [redhat.com] that with Helix working on GNOME usability and how it looked they were going to focus their energy on improving the base toolkits like the GTK. Eazel is making the filemanager thingy(for lack of a better word) to add to the GNOME desktop. This doesn't sound like a battle to me. It sounds like each is working on their own part. Well I don't have anything to add other than that.
    Molog

    So Linus, what are we doing tonight?

  • Read my other post. On UNIX, there are a lot of ways to get things done, but they're all compatible. All window managers (generally) are compatible with each other. You can pipe information from yacc to any type of awk you choose. You can use any compiler you want on ANSI C code. That's not true with GNOME and KDE. It's not you who is doing the choosing, it's the application developer.
  • However many modifications and improvement to it made by the proprietary Unix vendors have not. On the other hand, if it were GPL's they may never have made these improvements. God, aren't license wars dull ?

    Simon
  • Why does everyone always neglect Slackware packages? As of yesterday, there STILL aren't any Slackware packages for 1.92, much less 1.93.
  • How's the speed of this release? On my 300MHz machine, KDE 1.92 is pretty poky. Especially Konqueror which takes a second or two to start up. It's shouldn't be because it is a debug build because I compiled the sources myself, and stripped everything. In fact, all the KDE apps seem to have a built in delay. Everything from Kontrol Center (several seconds) to simple applets (a second or so) take a long time to start up.
  • What's wrong with that? My understanding is that C is excellent for operating system but that GUI are best done with OO languages... No? As good as the C API can be, it will still take longer to develop a GUI with a C interface than a C++ one (and I know what I am talking about!).

    OO concepts can be used also when programming in C if appropriate programming practice are followed. In fact this is how gtk+ works.
    True, coding GUIs in an object-oriented language such as c++ can feel more "natural" to those accustomed to it, but in the end it all boils down to use whatever language and toolkit you feel most comfortable and productive with, it's as simple as that.

  • To go along with the crowd:

    - double-clicking a taskbar icon will iconify that application. great for getting stuff out of your way.

    Single clicking in GNOME on the current app in the task bar does this (so double-clicking to select the app and then iconify it would do it too.)

    - Alt-F2 brings up a little input field which I can use to start an app quicker than using the menus. It keeps a history too, so I can cycle through previous commands.

    GNOME Does this too.

    - Right click on desktop gives you a menu which includes 'Logout'. I find that much easier to deal with than windows, which requires you to hit
    Ctrl-Alt-Del or click on the Start button.


    GNOME with GDM or any XDM-like program will do this too.

    I like GNOME in concept, but it just doesn't feel right to me. I installed Helix GNOME the other day... It has a very slick, professional installer, but the
    underlying GNOME still seems cumbersome and sort of clunky.


    I feel the exact smae way about KDE!
  • The article says:

    > "If gnome-hackers [a mailing list] was archived, you could have a whole debate
    > about a very classical problem of C programming : when a function returns a
    > char*, who owns the char*? Does the caller have to free it? This is just about
    > the most basic problem you can find with C programming. And they're thinking
    > about it just now, after 3 years of development. KDE doesn't have such a
    > problem, it has QString.
    >
    > "This is only an example of a more general trend: their C base puts them in
    > front of a lot of problems which KDE doesn't even face. Of course, KDE has
    > C++-specific problems, but nothing as fundamental as this."

    Well this problem is not solved in c++ as well. This problem stems from a really big architectural problem of general c programming and operating systems. There is no provision for garbage collection and strong typing. I am pretty sure that c++ has - maybe - more refined and precise disposal guidelines for caller/callee then plain-c. Unfortunately, guidelines aren't worth a cent in this case. In a component-oriented, object-oriented environment no-one can keep track of the uses and references to the objects. I mean, no one except the memory manager that could deploy automatic memory reclamation. Of course, reliable memory management (heap-memory, I mean) can be obtained through strong typing: no pointer arithmetic is allowed and each pointer is bound to an object (usually called reference). A language-system can be considered safe with respect to memory, if it support strong typing *and* it doesn't allow for manual disposal of dynamic memory.

    All this, in order to say that it is very childish to argue between c and c++, since both aren't safe languages (a.k.a. they suck, excuse my French), thus both sharing the same pitfalls. This is for example one of the problems that require hardware memory protection to be solved (separate address spaces). Actually, it could have been solved earlier with a better language and system design, without the (at this point) avoidable overhead of heavy-weight processes.

  • "it's not really free unless you place restrictions on how you can use it"

    Huh? What has use restrictions to do with RMS' idea of Free Software? Last time I checked, the GPL was all about software distribution.
  • by Performer Guy ( 69820 ) on Thursday August 24, 2000 @06:45AM (#831272)
    It's surprising the way he sweeps the whole license issue under the carpet. Can even the free non-profit license be withdrawn like he says?
    This is way worse than I had realized.

    The other amazing thing is in the same breath he notes that the KDE GUI is free for NON profit uses then says these commercial companies backed the wrong horse. Why the heck should any commercial entity back a proprietary standard as the desktop for Linux? Does he really expect they are lining up to pay royalties, or to force their customers to pay royalties? They can do that now with Motif et.al. You can get the whole of Windows for less than just the library license fees for the darned Motif GUI on a Unix workstation, in the mean time unix custs are asking why their workstations cost more than wintel systems. The consortium wants to change this and get a standard adopted, not recreate this attrocious situation.

    When are these KDE folks going to get it? The license is CRITICAL. It's THE major obstacle for KDE, it's not enough to dismiss these concerns or say "trust us". KDE-Qt is doomed to be marginalized in the long term unless it ditches the QPL.
  • And, as always, its the little things that make the interface. BTW, that alt-F2 thing works in GNOME, too. I use HelixGNOME as my UI, and I like it about as much as you like KDE. I'm guessing its just a matter of different tastes, which is why I think having both GNOME and KDE available is a good thing.


    -RickHunter
  • the REAL licensing problem with KDE, is that you cna't write commercial (non open-source) apps for it, without paying Troll Tech. now, we free software hackers don't care much about this, but companies do. that's why you won't see Sun or IBM telling its ISVs that they should code for KDE, which is probably one of the big reasons why GNOME was picked over KDE for the onslaught of big-corp support. The only way Troll Tech could fix this would be LGPLing (not GPLing) Qt, but that would be quite squarely against their interests, so they won't do it.


    Yes, and steep cost of commercial Qt would prevent IBM or Sun from developing software. Give me a break, will you?
    I would make a guess: it the commercialy supported Gnome takes off, it would be easier for big corporations to gain control over small commercial company like HelixCode then over a bunch of freelancers from Europe.
    That much for the conspiracy theory...

    -M-

  • I have one pc running windows and one running linux. I use the linux machine as a router and fileserver. Also I like to fool around with it a bit. I installed helix gnome, to check it out. It installs easy, but somewhere it fucked up because the gnome setup lists settings for both sawmill and sawfish. Both report that sawmill/sawfish is not running when I try to change anything. This became true when I finally decided to install enlightenment. I also have Icewm but I didn't like it very much. Enlightenment looks very cool and sort of gets the job done. The only thing is that it fucked up my menu structure (never asked for that) and duplicates a lot of functionality (didn't ask for that either).

    I tried KDE as well (hell it comes installed with mandrake). However upgrading seems to painfull to me (you have to download 20 or so packages) so I won't give 2.0 a try.
  • I'm sick to the back teeth of watching all these fevered egos in the KDE and GNOME camps whacking off in public like two troops of rabid spider monkeys. Snipe followed by counter-snipe followed by smug insinuation followed by all-out shit-slinging rarely seen outside the monkey house at the Zoo. Where they get the time to code is beyond me.

    Point is, I've tried both and they both suck. Why? Because they are shamelessly ripping off a UI paradigm popularised by Microsoft, a paradigm they ripped off in turn from Apple, who designed for a 128K monochrome machine with a 400K floppy drive. If I wanted my machine to work like Windows, why would I have bothered installing Linux in the first place? Both GNOME and KDE actually boast about the extent to which they follow Windows-- "no retraining-- it works just like Windows!" they crow.

    This is cowardly bullshit. Any real user you talk to will tell you how much Windows and the MacOS suck. KDE and GNOME are appealing to the same middle-tier IS management types who mandate the use of Windows throughout their organisation; empty-headed MBA jackals with one hand turning the pages of some gushing ZD publication loaded with "handy" product feature matrices and the other hand tugging at their atrophied genitals. These, all you GNOME and KDE advocates, these are the assholes that put Microsoft on the map, and you are lining up, learning to talk their talk and walk their walk so you can kiss their asses. "No retraining-- it works just like Windows!" You fucking whores!

    Why does the Open Source community have such an inferiority complex when it comes to original UI design? Is it because we don't really "get" GUIs? Is it because deep down we'd just be happy with a command line if it wasn't for those pesky users wanting their icons and their flat toolbars? So instead of sitting down and thinking through this whole UI thing, we just clone Windows? Are you so desperate for mindshare and flattering media coverage that you'd take over screwing your users where Bill Gates left off? A reaming from the Free Software community is going to feel much the same as a reaming from Microsoft come morning. "Microsoft spend millions on usability! We don't have the resources!" scream the apologists. You idiots. That's a PR exercise if ever I saw one. Microsoft spend that money to impress the middle managers who are their real customers; the rest can go hang. Do you really think Microsoft ever ditched a single line of interface code because it raised a usability issue? The whole thing is a snow-job; it gives Microsoft plausible denial: "What? You say our products are unusable? Well, we spent squillions on usability last year-- you must be a retard or something."

    The 15-year old Mac GUI metaphor is creaking badly; it doesn't scale. I have a 6GB hard disk at home (tiny by today's standards); how am I meant to navigate it, to manage? With a GTK+ tree control? Think again, Mr. GNOME Man. Furthermore, we're stuck with Mac UI dogma that made sense on a 128K box but not on a machine with 32MB or more of RAM. A one-shot Clipboard in this day and age? Puh-lease! You want me to click File, Save every five minutes? Give me a break; I could record every damn keystroke in my word processor including ^H and never run short on hard disk space. File Open dialog boxes? They were a hack because the first MacOS was single tasking and you couldn't get at the shell!

    Think, you freaks, think! All this sniping about code reuse and re-inventing the wheel. Both camps started re-inventing the wheel before the first line of GNOME or KDE code was written, and you didn't even notice.

    Read this [fatbrain.com] and this [fatbrain.com] and then come back to me.

  • well, with ascii I suppose yes. But with anything else you are on your own.
  • But QT has a foundation, too, and it has pledged to keep QT free for noncommercial use.

    IBM and all the other big boys probably want GNOME for Commercial use. Thus they would probably have to pay to QT or Trolltech.

    Why pay for milk when you can get the cow for free? GNOME is just that the cow, and you get the whole thing free. NO annoying popup ads no shareware reminders free. No license fee, etc. And they have the source to GNOME, Gtk+ and all the apps as well so they can tweak them as they need. They can't do that with KDE and QT. KDE yes QT NO. KDE is the milk that companies like IBM and et al pay for. Not KDE in and of itself, but QT. Think about it.
    ~~~~~~~~~~~~~~~~~~~~
    I don't want a lot, I just want it all ;-)
    Flame away, I have a hose!

  • Gnome is currently the snowball that starts the avalanche. With bonobo in place and people writing reusable components left and right, gnome code will start improving by leaps and bounds. Predicting that corporate involvement will not significantly advance gnome is foolish.

    The whole language issue is similarly silly. You can pretty much program in what you like, which is how Linux has worked all along. And ORBit bindings are either already in place or being worked on for all the big languages (including C++.)

    He does have a very good point about documentation though. Thus far I'm not aware of any resource that will tell you everything you need to know about Bonobo programming, for instance. Gtk/Gdk have reasonable resources available, but gtk-- is barely documented. Hanging out on the developer's list will provide insights into various things, but not everyone can afford the time to read the developer's lists every day.

  • Fair point. I can see how that could be an issue. I guess in those cases the only way is to fall back on the OS exemption. This does still seem to hold water to me, but its less clear cut.

    Simon
  • If a function returns a char* the author asks who is supposed to free it when it is done. Uhh if you are done with it, then just do a if (char != NULL) { free(char); }

    I think that should do it. He makes it sound like C is sooo bad. If C++ was so great why is just about every version of UNIX written in C? Obvoiusly if you have C programmer s to write the OS it should not be difficult to find C programmers to work on GNOME either. C++ is not that great, it has its problems too. This author is just bias and this article is really just here to get the KDE vs GNOME war going. Gee maybe KDE developers should help write the C++ interface to gtk+ and then port KDE to that.

    On another note has anyone tried gtkmm??
    ~~~~~~~~~~~~~~~~~~~~
    I don't want a lot, I just want it all ;-)
    Flame away, I have a hose!

  • It all depends on who you talk to, but many people would disagree about your four "requirements".

    The people over at Open Implementation [xerox.com] would probably disagree with your statement that a "black box" is necessary to be object oriented (or even that it is desirable at all).

    Delegation based languages like Self don't have inheritance but achieve reuse all the same.

    Typeless languages don't need polymorphism.

    I don't think multi-dispatch would be called "messaging", as there is no "recipient" like there is in single-dispatched languages like C++.

    Maybe it's just me, but your four points seem very C++ biased. If you want a different bias of what is "required" to be object oriented take a look at what Eiffelites [eiffel.com] might say:
    1. should have the notion of class as the central concept
    2. must have assertions to check preconditions, postconditions, and invariants and produce documentation from them as well as check them at runtime
    3. classes should be the only modules (i.e. no "namespaces" a la C++)
    4. every type should be based on a class (so long C++ and Java)
    5. it should be possible to specify which clients can access which features (i.e. finer granularity than "public", "private", and "protected")
    6. the genericity mechanism should support constrained genericity (i.e. only classes with the method "sort")
    This list is no more or less biased than your own.
  • Please, before I continue, let me assure you, that I'm not trying to
    flame/convince/icmp attack you.

    Ok, now that we got that straight, let me introduce myself:
    I've been using linux for 4 years (since slackware 3.1, kernel 2.0.0),
    pretty much exclusively for the past 2. So although I'm not really an old
    timer, I'm not a newbie either. I'm also a final year undergraduate
    computer science student at University College London. I have run various
    versions of slackware, tried debian & mandrake, and I've settled down now
    with my own tweaked version of redhat. Through my university course, I
    have been exposed to various unices, running from IRIX to sunos (from
    openlook to CDE).

    I used to be running KDE, being very enthousiastic about it, since the
    first stable version (1.0.0) came out. I was (still am really) very
    impressed about it (didn't really care about the licensing issues), as I
    was with all the updates as they happened. It was pretty much the best
    unix desktop I had ever seen (although too windows-like//let's not kid
    ourselves (this is not a bad thing per se)). When I switched over to
    redhat (version 6.0), I tried gnome for the first time (version
    1.0.something) and found it appauling (didn't really try too hard to learn
    it). It was much too slow, enlightenment and gnome didn't really cooperate
    to such an extent, seemed bloated, and was far less stable than KDE.
    However 2 things I did take notice: DragNDrop worked both with xmms (or
    was it x11amp then?) and with Netscape. I wondered: Netscape was out for
    SO long (much older than KDE). Why the hell didn't motif dnd work with
    kde? (let alone xmms). But I switched to KDE anyway, and kept recommending
    it to anyone who wanted to use linux. However, after upgrading to redhat
    6.1, I tried gnome again, played with it some more and updated all the
    packages through redhat rawhide. I also installed sawmill (now sawfish) as
    a window manager, which cooperated to a much better degree. I was stunned!
    Although a bit slower than KDE (and less stable, but certainly more stable
    than the shell of an OS of a certain large Redmond-Based company), it
    totally blew KDE away at my opinion. DnD worked! Mouse-wheel worked. It
    looked far better than KDE and was certainly more customisable. Or so I
    found it. And I've been using Gnome since (I've also installled some kde2
    betas). (I've on to your article. (btw I seriously recommend (out of
    open-mindness at least to try the latest version of helix-gnome))

    Everyone deserves an opinion, so please do hear mine:

    "Every six months or so, hostilities once again erupt between the KDE and
    Gnome communities. These battles are usually sparkedwhen the king of the Gnomes, Miguel de Icaza, grants an
    interview and just can't seem to resist saying something gratuitously
    nasty about KDE."

    True, but you must admit that KDE is pretty arrogant too! At every
    occasion it keeps boasting that it is the "Leading desktop for Unix" or
    Linux, at every occasion. If you want to be exact, CDE or TWM is the
    leading desktop for Unix and it is debatable if KDE is for Linux. Redhat
    and Debian have a huge linux market share. Plus, the Gnome Foundation
    really (whether we want it or not) makes gnome the "leading Unix
    desktop" simply because Solaris is the most popular Unix OS. Please note
    also how TrollTech a company bashed gnome in the recent QT-Designer app.

    "(The argument is that because the QT toolkit used by
    KDE is proprietary, KDE is tainted. But QT has a
    foundation, too, and it has pledged to keep QT free for noncommercial
    use. And as a practical matter, withdrawal of free use of QT would
    make as much sense as Adobe withdrawing Acrobat Reader.) Gnome's stated
    purpose, its whole reason for existence, is to kill KDE. Nice, huh? "

    The argument is that it's illegal to tie GPL (under which KDE is released)
    with the QPL. This might not make much sense to the users, but it is
    important to the free software movement in general. The GPL has not ever
    been legally enforced. What if some large unknown corporation, took out
    say the best parts of the linux kernel and incoporated them into their os,
    without giving any source back. How will the GPL be legally enforced, if
    projects as popular as KDE also violate it? Plus Gnome sole perpose isn't
    destroying KDE. Not at all. Even collaboration efforts have been made This
    is simply the third attempt of the GNU project to create a GNU desktop
    enviroment.

    "(Does anyone else see the irony of a project headed by a guy who's in it
    for the money, backed by companies who are in it for the money, getting
    the official Glorious October Revolution seal of approval, while a
    volunteer effort driven by sheer love of the project does not? Yes, there
    are people from distributions who work on KDE, but they have not set up
    little companies for themselves to capitalize on it.)"

    I really doubt that Icazza and the rest of the gnome team is only in it
    for the money. Two years ago, when gnome started and KDE was light years
    ahead, you cannot argue that people were in it for the money! You should
    also note that many people have set up companies to capitalise on another
    free software project: the GNU/Linux OS. They're called Linux
    Distributions, and they have offered a great deal to the Linux movement
    and operating system, just as Helix-Code have done to gnome (if you were
    using gnome, you would have seen the great progress that gnome has had
    since the introduction of helix-code).

    "Gnome is written, mostly, in C. KDE is written in C++."[...]"Goodbye,
    easy portability to other platforms. KDE, on the other hand, has reuse of
    code as a goal, which is why KDE2, though far more powerful, often has
    less memory footprint than does earlier versions."

    If you want to code an application for KDE you can only do it in C++. Even
    if additional code has to be loaded (but certainly gnome-apps are not as
    slow/inefficient as statically linked apps), it is still a great advantage
    for gnome that you can code gnome apps even in pascal, or Lisp or python
    (or C++ of cource). (though I think there is a PyQT module which allows
    apps to be written using Python). Gnome is also Very much portable. Look
    at all the binary distro's that helix is offering (not only Linux). Plus,
    you cannot argue that Gnome has not reuse of code as a goal! Look at
    gnome-print as an example. And also, if KDE/QT has reuse of code as paramount, why do KDE1 apps need to be PORTED to KDE2?

    "But even sticking to C, I'm told by programmers fluent in both, Gnome
    faces a world of technical issues to overcome before it is on par with a
    project, just starting out, in C++."

    That is VERY debatable. GTK which is very much OO is written in C.

    ""If gnome-hackers [a mailing list] was archived, you could a whole debate
    about a very classical problem of C programming : when a function returns
    a char*, who owns the char*? Does the caller have to free it? This is just
    about the most basic problem you can find with C programming. And they're
    thinking about it just now, after 3 years of development. KDE doesn't have
    such a problem, it has QString."

    I don't see any USERS having a problem with either gnome's or KDE's
    interpretation of character strings :-)

    "Gnome is written to the venerable and venerated GTK +, while KDE is
    written to the technically excellent but politically reviled
    QT. (Technically excellent? Youbetcha. I still have here a copy of QT
    Mozilla, in which Netscape Navigator was ported to QT in one man
    month.) Compare the documentation of the two. Look at the new QT Designer
    integrated development environment. Look at the documentation and tools in
    GTK+. Which would you rather write to? Likewise, the specific
    documentation for the developer heavily favors KDE."

    If I am not mistaken, QT is older than GTK+. Technically excellent is
    again debatable. Even if you do not like gtk+, it has grown much faster
    than QT has, introducing more widgets and supporting features like
    mouse-wheel faster than QT. QT is also very nice and easy to program
    with. GTK+ has also been ported to win32 like QT. You also fail to note
    that QT Mozilla, has, well failed. Mozilla uses GTK instead. QT
    documentation is indeed very nice. But so is GTK+ / Gnome! Have you
    checked out the gtk.org gtk intro? Or the "Gnome/Gtk+ Application
    Development" book (http://developer.gnome.org/doc/GGAD) (also in
    bookstores). ? They are both very well written. Plus there exist gtk+
    /gnome C++ wrappers like gtk-- which making coding much easier for the C++
    crowd.

    "While we're making comparisons on a developer level, it might be a good
    idea to look at kdelibs v. gnome-libs. The KDE libraries are well
    understood to the extent that a bug is often fixed almost instantly. Gnome
    (and GTK+) are another story, according to a very highly respected Gnome
    and GTK+ expert who knows KDE and QT as well."

    kdelibs vs gnome-libs is an interesting point. kdelibs have been frozen at
    version 1.1.2 for several months (close to a year maby). gnome-libs are
    constantly updated and Helix-Update can automatically update
    them. End-users do not care if bugs are instantly fixed in CVS or source
    pathes. Gnome clearly wins in this one. Plus you cannot quote a "very
    highly respected Gnome and GTK+ expert who knows KDE and QT as well.",
    without giving his name!

    "The KDE project was designed to produce a great desktop for Linux and
    related operating systems, while Gnome was given the task of killing KDE
    and, on the way, producing a desktop."

    That is simply not true. You are unfairly bashing gnome now.

    "KDE has an office suite weeks away from release; Gnome has played with
    one (and an element of it, the Gnumeric spreadsheet, is by all accounts
    quite good)"

    You are wrong: Gnome Office has the following elements, out NOW (unlike
    KOFFICE, which although VERY good (I use it) is still unstable and in
    beta)

    Abiword: Good, lightweight worprocessor which can import .doc documents
    (much faster than KWord btw, but has less features).
    The Gimp: No intro needed :-)
    GnuCash: Quicken like money managing program, very nice
    Gnumeric
    Gphoto: digital camera manager
    DIA: a diagram creation program (supports UML :-)

    Also, helix-gnome has written evolution, which by all accounts, is the
    greatest linux mail program (maybe in all platforms!)

    " but now seems to be counting on the largesse of Sun to cough up a port
    of StarOffice (well, speed and memory efficiency weren't a consideration
    to begin with, were they?) for a pre-packaged office suite, those who have
    worked within the Gnome project be damned, about which more in a
    little. There is likely to be a StarOffice for Gnome available for
    download within the next year or two."

    Competition is never bad. After all, I too wish KDE 2 to succeed, so that Gnome will also advance.Everyone applauded Sun for releasing staroffice. Granted, it is bloated, but it is the best productivity suite out for linux at the moment (sure beats Corel WPO for stability and
    speed). Plus OpenOffice (as it is now called) will remove stardesktop, and
    will have only single individual apps. Plus you do not KNOW that
    Gnome/Staroffice will be available in the "next year or two". For all you
    know, it could be available this December.

    "Which is another issue with Gnome. No one knows anything about release
    schedules. Gnome developers grumble privately about it, and publicly when
    events such as the release of Gnome 1.2 surprised developers and led to
    some very hard feelings within the project. It's generally thought that
    Gnome 1.4 will be released sometime around Halloween, and Gnome 2.0
    sometime around -- well, let's be satisfied with sometime. KDE, meanwhile,
    publishes a schedule. Yes, it slips, sometimes more than anyone is happy
    about, but everyone is kept informed."

    True, KDE does keep a more tight schedule. But: KDE-stable is still at
    version 1.1.2 for nearly a year now (maybe more than a
    year?). Gnome-stable on the other hand, has really advanced on the same
    timespan. It has many more features, it is faster etc. Gnome has advanced
    MUCH faster than KDE. Also you should note that the Gnome release schedule
    is much more like the Linux kernel release schedule. It will be released
    "when it is ready". Believe me, you do not use gnome, but if you had used
    it, you would have really known what all this time has done to Gnome. The
    improvements are countless.

    I do agree that gnome should abandon the war, and start pursuing
    excellence. But KDE should do that to, staring by stopping calling itself
    the leading desktop for Unix. I do not know of any unix cluster that uses
    KDE!

    Well I undestand that you will not agree with some of my points. Linux is
    about choice after all. But I really think that articles such as yours,
    can fuel the fire. Do give gnome a shot. Helix-code has created a
    wonderful installer for anyone to use. Plus gnome can be customised to
    match any personal preference. I really cannot describe the number of
    features that the latest helix-gnome has. Do give it a try.

    I hope that you will read my letter,

    Stefanos
  • I think that the debate over the linux desktop is the same as the debate over religeon. Which one is the correct/best one? Protestant, Roman Catholic, Jewish Orthodox, KDE, Gnome, or for that matter, Mac OS, M$ Windows of Linux?

    I found my desktop much quieter once I recompiled the kernel with the JIHAD option disabled ;)

  • I hate to try to be the voice of reason in here, and I'm sure I'll be flamed to the hilt, but here goes anyway.
    • the article had some points, however, it was a little overboard in it's 'gnome sucks, kde rocks' attitude. It's fine to feel that way, but when every sentance is a slam, you (or at least I) get a sick feeling reading it.
    • some of the points, like making money from gnome, are kina irrelevant. In the interview posted on /. the other day (link [slashdot.org]) the way they were going to make money was by keeping the software free and open (beer+speech) but offer a *service* to aid people using it. This is how people can survive economically in an open source world.. this is also a service that I would use.
    • KDE vs GNOME is personal preferance. Both have good and bad points, but in the end, you use what you like or are comfortable with. I use gnome becuase I like the way it looks and feels. [random other person] uses kde for the same reasons. Who cares beyond that.
    • At the end user level I don't care at all if one is written in C and the other C++. I care if the applications and environment *feel* comfortable to me and the apps do what I need.
    • It appears everyone is missing the "use the right tools for the right job" philosophy that comes as the result of most "us vs. them" arguments. Macs have their place, as do windows machines, as do linux machines, as does kde/gnome/fvwm/xfmail/mutt/pine/elm/gimp/photoshop ....
    • having read some articles on UI design I know that both kde and gnome break a huge number of rules... or at least ideas of how a "well designed" GUI should work.
    • I really don't think that GNOME is out to kill KDE. It is there as an alternative, though it was started because of the politics of KDE.
    • Alternatives are good.
    • Choice is good.
    • Competition is good. One thing about the gnome/kde debates that people seem to miss is that a huge number of STANDARDS compliant (or at least semi-standards compliant) apps have been written since this whole war started. While the kde coders are trying to outdo the gnome coders they are all creating decent apps and making them better over time. The end result of this is that in the end we have more choice, more apps, and better apps.
    Now folks lets come to our senses, realize that we're all on the same team with the same objective... to make linux better.
  • Just off the top of my head, here's something you could do for (non-threadsafe) error handling in C:

    #include
    #include

    extern struct exc_env_t {
    struct exc_env_t *prev_env;
    jmp_buf env;
    } *cur_env__;

    #define try \
    do { \
    int jvr__; \
    struct exc_env_t *ne__; \
    \
    ne__ = malloc(sizeof *ne__); \
    assert(ne__); /* maybe put in a diagnostic here? */ \
    \
    ne__->prev_env = cur_env__; \
    cur_env__ = ne__; \
    \
    jvr__ = setjmp(cur_env__->env); \
    if (jvr__ == 0)

    #define catch(e) \
    else if (jvr__ == (e) && (cur_env__ = cur_env__->prev_env, \
    free(ne__), 1))

    #define catchall \
    else if (cur_env__ = cur_env__->prev_env, free(ne__), 1)

    #define endtry \
    } while (0)

    #define throw(e) longjmp(cur_env__->env, (e))

    And then you would define cur_env__ in a module somewhere. OK it's not exactly 20 lines, and I don't know that you could get something really generic and useful in 20 lines (unless your lines are 100 characters long I guess, hee hee). Preferrably you would carry around something else in the struct exc_env_t, like a string or an object or something that would help describe the exception. There are a few other problems here, but nothing that wouldn't be completely and utterly trivial to implement. BTW a sample usage might be:

    try
    throw(error_super_cool);
    catchall {
    try {
    some_function();
    another_that_might_throw_an_exception();
    } catchall
    exit(1);
    endtry;
    } endtry;

    I think I saw something like this on Freshmeat once, but wasn't very impressed with it for one reason or another. Anyway, hope this helps.

    Hope Slashdot formats it well :)
  • but not for closed source projects.

    It's funny how all the advocates of Gnome claim that QT can not be used for commercial projects... Use an Open source license for your comercial project like StarOffice and you are fine with the QPL....
  • The main difference I think would be garbage collection. C++ will (I dearly hope) automatically destroy all variables in scope (hence free()ing allocated blocks) when you longjmp()=throw. With C it's a little bit more tougher. One approach (which I usually use) is to have an object on the exception environment stack that tells the calling function what needs to be freed(). Another approach would be to use reference counting for all the memory you allocate, and just do a simple release() whenever you throw. And finally, you could just link against a drop-in garbage collection library.

    So beyond garbage collection, I don't think that any languages do anything beyond a simple setjmp()/longjmp() to deal with exceptions. The problem with doing this in C is that you end up with an obsession to make things more and more generic until you have to start coding in an OO approach, so you implement objects and message passing.

    And then after a while you realise that you've just reimplemented Objective C.

    Oh well.

  • Copyleft is good, copyright (normally) bad, and you just have to wrap your mind around that fact.

    Wow, thanks for explaining that your value judgements are universal facts. Now I see clearly through your filter of blind faith.

    There will be (and IS) a lot of software written just because the GPL stops companies from taking your work and not communicating the changes back to the public, hopefully eventually to you.

    This is the thin justification I hear over and over again. It's garbage.

    I say extremely little GPL'd software was written because people were forced to by the GPL, though many companies (who were doing real, innovative work) have undoubtedly been driven out of business by competition from unoriginal GPL'd software, even when they're making better products. But this would happen somewhat with public domain software, too (it's hard to sell when you're competing against free products).

    People who make money from selling copies of their software don't just change their mind and decide that they'll write free software because then they can toss in some nifty code they didn't write themselves. They either set out to write free software, or they don't. Nobody gets sucked into it. A few distributor/supporters who do make a profit from your work, "As if you're an unpaid slave." make a token effort of contributing to development, but strictly for PR purposes. Mostly, though, free software is not profitable, it is done by hobbyists, people who consider the cost of development less than the value of the software for their personal use, or people who buy the hype and start unprofitable for-profit free software companies (unless you consider scamming thousands of investors with trading-card stock "profit").

    XFree86 and the BSDs are doing just fine without forcing people to give away their own additions. IMHO, Linux is doing better because of the "free software" propaganda, not because it is superior to the BSDs. They are proof that free software would still be around without the GPL or any similar licence.

    So there are better X servers than the free one, based on the code. So what? It hasn't hurt the free version any.

    ---
    Despite rumors to the contrary, I am not a turnip.
  • Take a look at the language binding [kde.org] page. I can only speak about the Python bindings from some slight experience; they're quite nice and seem complete.
  • If you haven't tried the version of sawfish (ie. sawmill) that comes with HelixGnome you really should take a look at it. I used to be a fan of IceWM, but the GNU (oops I mean new) HelixGnome combination of Gnome + Sawfish is really quite impressive.

    Gnome really has come a long way in the last little bit.

  • .
    The storm and fury that pours out of KDE Krusaders serves to distract from real flaws and questions this recent event has raised. One gets the feeling that that's the whole point behind it. Does it ever occur to these Krusading Knights...

    Funny, I have always been amazed by how incredibly laid back the KDE developers are. I've always attributed it to their being (mostly)European, but it may just be chance... KDE developers AND users tend to be very polite, both on their mailing lists and on IRC.

    I certainly would take notice if one of them posted the article you wrote, swapping Gnome for KDE, and I would be surprised and disgusted if a developer said anything bad about another windowing environment. KDE is very multi-platform (hence the lack of Tux or BSDemon icons), and people who are religious about computing seldom find compatriots to rant with inside the KDE community.

    --
    Evan

  • Now, with the official blessing of IBM et al, GNOME users are talking about how KDE is scared to lose, how GNOME is going to totally take over the Linux desktop, etc. Lovely, absolutely lovely.

    I haven't seen many GNOME users talking this way, but if they do, ignore them, dismiss them, don't even acknowledge their statements. I, along with hundreds of other GNOME developers and users that I'm in contact with, are still saying that Gnome brings freedom to the desktop and that KDE and GNOME can coexist. And yes, I'm very excited about the GNOME Foundation!
    ----

  • I would suggest you try Gnome 1.2.X. And I'd also suggest using the Helix Gnome distribution [helixcode.com]. It installs beautifully on top of RedHat 6.1 and is very stable.
    ----
  • >>You seem to be falling into the trap, though, of
    >>thinking that gtk+ isn't object oriented just
    >>because it's written in C. In fact, it is.

    >I am not falling into a trap, because I know that
    >C is not object-oriented!. There are 4 commonly
    >accepted tenets required for a language to be
    >object-oriented:

    You *are* falling into a trap. And you're not paying attention to what you are being told; i.e. GTK+ is object-oriented. Note, GTK+, not C.

    The fact of the matter is that an object-oriented language is one that has /syntax/ to support the features you mentioned (abstraction, encapsulation, etc). This does not mean that those features cannot be implemented in a language that does not support it explicitely.

    >Abstraction - Simply the model in question, i.e.,
    >make it more abstract to simply the building of
    >the model.

    GTK+ does this.

    >Encapsulation - Hide the implementation details.
    >As the user of a class, you don't have to worry
    >about how it works, you just use it

    GTK+ does this too.

    >Inheritance - The ability to reuse components.
    >(collary is 'polymorphism')

    GTK+ does this too.

    >Messaging - Components use messages to
    >communicate. Passing data around to functions
    >does not consitute a message, BTW.

    GTK+ propogates events and associated data through signals.

    >I think you will agree that C only supports
    >Abstraction. Thus, it is not object-oriented.

    And noone was arguing that is was.

    >In addition, your example of 'reuse' of the
    >gtk_menu_new() is not actually reuse because I
    >cannot (in C) create a derived class
    >johanns_gtk_menu_new() and inherit the functions
    >from gtk_menu_new().

    Wow, amazing that I've been programming things for years that "can't" be done. Of course you can make a derived class of GtkMenu.

    In fact, GtkMenu is derived from GtkMenuShell, which is derived from GtkContainter, which is derived from GtkWidget, which is derived fro GtkObject.
  • I base it on praticality. What are the odds that you'll be using a CORBA component on a remote server running HP-UX? Seriously? Read up on KDE's stance on the issue. The think that CORBA is very cool technology, but not suitable for desktop components. (BTW KDE offers CORBA too, it just doesn't use it for desktop components.) 99% of people want to embed a spread sheet into their document, not embed a remote-spread sheet running on a computer 50 miles away. Anyway, those specialized applications that DO need to embed something over CORBA have the freedom to do so. What the KDE developers think is that desktop components will almost never need to be embeeded on a remote OS running a different OS. They don't preclude using CORBA to embed something more specialized, but the acknolodege that there is no need for the two to share the same protocol. From a pragmatic standpoint it makes sense. For local desktop components use DCOP that offers high performance for the user. Still, offer CORBA for those specialized components that need it's power. Chances are that the two won't need to interact, so there is no reason for them to use the same system.
  • I don't support either side that much. (In fact, I think GNOME Foundation is a good thing.) My point is that in the last two days, I've noticed several comments about how GNOME is going to dominate the Linux desktop and how KDE should be running scared. After the IBM thing, several GNOME people have decided to rub KDE people's noses in it. This is a big change from the past when GNOME was billed as bringing more freedom, and everyone talked about cooexisting and all.
  • Open with scene of woman struggling to use computer that obviously has Win95 installed. She's throwing her hands in the air, making loud exasperated noises, etc.

    Voiceover: Tired of the difficult to use UI of Windows 95?

    Jump transition as Windows 95 disappears and KDE appears. Woman begins smiling and becomes obviously productive (much mousing around and so forth).

    Voiceover: Discover the power of KDE: Alt-F2! It brings up a little input field which you can use to start an app quicker than using the menus! Finally, a breakthrough in UI technology that will make you 10 times more productive leaving you more time for your family, blah blah blah...

    Yes, I understand your point: the difference between a poor UI and good UI is incremental. My point, though, is that the difference between and good UI and a great UI is fundamental. We need to make a jump beyond Windows as far as Windows was beyond DOS.
    --

Never ask two questions in a business letter. The reply will discuss the one you are least interested, and say nothing about the other.

Working...