iCal Sucks Hugely

Search

I’ve been using iCal for a couple of years now; never really loved it but
it’s OK. Today for
some reason my PowerBook locked up (no big gripe, this hardly ever happens)
and when it came back up, iCal showed a little red splodge next to my
calendar which when clicked said “iCal was unable to load the calendar. The
file might be corrupted or temporarly (sic) unreadable. you can try
again later or reset this calendar. Resetting the calendar will remove all
calendar content.”
There are not words to express how much this sucks.
A programmer working for
me who left this kind of hole in a personal-productivity application would be
subject to dismissal.
Anyhow, I got my life back; read on to find out how, along with some other
advice to iCal users and to Apple.

What Went Wrong ·
Of course, in a sane world iCal would store a calendar named “Tim” in
Library/Calendars/Tim, but they’re off in Library/Application Support/iCal/Sources/<long-hexadecimal-string>.
And mine contained eight hundred thousand null bytes.

First, you write out the new version without touching the old version,
and carefully check that it worked.

Then, you move the old version aside, giving it name like
Tim.ics.backup, and carefully check that the move worked.

Then, you move the new version in to the location of the old version
and carefully check that this worked.

Then, you delete the backup. Even better, don’t; keep a few generations
around.

I don’t want to be rude. But a personal-productivity application that
updates crucial high-value information files in place is Broken As
Designed, and evidence of an extreme lack of professionalism.

Dear World ·
Try to find an alternative to iCal. While its UI is good, it’s still kind
of sluggish.
And all the exciting action out there is in shared calendaring on the net, so
you can update it from anywhere and
share it with
family and friends.
Anyhow, my hunt for alternatives is now officially in high gear. I would like
an Open-Source alternative so I can verify that they, unlike the iCal
developers, know how to save files safely.

But if you must use iCal, publish your calendar. That means, find or build
a WebDAV server somewhere, or use Apple’s own .Mac service, so that when iCal
decides that it’s OK to discard your whole life, there’ll be an alternative
somewhere else.

That’s what I did, so I was able to go get the .ics file back
from that server and restore my life.
It could have been worse; it could have decided to upload the corrupted
calendar and overwrite the backup.