All Unkept
Posted in: KDE  —  23 September 2009

A plea to KDE developers

I recently upgraded to KDE 4.3.1 (from KDE 4.2.something). As seems to be par for the course for the KDE 4 series, I then waded through nearly a dozen bugs/crashes/regressions for the next day, filing bugs where I had the energy. This has got pretty old, and fills me with no confidence about the future of KDE — the stable desktop I'm hoping for still hasn't materialised.

But there is one thing about KDE 4 that terrifies me, and this post is an attempt to get the KDE devs to change their approach before it's too late.

KDE 4.2 attempted to migrate some of my data to Akonadi, the new framework for storing PIM data. There were a bunch of ways in which Akonadi did not provide the features that previously existed (can't have multiple writable calendars in KOrganizer, Kopete address book link didn't work...), so I had to ditch it. Thankfully this was not hard (though the whole experience would have been extremely confusing to Joe User).

I was prepared to give KDE 4.3 another shot on this front (after carefully backing up my data). I cleared out any remnants of previous Akonadi data, and the settings which told it not to do the migration.

The results were pretty disappointing:

  • First, there was an initial setup process. This failed. Unfortunately, the popup simply disappeared before I could note down the error message. It was something to do with creating an agent. Did the process crash, or was it supposed to just disappear like that?

  • Then, for individual applications, the migrations all partly failed. Again, the popups telling me what was happening, including the error, just disappeared after a short delay. The error was something about a timeout when creating an instance of an agent. Did the process crash? Did the agent instance get created eventually, so the process could continue successfully? I've no idea. I can't even file an bug without the error message.

    Even while the popup remained, there was no indication of what I should do about the error, if anything.

    So I'm guessing all the migrations failed — my applications don't seem to be migrated to using Akonadi at all.

Why does this worry me so much? Well, I can cope with an unstable desktop. It's a pain, it means I can't recommend KDE to anyone I know in it's current state, but usually I can work around the pain points. Plasma restarts itself, so although it is still pretty crashy (far more than the Windows shell, for instance, has ever been in my experience), I don't have to worry about it too much.

But Akonadi is a different matter. It is the proposed framework for handling all PIM data — all my e-mails, calendars and address book. This data is extremely important to me. Akonadi is clearly not up to the job of handling it — if their migration tool can fail like this, and fail with worrying errors about timeouts (which actually suggests the migration process is non-deterministic — it's going to depend on how fast/busy your computer is), it's clearly far from ready. It's not getting better, it's getting worse — this time the migration failed completely, and I'm not even able to check whether it's up to feature parity with non-Akonadi methods.

Even worse than this, is that either the KDE developers:

  • think it's OK to start migrating to an alpha-quality framework for handling user's data. To me, this is appalling. Desktop eye-candy in exchange for a bit of instability is one thing, but my data is entirely different.
  • or, they are unaware that Akonadi is not there yet. This is just as worrying.

Akonadi seems like an overly ambitious project. If you look at its home page, the diagram includes the idea that other desktop apps, outside of KDE, will use Akonadi as a backend for all their data. To me, this seems extremely unlikely and is a tell-tail sign of developers getting ideas that are just too big.

So, what do I propose?

Simply this: ditch Akonadi. Yes, I mean that. KDE 4 seems to lack a BDFL who is willing to say "this is not working, time to pull the plug". Mark Shuttleworth did that with a pet project of his when the developers got distracted with shiny geek toys. Windows Vista ditched the killer feature of Vista, their WinFS filesystem, because it just wasn't ready. But it seems there is no-one in KDE who can make these kind of decisions. The major obstacle is egos and pride — after all that work has gone in for years, can we ditch a big feature like that? Yes, you can, and you should, for the sake of your users and the future of KDE. Of course, you can just move it to an experimental branch and come back to it for KDE 5/6/7, but please do not turn it on until it's ready.

Akonadi is one instance of a bigger problem in KDE — grandiose ‘we'll fix everything but it will take us five years’ schemes that are prioritised over things users actually want, and could be implemented soon.

For example, I want desktop search and fast e-mail search. After all, this is 2009, right? Is it so much to ask for a decent way of searching all the files on my computer, and fast full text search for my e-mails? If I used Mac or Vista or Google docs & Gmail, I would have had this years ago. Instead of that, KDE gives us: Nepomuk. The usefulness of Nepomuk completely escapes me. Even though it includes Strigi indexing (which indexes all your files, though it can be a big pain to get working), there is no decent interface for searching those files. (No KRunner is not a decent interface). Currently, turning Nepomuk off has exactly one consequence — it makes my computer much more responsive and saves me 3 Gb of disk space. AFAICS, there are no applications which make good use of Nepomuk. I think there is tagging in Dolphin, but:

  • There is no interface for searching tags! What kind of idiots do you take us for? Going round tagging files in the hope that one day we'll be able to make use of all that effort because someone actually implemented a UI?
  • I don't want to manually tag files anyway, I want a decent desktop search tool!

Other applications that need tagging are better off implementing their own solution, and then extracting a simple KTagging library which can be shared.

Nepomuk isn't as bad as Akonadi at the moment — it's useless, but I can turn it off, and it doesn't threaten my data. But even then, all the effort that is going into Nepomuk could be directed into manageable, achievable goals of providing features that users will be able to make use of.

Please, KDE devs, stop the big grandiose schemes. Stop doing anything that would threaten my data. I've been a loyal fan — pushed to the limits by the KDE 4 series, I'll admit — but if you foist Akonadi on me in anything like it's current state, I'm taking all my data and going. I don't yet know where I'll go. I might go back to GNOME after a long time. It still sucks IMO, and I'm not sure how I'm going find replacements for KMail (very nice despite no fast full-text search), KOrganizer, Amarok, k3b etc. KDE currently has the lion's share of the best Linux apps. But it doesn't really deserve them at the moment, and it's going to lose all but its most stubborn and loyal users at the current rate.

If you got this far, thanks for bothering to read this. I know the KDE developers have got a lot of flack for KDE 4, and I have held back for a long time, but some of the criticisms are deserved, and you do need to listen occasionally...

Comments §

§ On 23 September 2009, Sarachin Asterot wrote:
485  Try to use xmonad and you will never see Nepomuk and Akonadi agan.

§ On 24 September 2009, Erlend wrote:
486 Sarachin:
KDE is not a window manager (but it does include one). I use xmonad in KDE every day. :)

