Slashdot Mirror


Deep Inside the K Desktop Environment

Lemmingue writes "Ars Technica published a very good article about the KDE architecture. It's a essential read for anyone wondering how Konqueror can open documents in the same window or just understand the license issues regarding the Qt use. The article describes most of the technologies behind the KDE (Qt, KParts) and how the project is organized. The article is full of links, screenshots and diagrams."

28 of 219 comments (clear)

  1. Er? by aleonard · · Score: 3, Informative

    And it makes to to slashdot only four months late! Unless Ars made a stealth update I'm not aware of?

    --
    "In the end they will lay their freedom at our feet and say to us, 'Make us your slaves, but feed us.'" -Dostoevsky
  2. Rockin! Maybe in a few months... by Hannibal_Ars · · Score: 5, Funny

    ...you guys will link up my new Prescott article that went live this morning!

    (Looking back at this post with the preview function, I'm thinking, "is this a troll, flamebait, informative, funny, all four, or none of the above?" I post, you decide.)

    --
    Senior CPU Editor | Ars Technica | http://arstechnica.com/
    1. Re:Rockin! Maybe in a few months... by Hannibal_Ars · · Score: 4, Informative

      Believe it or not, our article web pages are statically served. It may be low-tech, but it's cheap, scalable (for our volume of output), and the server can take a licking and keep on ticking. So the server doesn't even bat an eye at the Slashdot crowd. Now when a major Mac article comes out and the entire online Mac community is trying to load the page at the same time... well, that's the one time when we're maybe thankful for Apple's small market share :0)

      The news on the front page, on the other hand, is served dynamically by a CMS.

      --
      Senior CPU Editor | Ars Technica | http://arstechnica.com/
    2. Re:Rockin! Maybe in a few months... by 0x0d0a · · Score: 3, Insightful

      You know, I really like seeing Ars-Slashdot ties. I don't see the two as competing much -- Ars has lots of good, original content, whereas Slashdot just links to content, but Slashcode is (IMHO) a more pleasant-to-use forum engine. They complement each other very nicely.

  3. Re:license issues? by fiftyvolts · · Score: 3, Informative

    The freeversion of Qt is under two licenses: the GPL and the QPL. While most people have a rough idea about the GPL most people don't know about the QPL, Like you for example.

  4. Dependencies by ultrabot · · Score: 4, Interesting

    From TFA:

    In addition to DCOP, the upcoming KDE 4 is expected to also support D-BUS, which was designed using DCOP as a model but with the added advantage of having no dependencies,

    Thank $deity! KDE would in general benefit from ridding the application programmer from dependencies to GPL'd stuff. KDE "needs" (to the extent any piece of software needs anything) to be able to render Gtk-applications with native LAF, so that the application developers can choose their license freely. I'm not aware if the dependency problem with DCOP relates to Qt, however. Without GPL (and QPL), KDE could have been embraced as the standard Linux desktop environment ages ago. So far it only has the most users, but that's not enough if it's not "strategically viable" (if you work for Trolltech/KDE: please spare the lecture about corps affording $1500/dev/year, we've all seen it).

    KDE could really collect the jackpot by allowing development of native KDE apps via Gtk/other LGPL'd lib. I assume QtGtk isn't up to the task yet?

    DCOP, BTW, is a very sweet and underadvertised technology. We need DCOP-like scriptability for all the applications. It has a very transparent feel, just like a good Unix methodology should.

    --
    Save your wrists today - switch to Dvorak
    1. Re:Dependencies by rekulator · · Score: 3, Informative

      Wrong. KDE libs are LGPL, only apps are GPL.

  5. Perhaps you meant to link to this article by ArsEric · · Score: 5, Interesting

    Yes, we published this several months ago, and have made no recent revisions to it. If you're going to link us up (which we always appreciate!), why not do it to our new article on the Future of Prescott?

  6. Can't belive how far they've come! by filesiteguy · · Score: 3, Interesting

    As a regular Windoze user, I love looking into KDE from time to time. I first tried it out in '99 on my Pentium 133 laptop and was somewhat happy. (It was certianly better than the X-win system on our Sparc 5 workstations.)

    I now have Mandrake 10 and am very pleased with the progress, integration, and ease of use. Since I use NT 5 here at work, I am almost excited to get home and work on my system running KDE.

    Good job, Mattias!

    See, being from Tübingen can be Kool!!!

  7. Re:What does KDE stand for? by JabberWokky · · Score: 3, Funny
    Yep. There was discussion and the 'Kool' part was dropped prior to version 1.0. That was a long time ago. Have you been putting the cover sheets on the TPS reports? If not, I'll get you a copy of both memos and drop them off on your desk later, m'kay? That's greeeat.

    --
    Evan

    --
    "$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
  8. Re:Why does KDE always reinvent the wheel by ultrabot · · Score: 4, Insightful

    Regarding the subject: probably because someone among the KDE people thinks s/he can do better than the author of the original app. As far as apps like kopete and kontact go, they actually did do better. Konqueror is still primarily a file manager (excellent browser too, but I guess the "standard" browser will be Firefox in the near future), and significantly better than nautilus as far ergonomics and features go. It also preceded nautilus chronologically.

    --
    Save your wrists today - switch to Dvorak
  9. Re:Why does KDE always reinvent the wheel by yokem_55 · · Score: 4, Informative

    The idea is to have software the integrates and takes advantage of everything the kde environment has to offer. There are two ways of doing this. 1. Pull your hair out trying to cajole existing applications originally created off of an entirely different framework, to take some, limited advantage of what kde has to offer. 2. Start from scratch with an environment that makes fast development very easy and very quick, without massive quantities of hair left in your hands.

    --
    ...and IN SOVIET RUSSIA, beowulf clusters imagine 1, 2, 3 profit!!!! jokes made out of YOU!!!
  10. Not only that, it's a dupe. by bonch · · Score: 4, Informative

    Slashdot posted it when it came out.

    I'm convinced--the editors absolutely do not read Slashdot. The last straw was last week when Michael duped a story from three hours earlier that was still on the front page.

  11. What's the next article? by Anonymous Coward · · Score: 5, Funny

    Gnomes Gone Wild?

  12. Offtopic by Space_Soldier · · Score: 5, Funny

    Everytime some one posts a Deep Inside article makes me think of Deep Inside Devon, or some other Deep Inside .

  13. Re:Why does KDE always reinvent the wheel by sirReal.83. · · Score: 4, Interesting

    Well, I don't really like juK... I use amaroK.
    Gaim sucks. Kopete's better.
    Evolution is slow. Kontact is fast.

    All these programs, though, use KDE technologies that made them a *lot* easier to develop and a pleasure to use.
    I guess the real question is: Why not?

  14. Re:Why does KDE always reinvent the wheel by Seli · · Score: 5, Informative

    Actually Konqueror/KHTML and Kontact are not really reinventing the wheel.

    The work on KDE's filemanager and HTML engine dates back to the days when the only usable *cough* browser was Netscape4.x and Mozilla seemed only like a great failure.

    Kontact is basically an aggregation of long time existing KDE applications like KMail, KNode, KNotes etc., pre-dating e.g. Evolution.

    That said, this question about reinventing the wheel is stupid anyway. First, there are many things about KDE that KDE has had first (like, the first usable Linux GUI ;) ), and second, everybody is reinventing the wheel all the time anyway, so what?

  15. Naming for normals? by otis+wildflower · · Score: 5, Insightful

    Has it occurred to anyone that supporting non-l337 g33kz using KDE as a primary desktop will be made more difficult just because it's impossible to keep track of all the dopey names for things?

    How does 'kopete' relate to 'chat' or 'instant messaging'? How does 'Konqueror' relate to 'browsing the web'? How does 'Apollon' apply to p2p? How does 'K3b' apply to CD burning/ripping? KMail works. KControlCenter works. Easy for someone to figure out what it does by its name. That is what A NAME IS FOR. We're not dealing with hungarian notation here: The whole idea of a UI is that it needs to be completely descriptive at a glance, and anything that is counterintuitive or obscurantist needs to be fixed or replaced. Normals expect this, they don't think it a crutch, and they're not expected to know better (as developers who take issue with HN may argue other developers _are_ expected to).

    At least Apple (and even M$ to a lesser extent) uses prosaic names like iPhoto, iChat, Mail, DVD Player, iCal, Address Book, which makes it easier for mortals to understand their metaphor (Safari being the most egregious exception). KDE ware names seem purposefully opaque, and if you want to make a dent in the GUI you either have to hope for great icons and forget the names, or you have to do more work than you should have to do.

    I love KDE, I think anyone from 3 to 103 could use it comfortably, but I shudder to think about all the help calls I'd get from people just trying to find shit in the interface.. It took me an hour of googling to figure out what the hell Apollon was! Anything that can or should be in a base KDE release (or a bundle, like kdemultimedia or kdenetwork) should have a simple, descriptive name, even if it means stepping on the toes of obsolete projects or capricious developers.

    (OTOH, maybe you don't give a damn about condemning your less technical friends and/or family to a life of M$ hell. Oh well.)

    1. Re:Naming for normals? by standsolid · · Score: 4, Insightful

      I present, for your edification, a screenshot of what a KDE Menu looks like.
      If you have any questions to what a "Music Player" is, then there is little hope for you, yet.

      Hell, This menu didn't comfuse my grandmother, and you're still complaining about supporting users.

      --
      WTPOUAWYHTTOTWPA
      What's the point of using acronyms when you have to type out the whole phrase anyways?
    2. Re:Naming for normals? by Dravik · · Score: 3, Insightful

      Now is Outlook or Access the one you want for email. Hmmm, mabey it's Excel. Why doesn't Microsoft name their apps something easy to figure out just from the name. Something like Kontact.

      --
      The purpose of language is communication, If the idea is clear the grammar ain't important
    3. Re:Naming for normals? by triptolemeus · · Score: 3, Funny
      Good names include:
      • Apache for a webserver (smoking signals)
      • Evolution for an email suite
      • Gimp for a drawing program
      • Mozilla for a browser
      • Exim for a mailserver
      • Squid for a proxy (8 arms, wow, very intuitive).
      Yeah you are right, KDE should work on it.
      --
      The site where: "I'm right, as long as you ignore the things that prove me wrong", became a valid method of debate.
    4. Re:Naming for normals? by Anonymous Coward · · Score: 4, Interesting

      Konqueror was named I believe as a reference to the "Navigator" and "Explorer" paradigm. I've seen the slogan around (though it may be unofficial) "After the Navigator and the Explorer comes the Konqueror." (and the K is obligatory for many KDE based projects ^_~) And I seem to recall KDE having the slogan "Konquer your desktop" so I would say Konqueror fits.

      And did you ever think that perhaps some of the names are acronyms or are meaningful in other languages? Take Kate for example, what on earth does the name Kate have to do with text editing/programming? Well nothing until you realize that it's an acronym that stands for "KDE Advanced Text Editor". And I recall a class or project or something that had a name that was meaningful in German but I don't recall what it was off hand.

      I can't say for sure, but I would imagine that K3b stands for "KDE 3 Burner" or something similar.

      And let me ask another question. What does Mozilla have to do with web browsing? That name is only meaningful to those that know its history. That it was Netscape Navigator's code name because it was the browser that was going to eat Mosaic. But I digress, what about Emacs? How would your non "l33t" hackers know what that program is used for?

      Furthermore, you make your statement as if it were the rule and not the exception, but going through my kde 3.3alpha menu, I count.....15-16 or so apps that are part of kde that do not have first glance meanings in English (excluding the games menu) and that's out of....well over 100+ apps that come bundled with KDE. And if that were not enough, the KDE menu displays the generic names for the apps on the menu as well as the program name *by default*. So I don't think this problem is as great as you claim.

    5. Re:Naming for normals? by Just+Some+Guy · · Score: 3, Insightful
      How does 'kopete' relate to 'chat' or 'instant messaging'?

      In much the same way that "Visual Studio" relates to programming (and not graphic design) for the unitiated, and Trillian relates to instant messaging, and Eudora relates to email, and Vivio relates to drawing diagrams.

      They only sound worse than the equally unrelated Windows names because you're not used to them yet, unless you really do independently associate the act of burning CDs with the name "Roxio".

      --
      Dewey, what part of this looks like authorities should be involved?
  16. It's not that hard by bcore · · Score: 3, Informative

    How does 'kopete' relate to 'chat' or 'instant messaging'? How does 'Konqueror' relate to 'browsing the web'? How does 'Apollon' apply to p2p?

    I suppose one way of figuring this out would be that the default menu entries for these apps clearly state what they do.

    Kopete is found under taskmenu--internet--Instant Messaging (Kopete). Konqueror is lister as "Web Browser (Konqueror)"... etc.

    I can't say that I ever had troubles finding the right apps in KDE, even when I was a total noob.

  17. Re:License Issues with Qt by Seli · · Score: 4, Informative

    "Qt is GPLed, and as such, prevents FOSS developers from using any OSS licenses that are not compatible with the GPL. Ironically enough, XFree86's license is not compatible with the GPL, and hence XFree86 could not include a Qt configuration utility."

    Your first statement is wrong. Should I bother reading the rest?

    http://www.trolltech.com/developer/faqs/license_gp l.html#q19

    http://www.trolltech.com/developer/faqs/license_gp l.html#q114

  18. Re:my first experience with KDE by nusuth · · Score: 4, Informative
    You can use the personalizer (kpersonalizer) to quickly turn off eye candy. Or you can fire up the kde control center (kcontrol) and go over all appearance & themes stuff one by one. Don't worry, you can't break your install from kcontrol unless you try to do just that.

    IMHO, the best theme for KDE is plastic but almost all themes are "low-impact". Only a few used to use fancy ways to render their widgets, I don't know if any survive.

    --

    Gentlemen, you can't fight in here, this is the War Room!

  19. Re:my first experience with KDE by anno1602 · · Score: 3, Informative

    For easy eye-candy setting, run kpersonalizer (Alt+F2 and type kpersonalizer, hit enter) and turn everything off, though you can perhaps leave font anti aliasing on.

    Style-wise, if turning off the eye-candy doesn't suffice, choose either one of the "Light styles" or the .NET-style (which is the fastest).

    Version-wise, if Mandrake 10 doesn't include it. upgrade to the latest KDE 3.2. KDE has experienced continual speed improvements since the release of 3.0.

    Last but not least, RAM is the key. I had KDE running with on a rather slow box, too (P3-450) and found that more RAM works wonders. For KDE and KDE-based apps, 128MB should suffice - but be aware the Mozilla and OpenOffice have a rather big memory-footprint, so if you plan to use those regularly alongside KDE, go 256. No amount of style/eye-candy tweaking will help you if your PC doesn't have enough main memory.

  20. Re:Why does KDE always reinvent the wheel by AstroDrabb · · Score: 3, Insightful

    I am a long time Gnome user and only recently have been using (and really liking) KDE. While it may seem to be reinventing the wheel, there is not much choie for a KDE developer. They cannot reuse GTK/Gnome stuff, since that would add more dependencies to a KDE desktop. Why would a KDE desktop user want Gnome/GTK dependencies? Just as why would a Gnome/GTK desktop user want QT/KDE dependencies? The two toolkits and desktops are very different and use different languages (C and C++) so the hope of reusing GTK/Gnome and QT/KDE is slim to none. They could reuse ideas, but not code. Just as it would be hard to reuse code between MS Windows and Mac OSX.

    --
    If Tyranny and Oppression come to this land,
    it will be in the guise of fighting a foreign enemy. -James Madison