Putting action where the mouth is, I guess: At the very least with its 4.x release, I then and now considered the K Desktop Environment (KDE) to be the most technically advanced at least amongst the Open Source / Software Libre desktop systems. Took me a while to actually adopt it for day-to-day use. However, that time is now I guess.
Actually, I have been an avid user of the XFCE desktop environment at least, at very least for the last twelve years, using it pretty much on every machine of mine, including my everyday working notebook. Used to write articles on 3.8.1 and the by-then upcoming 4.x release of XFCE for the now mostly-defunct LinuxNetMag.
There was a set of reasons for going with XFCE: At first, and foremost, I used to take my first steps into the Unix world using CDE on HP-UX and Sun Solaris workstations ages ago, so to some degree it felt familiar especially when “old” XFCE still was pretty close to its CDE roots. Then, later on, as XFCE got ported to the GTK+ library, I even more felt home there as, by then, a load of desktop applications (starting with the GNU Image Manipulation Program, or “GIMP” for short, which I have been using ever since its 0.9x releases) were using GTK+ as well, so this provided a sufficiently homogenous, nice-looking, consistent desktop environment to work with. It remained like that for quite a while, despite some rough edges being there at times (like, most massively, the age of transition from GTK+ 1.x to 2.x, with a bunch of “old” applications and “new” applications), but overally, it worked out fine. It does until today, actually. And the XFCE crowd has been pretty active adding and providing a whole load of goodies, applications, modules that have been direly missed in older versions – the Thunar file manager, in example. A dedicated CD / DVD recorder application. And a few more. And still, it worked well, provided a consistent desktop while using applications such as Mozilla Firefox, Mozilla Thunderbird, the Eclipse development environment and a bunch of others, altogether somehow tailored to work and look best with a GTK+ desktop.
However, time moved forth, things changed, development happened. GNOME and KDE changed, grew, came to life. I always kept an eye on the things changing in KDE, also API- and architecture-wise (after having an interesting conversation with Eva Brucherseifer at the 2002 Chemnitz Linux Tag, loosely talking about infrastructure new by then in KDE 2.0 , such as kparts, kioslaves and the like). I always liked the KDE infrastructure.
And eventually, at some point I discovered the only reason really still keeping me from using KDE was wanting to have a clean, concise desktop also including some of the GTK+ apps I can’t or don’t want to give up. After playing with KDE 4.8 a few days ago, I figured out that this is not an issue anymore – both because the GTK+ theming support in KDE seems to really have matured and because, ultimately, many of the KDE stock applications are good enough to replace other apps I have been using before (with the exception of GIMP maybe, though Krita seems to gain quite some steam here).
Moving forth, first impressions
So, ultimately, after figuring this out using a Kubuntu 12.10 live image in a virtual machine, I decided to simply do an
apt-get install kubuntu-desktop on my everyday notebook and see how things will work out. After the usual things happening (
apt downloading and installing a load of packages), I decided to reboot, ended in a KDE login manager, logged in to a KDE desktop.
And felt a bit lost at first. Activities. Mini applications. Plasma. Compared to XFCE or even older incarnations of KDE, it surely took me a while to even get a custom launcher (to start Eclipse) into the task bar, and, afterward, to get the task bar to where I want it – at the top of the screen at just the right height. Usual things to follow: Set some basic convenience shortcuts, mostly for navigating workspaces. Configure email accounts for business and personal use. Log in to our corporate Jabber server. Find a file manager to, well, find my files. Find a browser to visit our internal issue tracker. See whether there are any tools for diffing folders, accessing Subversion repositories. Figure out, generally, what is where and which application serves which purpose.
First impression, after working with setup for roughly a week, is more than just solid. I haven’t found any really “substantial” issues keeping me from using KDE applications for getting things done. No matter whether rekonq (the new browser which, in KDE 4.9, seems peculiarly unable to correctly render its own homepage ;) ), kmail (the default and, as far as I see, only KDE based e-mail client), gwenview (the default image viewer and more-than-just-a-filemanager image manager) or the dolphin file manager – none of these made me really want to actually start up the very applications I used for these purposes before. Things just seem to work…
Bad things first
Of course. not all is well all the time. There are bugs. There are issues, like in any other piece of software. There’s a browser that, at times, seems to have peculiar issues rendering some web sites, or gets keyboard layout in a strange way messed up, leaving me unable to enter certain characters to web formulars all of a sudden. There’s an email application that seems backed by quite an extensive, database-driven, powerful infrastructure (akonadi – note to myself: figure out what can be done with this) which seems fragile at times, especially talking about / to Google Mail. There is that strange “Activity” thing of which, so far, I am not really sure whether or how to make use of it – so far the standard (icon-free) desktop seems the best solution for my working habits. There is an imaging app (digikam) which several times heavily crashed trying to import all my images on an external drive. There’s gwenview that fails to store image metadata back to the actual image files, leaving it unusable as soon as moving or copying images elsewhere. Or there is a multi-display configuration that, with every reboot, seems to “forget” how my monitors were set up (LVDS off, external VGA set to full resolution). Yes. It’s software, and it has bugs. It has a bug tracker, too.
But then again, the badness experienced so far is rather limited. On the opposite, I am in many applications simply overwhelmed by what is possible. No matter whether kmail, gwenview, dolphin or any other KDE app I played with so far: It seems these have expressively been made for users who know what they do, who know their environment and want to make absolutely full use of absolutely every feature one could think of.
kmail, in example, is the first(!) desktop e-mail client I ever used capable of dealing with server-sided sieve filter scripts and shared folder access control lists while talking to our internal
cyrus imapd. So far, I did many of these things while
ssh'ing right onto the mail host, using shell magic. dolphin, then again, all along with what is supposed to be the KDE subsystem, to me is the first time I can connect to and transparently edit files on an FTP or WebDAV server without having to down- and upload them again and without crashing half of desktop applications because something failed all along this way. Overally, all the applications I touched so far “feel” like applications done by people who heavily and excessively relying upon them for day-to-day work, and be that a thing as simple as an “ALT+F2″ ‘run command’ tool – which, in case of KDE, is far more than that, in example allowing you to switch to running instances of “konsole” rather than starting a new one when typing “konsole”. Most of this is definitely helpful.
Same way, I like how things are integrated. Despite being a bit annoyed that gwenview does not store metadata to EXIF or IPTC headers, it’s good to see these information at least are present throughout the whole of the desktop environment, knowing dolphin can “see” image metadata written from gwenview and vice versa. Or the kipi imaging plugin infrastructure – simply allowing for having roughly the same modules / extensions available in all KDE imaging applications, no matter whether digikam or krita. That’s how one would things expect to be, in 2012. Exactly the same goes for the embedded technology named nepomuk. As we’re at the moment into a semantic web research project, having this stuff available on the desktop as well seems an interesting field for playing around a little, and nepomuk is likely to be the next thing I’ll try to make some use of beyond just using it from the desktop.
Ultimately, as far as the “good” things are concerned: Maybe after using it in everyday work for as little as roughly a week, one still should be careful. Yet, looking at it by now, and comparing KDE to GNOME, XFCE and LXDE, it seems to be immensely better than all the others when it comes to providing applications that don’t make using a command line for “special” functions the easier way to go.
Choice vs. reuse
Speaking of this, there is one thing that initially bugged me a bit: Choice. Like, in example, talking about kmail. Sure, generally each and every GUI or non-GUI mail client / MUA can be used with KDE as, after all, it still runs on top of some Unix-like system – GNU/Linux, in my case. However, as soon as one wants to have an MUA that integrates well with all the rest of infrastructure provided by KDE, it comes down to kmail. Period. No other option.
Is there something to choose from? No. Does that matter? I am not sure. Maybe freedom of choice is good in a “walled garden”, a closed world where everything’s ultimately a boxed product, no matter whether you pay for it or not. In an open ecosystem, however, is it better to have freedom to choose from, even though this means continuously re-inventing the wheel? Looking back at the last 16 years, I have for sure worked with roughly a dozen of GUI driven mail clients, including all those available to GNU/Linux systems starting with *cough* Netscape Communicator 4.x, ages ago. For quite a few years it seemed just as if everyone trying to dive into programming would immediately start writing an MUA of her / his own, eventually pushing it to sourceforge.net (then) or github.com (now), leaving these places filled with a vast selection of half-baked MUAs to choose from, each of them driven forth by one or two developers, used by one or two users. This kind of “repeated” effort seems totally counterproductive, leaving people over and over spending their time, energy, inspiration on trying to build the same thing again, ending up with a wheel not as round as the original one yet having spent time on that. Why not simply choose what seems closest to what you want, consider the fact it is open source and then join the community to make this better? Leaving KDE aside for a moment, this seems one of the most fundamental “development-model” threats to FOSS these days: There is “mainstream” GNOME featuring GnomeShell. There is Unity replacing GnomeShell in Ubuntu for reasons I still completely don’t get, assuming both of these could need some work, and none of these seems much better than the other. Then there are MATE and Cinnamon, forking parts of GNOME 2 and GNOME 3 mainly for use with Linux Mint, done also because GNOME 3 didn’t seem to fit peoples needs. On the KDE side, there is Trinity, trying to be a fork of KDE 3.5 …
Though the option to fork things seems all good and healthy, then and now I wonder whether, generally, it wouldn’t be better for FOSS as a whole, especially talking about the desktop, if folks kept themselves from spending all too much energy on forking old code but rather trying to make one or two projects as good as somehow possible. Here, getting back to KDE and the kmail example (which is where I started): kmail seems the only KDE enabled e-mail application. Yes. And yet, browsing through the menus, considering the options at hand, kmail easily might qualify as being the most feature-complete GUI MUA I have used to date. Claws Mail is pretty good. Thunderbird rocks. Evolution, in GNOME, is a neat tool. But kmail offers a couple of features I so far have never seen in any desktop mail application, before. From that point of view and in light of this, I definitely consider “lack of things to choose from” to be not too much of a problem, having at hand just one powerful tool that works.
Well. This seems to have ended up being a pretty enthusiastic post, anyhow. So first of all, I’ll have to see whether this enthusiasm will prevail or whether I might run into some sort of annoying issue sooner or later. And then, of course, it’ll be all about looking at what is possible, getting to know the environment, playing with things a bit here and there. Play a bit with the infrastructure, maybe write one or two bug reports. Get to know the community, see where it all is heading. And, asides that, still having a working desktop that allows me to do my everyday work in a consistent and productive way. Let’s see.