§ On 29 September 2009, David Anderson wrote:
488 Hi Luke,

Hear hear!

I was forced to ditch KDE when an upgrade to Fedora 9 brought in 4.0. As I live in Africa I don't have the bandwidth to bring in updates and improvements as they come. But I've kept an eye on it because I'd been a user since either 1.0 or 1.1 - can't remember which. Each new release I look for the kind of things you mention - but they're not there. I wonder if the KDE community of developers is an echo chamber - they're all excited about each other's shiny new features and don't realise how high stability and core functionality comes for users. I think developers get used to everything crashing all the time, but forget that outside the world of development that goes down less well. Meanwhile, people like me just slink off silently. (I used to post lots of bugs when I had the bandwidth, but my experience is similar to yours - core features like efficient mail search can just rot in bugs.kde.org for years whilst futuristic dreams like "The Social Desktop" get the attention).

So, I switched to GNOME. It doesn't suck, though it took some months to get used to a different way of thinking and working. I now really appreciate the fact that it gets out of my way so I can get on with the work. I've read that KDE 4.3 is meant to be stable enough to go back to, but I don't know if I will. GNOME "just works" and doesn't thrust its innards upon my attention whilst I'm using the applications (why on earth do KDE apps throw up all those little notifications "Just throbnicating your jubbins through the coupling adjustor, please wait" that only geeks will ever understand?).


Having said that I've retained several KDE apps - kmail (KDE 3 version), akregator, konsole, kaffeine, k3b, digikam, bibletime. Where I've looked at them the GNOME equivalents have not cut it, though I am 18 months behind.

One place where GNOME seems to be way ahead of KDE is in system management stuff - NetworkManager, power manager, disk management; the Red Hat people have put loads of work into lots of this. I installed a Fedora 11 DVD that was mailed out to me, and at last: nice GUIs for formatting disks, entering the PIN number of the 3G modem that I plugged in, etcetera. Just works!

So for me, the GNOME desktop with KDE apps running is working very well. Nice clean, well designed, functional desktop that doesn't intrude; apps with the features I need. But this is mostly with KDE 3 apps and it sounds like I won't be able to maintain this state of affairs if/when I get to upgrade from Fedora 9. I am hoping the KDE 4 apps will be up to standard by then!

