Day 46: Two-Way Calendar Syncing + Sandy
I had no class today (Yes!) so I set off to solve a long time issue I had with my life: Calendar syncing. When I am at home, I love the beauty and power of my desktop calendar, iCal. When I’m out at conferences or meetings, I take my Mac with me. No issues there. Since I don’t carry my Mac everywhere I go though, sometimes I become calendar-less. When you’re as busy (or forgetful) as I am, this is an issue. Enter the convenience of my web-based Calendar, Google Calendar. Any calendar will do, I’m sure Yahoo has a nice calendar app as well, but I’m used to gCal. Sometimes though, you just need a personal assistant. Seriously, we are all busy people. If only I could afford someone to help me plan and remember things. Oh yeah, those crazy Values of N people created Sandy (the personal assistant). So now I have my personal calendar at home, my internet calendar for school and work related information, and Sandy as my personal assistant. My life could be so organized, but its not. I spend a good amount of time keeping these all synced together by hand. There has to be a better way! Yesterday, when I briefly mentioned FuseCal, Matt (from FuseCal) left a comment mentioning CalDAV. I must say, that made me curious and led me to the solution today.
First let me say, this can probably be done with any desktop or web calendar, but I prefer iCal and gCal. The steps will be really similar so I’m sure you can figure out the differences.
Now, lets go get a third party account that makes all the magic happen. Go ahead and visit icalx.com to set up an account. I’ll wait.
iCalX is a free WebDAV server that is especially made for calendars and will be used to make our desktop calendar available online. Now open up iCal and control click (right click) on one of your calendars. Select the “Publish” option.

Now, change Publish on: to “a Private Server”. Now, under Base URL: add in “http://icalx.com/public/UserName” where UserName is.. well your username. Keep in mind this is CaSe-SeNsItIvE so if it starts with caps, you better make it a capital here. Also note you MUST use the public domain and not private. I understand this isn’t as secure, but web calendars don’t allow you enter a user/pass to access the calendar feed. Unless you’re Brad Pitt, I’m pretty sure no one will be looking for your calendar online anyways. Obviously the next step is to enter the username and password for your account. Once done, be sure that “Publish changes automatically” is checked as well as “Publish titles and notes.” This is what publishes your calendar online automatically. Now hit publish!
Cool, so now your desktop calendar is available online. You can import this in just about any website that supports ics files. That includes our gCal and the new FuseCal. Go online to iCalX and copy the calendar link (right click and select copy link location).

With that link copied, head on over to gCal. Once you’re all logged in, add this new feed by url. Like so:

In the box that comes up, paste the link you just copied. Then hit add. Now go back to your calendar. A one way sync between your desktop calendar and the web calendar is now complete! (Note: You might have to goto the next month and return or something. The calendar has to re-render for the changes to appear).
A one way sync is cool, but a two way sync is cooler and much easier. In Google Calendar, you automatically have a personal calender. If you notice on the left hand side under My Calendars, a calendar should exist. If not you can make one. Once you have a calendar there, click the little arrow right beside it and select Calendar Settings. You need to copy the private (yes, more secure) ICAL address. Again do this by right clicking (control click) and selecting copy link location).
![]()
Now head on over to Apple’s iCal. Select Calendar > Subscribe from the menu. Now paste the URL you just copied. Viola! (Note: Be sure to set it up so it automatically updates. I put every 15 minutes but thats up to you) You now have a roundabout two-way sync between a web calendar and a desktop calendar. Any updates will be automatically sent to one another so you always have all of your events no matter where you are.
What about this Sandy thing? Its easy too! The Values of N people were nice enough to provide an ics calendar for her events. Log into Sandy and choose one of your Daily Digests. At the bottom of the page, you’ll find the feed information. Just like you did in both apps, copy the URL and paste it as a new calendar url.

So now you’ve created a whopping 3 feeds, one for each service. Each of these services are now intertwined with one another. Sandy is the only feed that isn’t 2-way, but thats OK with me. Hopefully this helps you manage your life better, as I’m hoping it will mine. Thanks to Matt at FuseCal for getting those creative juices flowing about WebDAV.
Tags: 2-way, Apple, calendar, desktop, desktop calendar, fusecal, gcal, google, google calendar, ical, iwantsandy, Sandy, sync, values of n, web, web calendar, webdav, will life












April 1st, 2008 at 1:10 pm
Glad the CalDAV tip was handy! I actually hadn’t thought about hooking things together this way… I like it a lot! Creating an online iCal feed from your Apple iCal events is slick. Ultimately, I look forward to simply syncing all my calendars to 1 CalDAV account, instead of managing multiple iCal feeds, but this is awesome for the time being.
cheers,
Matt Gillooly
FuseCal.com
April 22nd, 2008 at 10:11 pm
[...] call me paranoid, but I really have to keep tabs on everything. Just in case, ya know? Anyways, iCal, gCal, and Sandy have kept me pretty damn happy (and punctual) which is why today (the 23rd) is oh so [...]
May 16th, 2008 at 11:42 am
[...] available online? Well, we can but it takes a little work. A little while back, I wrote a how-to guide synchronizing a desktop calendar with an online calendar (and vice-versa). You can further [...]