TL;DR Calendar services sucks.

Imagine yourself as startup. You don't want to spend fortune on paying $5 per user per month for Google Services. Also you don't want to pay that to Microsoft for O365. You want to run it itself because you already have droplet running with your other services (ERP for example. Funny story too btw.) Ok, decision has been made, let install something.

I have pretty good experience with OwnCloud from past as Cloud file sharing service. Calendar is not bad for single user purpose (understand it as personal calendar, no invitations to others, sharing is maximum I tried) What can possibly go wrong when I deploy that and use its Calendar?

Well, lot. OwnCloud itself runs well (no rant here) but Calendar is such pain in ass. Trouble is with CalDav under hood and its fragmented standards. So, you want to send invitation to your team for recurrent meeting. Nothing weird. It sends as one invitation to each one, good. Now you realize you have a conflict, so you need to change time of one occurence. Move it, send update. And here comes shitstorm. It is not able to bisect one occurence from series. So it splits it to separate events and send invitation for every single one. 30 INVITATIONS IN 2 SECONDS! Holy sh*t! You want to revert that. Nope, won't do. So you accept your destiny and manually erase every single one with memo in head about planning recurring events.

Another funny issue is when SwiftMailer library (which is responsive for sending e-mails from OwnCloud) goes to spamming mayhem. It is pretty easy to do. When e-mail doesn't comply to RFC, it is rejected, right? So if because of some error CalDav client passes non-compliant e-mail (space as last character is non-compliant btw) and SwiftMailer tries to send it to multiple recepients (one of them is broken, rest is fine), it results in repetitive sending same invitation over and over in 30 minute interval. Sweet.

So now I am sitting in front of browser, looking for alternatives. Not much to choose from. I guess I'll try SOGO. It looks nice. For now.

Add Comment