August 23, 2013
CalDAV and CardDAV projects in Linux are no good.

GNU/Linux toolset for CalDAV and CardDAV is abominable. It’s basically a bunch of PHP projects (and their derivatives) and a twisted python of Calendarserver amid them.

I don’t even want to dwell about what’s wrong with PHP projects. The choice of the programming language and all the “framework” it depends on, says it all.

Calendarserver is so-so, although I cringe every time *.plist format is mentioned. But its CardDAV module doesn’t work with KMail, the e-mail client application that I prefer. Or perhaps it’s KMail’s fault. Not to mention, the choice of authentication options of calendarserver is not particularly UNIX-friendly: either you store accounts’ credentials in a dedicated XML file or use LDAP. What about good old UNIX PAM or anything more secure and common, hmm?

That said, I started making steps towards implementing CalDAV and CardDAV in Guile. Lightweight, simple, standards-conformant, Linux-friendly, etc. Surprisingly, there Guile lacks quite a number of libraries that I could’ve reused. So I’m announcing my first step, a library to handle vCards. I’m aware that there are already libraries written in C for that, but I’d rather not deal with FFI, memory leaks and all that stuff now, if I want the project to see the light anytime soon.