§ On 1 October 2009, Andre wrote:
490 May I ask what distribution you use? It sounds like maybe an additional akonadi-package is missing? About Nepomuk, you can see it as research. Desktop-Search is working with existing tools, it's your distributions responsibility to package the right tool for the right job, not the developers. OS Developers work on what they want to work on. I don't choose my hobbies by which people I please with them, but by how much fun or relief they mean for me.

§ On 1 October 2009, luke wrote:
491 I'm using Kubuntu (9.04 at the moment, with the KDE ppa).

Unfortunately, I hear that Nepomuk is going to be a dependency of Akonadi, and plans to use Akonadi everywhere are forging ahead. There is the possibility they may pull this off, but right now I'm not optimistic.

§ On 3 October 2009, Kevin Krammer wrote:
492 "There were a bunch of ways in which Akonadi did not provide the features that previously existed (can't have multiple writable calendars in KOrganizer, Kopete address book link didn't work...), so I had to ditch it."

This is quite puzzeling. Akonadi does, at this moment, not change how these applications use calendar or addressbook.
It is not requried to use Akonadi for these applications (actually turned off by default) and can be used together with traditional data storage methods.

"So I'm guessing all the migrations failed — my applications don't seem to be migrated to using Akonadi at all."

There are indeed know issued with migration and we are working on that. The given importance of good migration is why we activated it several release before it becomes necessary, to gather information on its behavior from a wide range of systems.

Since it is still completely optional, failures neither harm the data nor the use of said data. In fact migration of applications has always been disabled in KDE releases to protect our users from implications on their day-to-day usage of their PIM data.

"Akonadi seems like an overly ambitious project. If you look at its home page, the diagram includes the idea that other desktop apps, outside of KDE, will use Akonadi as a backend for all their data. To me, this seems extremely unlikely and is a tell-tail sign of developers getting ideas that are just too big."

Cross-desktop capabilities are an implication of the service based approach. Even if it is not or not immediately used by other projects it would be rather stupid not to consider it when designing Free Software desktop infrastructure.

In fact, recent history shows a trend towards shared infrastructure, especially service based one, e.g. NetworkManager.

The people involved in desiging Akonadi have had at up to a decade experience with developing PIM applications, none of the capabilities in Akonadi are there just for fun but backed by real world requirements which happen to have a huge spectrum (e.g. users with more than one application using contacts, users with several thousand emails, users needing offline access to server data, etc).

"So, what do I propose?
Simply this: ditch Akonadi. Yes, I mean that. KDE 4 seems to lack a BDFL who is willing to say "this is not working, time to pull the plug""

I don't think it is a matter of not having someone making unpopular decisions, but instead a problem of not having an alternative. If you happend to know about a functionally equivalent framework we would certainly like to hear about it.

While working on Akonadi is certainly fun due do it clean architecture and talented peers to work with, we would certainly find something equally rewarding if somebody else can reliably provide us the necessary base.

§ On 2 January 2010, gen2 wrote:
825 Thanks Kevin. To anyone reading, let me say that the originator of this page is really not well-informed regarding several important issues here, ranging from the nature of free-software development, to the actual software being discussed.
You had a bad experience? And this should influence the direction of KDE PIM? I'm not convinced in the slightest by your argument. Take a good hard look at the landscape, and what's on the horizon. The KDE PIM group is right on target. Semantic desktop, absolutely, and a scalable architecture to get us there. Of course you want it all now. We all do. Reminds me of people crying about how painful the Mac OS9 to OSX transition was (obscure reference, sorry). Was it painful? Sure. Necessary too.

§ On 2 January 2010, luke wrote:
826

Thanks gen2, Kevin.

I'm not talking about one bad experience, I'm talking about several years of the kind of bugs that make Microsoft look good.

And it's not so much these painful experiences, but that the developers don't seem to be worried about the actual needs of actual users. Criticism of these technologies often results in disbelief and hostility. Core developers don't seem to believe that Nepomuk, for instance, is a massive resource hog that slows many computers to a crawl, and also doesn't really provide anything that most users want.

