Living With Evolution


Evolution is one of those programs that you have to love to hate. I've been using it since it came from Ximian, the monkey people. They also came up with Nautilus, which was originally a file manager but was later absorbed by the Gnome Project and morphed into a pretty decent graphical shell. Ximian got absorbed into Novell and morphed into who knows what.

The Ximian developers never seemed to be quite on top of it, and were away from home a lot. I could only seem to communicate sporadically with them about bugs I found and suggestions I had and seldom got good answers to questions I asked. I had the feeling from their website and from what communications I did have with them that, as a one-person operation with a company name that no one has ever heard of, I was kind of transparent to them. If my name had been IBM or the University of California I'm sure they'd have been right there with "yes sir" and "no sir" and all the answers I needed.

The Gnome Project adopted the Evolution groupware suite as their own with the good, the bad and the ugly all wrapped inextricably together. I've had some scary problems with it that I couldn't solve. I've lost addresses, lost email - and managed to do some very convenient and elegant things with mail, addresses, etc. that I can't do with any other mail user agent or groupware.

The Good:

Evolution has what is arguably the most elegant and intuitive user interface of any mail user agent or groupware suite available for Linux. Thunderbird doesn't even come close, although it's a very respectable mail management suite and getting better all the time.

I couldn't begin to list the features and refinements in the UI that make it an absolutely first rate mail manager and groupware suite. There are a few things missing, but compared to other similar packages out there, it's in a class by itself.

The Bad:

Evolution apparently has a very convoluted code base. Bugs are many and crashes are all too frequent, indicating that the source code probably exists in a state of controlled chaos. The GObject and GTK+ libraries on which it depends aren't known for issuing particularly obvious warning and error messages. Evolution's internal system for saving state and configuration settings is sprawled across its per-user configuration file heirarchy (~/.evolution/) and the per-user gconf database according to a rather non-obvious division of labor. There are poorly documented (perhaps undocumented) features to the package that are simply part of the lore one just knows, or learns from others with knowledge of it. It's an elegant mess!

The Ugly:

If you're not careful, Evolution can lose your email, eat your contact list, and zap your personal calendar faster than Warren Buffet can say "corporate merger"! Evolution can get itself into a state in which it crashes repeatedly and predictably when certain operations are performed, making you fall back on more reliable email clients such as Mutt, and putting your calendar and contact list out of your reach.

Here are some insights and procedures which will help you live more serenely with Evolution. They're based on my own several years of experience with it - hard-earned knowledge gained from losing important personal data and struggling with crashes frequent enough to make Windows ME look stable.