Fifteen years of KDE
Posted Oct 23, 2011 22:25 UTC (Sun) by anselm
In reply to: Fifteen years of KDE
Parent article: Fifteen years of KDE
Fair enough, but I hope you understand that it's not a viable option for everbody.
I'm a big believer in Heuer's Law: »Any feature that cannot be turned off is a bug.«
A couple of years back a lot of programs used to have their own handcrafted code to deal with relational data, usually using some program specific binary format for data and index files.
Nowadays most of these programs have switched to using existing relational data handling code, usually written by people with a lot more experience in dealing with such data than the end user application developer using the library.
True, but KMail doesn't actually appear to use »relational data«. The Akonadi docs say that in the case of e-mail, everything is stored where it used to be stored (maildirs, IMAP server,
) and cached by Akonadi, except for e-mail flags, which hardly require a relational database infrastructure to store. Hence, in the case of KMail, using something like MySQL appears to be an unnecessary complication. It should be reasonably straightforward to offer the alternative of not caching anything and continuing to use the already-existing code (or something else simple) for e-mail flags in KMail. If I was an Akonadi developer I'd do this just to make debugging easier.
It might look like a weird choice from a user's perspective but a lot of software developers seem to agree that this is a good thing.
This is the logical fallacy known as argumentum ad populum, a.k.a. »if everybody does it, it must be right«. »A lot of software developers seem to agree« that using Java or Windows is a good thing, but even so KDE isn't written in Java for Windows. Go figure.
Whether some software you are using is capable of using different implementations is of course dependent on whether its developers anticipated a need to have this kind of customizablity.
In the case of KMail, or more specific Akonadi, this is possible.
According to KDE TechBase, you get to pick your database for Akonadi as long as that database is MySQL. If the Akonadi developers have finally got their act together enough to support a less wasteful storage option then that news does not appear to have made it into the documentation, but then again documentation has never been KDE's strong suit.
to post comments)