Do we have any evidence that a "semantic desktop" is really a great thing? It sounds like a grandiose idea, but I'm not convinced that I actually want it at all, never mind right now, and I would gladly sacrifice everything I've heard about Nepomuk for being able to search my e-mails and other files quickly. There are so many ways in which I can envisage the "semantic desktop" ideal completely failing to deliver that it's difficult to get excited about it.

But, I do know that I want fast desktop search, and that desktops that have it are leaving KDE far behind. A sensible migration path would have been to develop Strigi from being 90% of the way there (how it was several years ago) to being a 100% ready desktop search tool. From there, you build the additional "semantic" features - so that you are keeping up with things that users have come to expect and want and need, while aiming at even better things. Instead, KDE desktop search is miles behind where it was several years ago, for the sake of an ideal I'm not even sure that I want.

Another example of KDE developers not being in touch with real needs is the Konqueror browser. While a few years ago it was a great browser, it has lagged so far behind that I've been forced to switch, which is a great shame, because it means the integration that the KDE desktop used to provide is actually crumbling. I don't understand how KDE devs have been unaware of the fact that a fast, competitive web browser is essential to any desktop today.


§ On 20 January 2010, Anshul wrote:
837 I'm a little late in reading this blog post (and I agree with every single word of whats written - I'm a big KDE fan). I'm going through a similar dilemma right now with regards to Akonadi and Nepomuk. I bought a shiny new HTC Android this weekend and obviously wanted to get sync capabilities going with Google Calendar, Gmail and Contacts to my laptop. Now, I turn to KDE, specifically Mandriva 2010.0 to get the sync going. I know that Google Calendar works....and no surprises that it works with...<drum rolls>....Akonadi!! So I setup the Akonadi connector on Mandriva, which has a tight Nepomuk & Akonadi integration in KDE 4.3.x. Right, so I setup everything...and notice that the memory usage jumped from 100MB at boot to 170MB, yep all of it taken by the myriad akonadi connectors that came in and the biggest monster of all, MySQL. Why the f&%k do I need an SQL server to manage my personal data????? Next problem, I see that one of the cores of my laptop jump to 100% CPU usage. MySQL at work, doing God knows what. I go through the same routine with Opensuse KDE 4.4.x and its even worse, Google sync doesn't work at all! It always says that the login is invalid!

Nepomuk is another beast, even after indexing all of my files (around 5000, not too many), it hogs a lions share of the system's resources. Add Akonadi into the mix, and I'll never be able to get any work done. If this is the future of KDE, then they're doomed. Nepomuk and Akonadi are research stuff at best, and not to be hoisted on regular users. I'd shudder to turn on either one of them on a netbook.

Turn to GNOME 2.28, and Evolution has an inbuilt connector for Google Calendar and Contacts...very easy to setup and works like a charm. It hogs minimal resources. I'm slowly but steadily turning towards GNOME as my choice of the desktop, never mind that KDE looks visually stunning, KDE 4.4.x is smooth and KDE apps are the best. But, sorry KDE devs, we normal folks have to get our work done...and GNOME doesn't get in my way of getting work done.


§ On 28 January 2010, Guillaume BINET wrote:
838 Hi,

I just wanted to add my vote here.

I am trying the RC2 of KDE 4.4 on gentoo, the semantic-desktop flag & akonadi flags are mandatory and it is less and less usable.

Kontact takes forever to start with a list of errors an user should never have to deal with. The terminology refers to a full blown system administrator task.

So I totally agree, either make it stable, fast, embedded, invisible and reliable or drop it, 4 versions of KDE with an unusable thing that devs push to be mandatory is not acceptable.

I am a software developer with some years of experience and you learn to recognize a pure developer fantasy like this case : drawing big architectures with several levels, introducing full SQL databases, indexers, semantics...

Just compare it to MacOS Spotlight ! It is SQlite based with few plugins, the architecture is probably pretty dumb but it is lightning fast and exactly what the user wants ! You type something and instantly you have your email or pdf or whatever that matches it that instantly appears.

It really taints the otherwise very good record and success of KDE : I love kmail, k3b, krita, kopete, juk, kdenlive...


§ On 13 February 2010, Wim Bakker wrote:
858 Very good lined out plea.
I have used kde from version 1 on but the moment my ditribution of choice
threw in kde 4 I have switched to XFCE , KDE 4 has gone beyond usability
for mere mortals, it simply doesn't do the job anymore, it's splashy but disfunctional, just like vista and windows 7, kde 4 is a design error, no longer a desktop working environment.

§ On 19 February 2010, Paweł wrote:
860 I have to fully agree with Guillaume and with the author of this whole plea.

I'm a long term linux and KDE user - I'm using them both since 2003.
Up till now KDE seemed to me as the best desktop environment available - it was a bit heavier than Gnome or XFCE, of course, but it had many nice features and applications that I found very useful during these all years. I couldn't imagine living without KMail or Kile. Recently updated PowerDevil made using laptop a charm - so I was even more pleased.

UP TILL NOW.

Because with upgrade to KDE 4.4 the power of all these wonderful applications was instantly reduced with introducing the no-opt-out use of Akonadi.
After two days of using it I'm seriously thinking about going back to KDE 4.3, and in the longer term - abandoning the whole KDE.
It will hurt, surely, but what else can I do?

On my desktop - old, but still fast enough for daily use - it takes about two minutes to start KDE - and it was only ten seconds with KDE 4.3
The responsiveness is getting worse and worse - I have tens of thousands mails in KMail, but it worked flawlessly with 4.3.

I don't need semantic desktop because I have all my data well-organized. I don't need contacts stored in the database. And I certainly DO NOT NEED mysql server working under the hood!

There were many times when I thought about changing KDE to a lighter environment, but it had too many advantages to do this.
Maybe this time of transtion has come at last?
If only Kile and KMail had been non-KDE apps this decision would have been much easier...

§ On 22 May 2010, EB wrote:
879 I am also joining this this plea late and must (very unfortunately) agree with all who are of the view that basic stability in core functionality is paramount.

Having used KDE since the initial stability of KDEv3, I have been getting more and more frustrated with, what appears to be, alpha software releases being made mandatory for public consumption.

Contrary to some of the earlier comments, I am all for semantic desktop concepts. But please do not force people to use things that are not ready.

amarok was great until amarok2. The first release (which was pushed out to the world via yum/apt/etc) was a pale shadow of amarok1 - thankfully the amarok team have added most of the things that were missing and it's almost "great" again after a year.

However, KDE release team, please please please stop fcuk'ing with my PIM data until you have a stable alternative, or allow me to chose when to migrate my data.

I have also started to looking at alternatives such as Thunderbird and Evolution more seriously. I don't use the bleeding edge distributions either (ie. I use Fedora 'n-1') to avoid alpha software updates and, clearly, the akondi and nepomuk combination is, or should be re-classified as, alpha on the basis that they don't reliably perform their documented function.

I don't care if they use MySQL under the hood, but I don't want to be forced to go under the hood in order to get them working.

I am well aware that I am complaining about a utility that I get for free and, generally speaking, KDE is great. The problem is that I don't find myself telling that to other people as much as I used to.


§ On 10 June 2010, luke wrote:
889

A small update - it still seems that Akonadi is not yet ready for to be trusted with people's data. Bug 232773 and bug 232774 are both bugs I have discovered, both of which can lead to data loss, neither of which have received developer attention from what I can see.


§ On 16 July 2010, rohitj wrote:
919 I agree with the post. I do not know the problems that KDE developers face, or the issues that different distributions create, but many times KDE updates end up ignoring some data. upgrade from 4.2 to 4.4 was a disaster for me. I had to manually copy all my kontact data and then had to moidify them majorly. Things like link between kopete and addressbook is one of those. The links rather started appearing as contact in kopete, even though there is no email id attached with them. And it was not the only case. Changing blog entries using kontact journal misfunctioned a lot. I understand if version 4.0 or 4.1 were not at all user friendly, but loosing data is a big deal. Application crashing can be tolerated but if the data is lost, thats a disaster. Such incidences sometimes make me think of shifting to some web-based solutions, which will make KDE useless for me. I like KDE PIM. I pretty much do not use any non KDE application other than firefox, but if I loose my data, I feel bad about doing that. I would request KDE team to atleast test the applications for such incidences. IMHO this should be the first priority when testing an application. I hope if any of the KDE team member or KDE fan reads this, they take it in positive spirit.

Add comment

Format:

  • Javascript has to be on to get past my spam protection, and cookies, and there is a delay, sorry for any inconvenience!
  • I reserve the right to moderate comments.