Where's a good shared calendar?

Topic: 
Tags: 

I really wish I could find a really good calendaring tool. I've seen many of the features I want scattered in various tools, though some are nowhere to be found. I thought it would be good to itemize some of them. I'm mostly interested in *nix -- I know that on Windows, MS Outlook is the most common choice, with Exchange for sharing.

Sharing (of course)

Shared calendars are becoming more and more common, but most of the ones I have tried have been hard to use. My personal calendar should really be a combination of a variety of calendars:

  • A calendar just for me
  • A calendar for private groups I belong to
  • Public calendars

Some will be read/write, some will be read only. Some will export to others with more limited information (such as the classic free/busy exported calendar.) However, the combined calendar, subject to various factors, is the one that would be synced to a less-smart device, such as a phone or PDA.

Obviously you want a nice permission system including one for temporary access. For example, if I'm meeting a person next week I might give them access to my calendar for just that week. Or I might give them a larger range, but only for a limited time. I might let them add an event, but only on June 23rd. I don't want to have to add and revoke permissions.

The sharing engine should ideally be easy to set up, decently secure and ideally open source.

Sharing also happens outside a sharing engine. It should be easy to send ical entries to other parties, ideally with drag and drop into E-mails and IMs, and to likewise import them.

Shared to-do lists, too

To-do lists should have just about the same functions calendar events have. I should be able to add to-do items to shared group calendars, or to other people's private calendars (such as employees) if I have permission.

Level of binding

Events that come from external calendars should be flagged (even if I can't write the external calendar) with information about how much they apply to me. That's because even though I import a calendar for a group I'm in, I may not plan to attend everything on it. Indeed, some imported calendars, notably public ones, become more "suggestions of possible events."

Some calendars implement this flagging by having you import an external event into your "real" calendar. Unfortunately in many cases this makes the event show up twice, something the tools could obviously be smarter about. I don't care how it's done as long as its easy and transparent, but I think it's important to do a live import rather than a copy so that if the original calendar changes or cancels the event, I see those changes.

Calendars will have a default binding. For example chances are you will attend everything in your personal calendar, most things in a family or workgroup calendar and few things in a lecture series calendar. You should be able to manually set the level but the default should normally work well.

Here are some levels I think one might set on tagging an external event (or even a personal one) into your day.

  • I will not attend this event (usually means it will not be shown.)
  • I will not attend but need to keep track of this event.
  • The event is canceled.
  • I have not made any decision (default behaviour.)
  • There is some chance I will attend (perhaps a percentage can be applied.)
  • I want to attend, but something may change my mind.
  • I plan to attend. (A typical default.)
  • I am central to this event (speaking, leading meeting etc.)

When viewing the calendar a slider should allow a quick change from seeing everything (ie. browsing for potential events) to seeing only things you are very likely to attend. Likewise such a slider would control what gets synced out to a PDA or cell phone.

If declared and open, this status can also do RSVP management. I could put a party into a public calendar that friends import, and they might then mark that they plan to attend the event with a certain probability, and in the style of eVite, I might be able to see that.

A roaming interface, and web interface

I should be able to see and enter events from the web, or from portable devices. Since the portable devices will not have the same functionality as the full calendar, the system must be smart about how to import from them.

Another useful interface is an E-mail interface. By sending an E-mail to a magic address, I should be able to put something on my calendar. I could E-mail some unstructured text (with a pass phrase) to the magic address from anywhere that a person can E-mail, and get something on the calendar, possibly getting a reply about how it went. Likewise an IM-bot might make sense, so I can send an IM to my calendar.

I must also be able to work with my calendar on my laptop even when it is offline. A web interface is not enough. If need be, an existing calendar program can be used with smart import/export. (For example, I might add special keywords in unstructured areas which are interpreted by the system.) Of course, a native program that does it all is still to be hoped for.

Various alerts

The calendar should be able to figure a bit about where I am (indeed it should know that better than anybody) and send me event alerts appropriately, including with screen pop-ups. E-mails at the start of the day with the day's and tomorrow's events, IMs if I am online elsewhere, or cell phone calls and text messages.

Free form input

GUI input is nice, but free form input is a must. Some calendars are doing this already. I should be able to say "with bob g. 3-4pm Friday, room 23" and have it figure out what that means. In particular, it should know my address book, and figure out who "bob g." is, possibly even adding this to a calendar of his I have access to, or offering to do that. If I know more than one "bob g" it might ask me to pick one, but I should be able to tell it that "fred" is always a particular Fred I know well even if I know multiple Freds.

The presence of others might also allow permissions. For example, possibly all the people invited might have permission to change the description of the event by default, or remove themselves from it. A single invited person might be able to cancel the event. (Such removals or cancels should leave a ghost so people can see this happened.) It may also make sense to allow the others to make proposed changes which the event owner can approve, such as moving the time, or adding more people.

After parsing the free-form input, it can display it structured so I am sure it got it right, but it should allow re-editing of the either the GUI input or the free-form, and even correct the free form with changes I make in the GUI version and vice versa. Some less frequent tasks might only be available through GUI.

Be smart about events

Earlier I detailed the calendar understanding a flight. It should do lots of things like this. I should also be able to enter manual changes of state, such as going on vacation.

Handle a conference

I've wanted for some time a calendar that can also easily handle a conference. A conference will have a public calendar with lots of concurrent events, often 10 or 12 tracks of them. I would like to be able to view that calendar, and then tag particular events as ones I will attend or may attend. It must be possible to tag more than one event at the same time and have it be handled. Then I should be able to export to my PDA the chosen subset of events and meetings at the conference.

I've always wanted a good conference program manager for PDAs, one that might be given to me by conference organizers which could do this even if I didn't have a calendar able to handle it. I don't want to carry a giant conference book, so putting the info in my PDA is the right answer. I would go over the program, note the 2 or 3 things of possible interest in any given timeslot and then have something easy to browse to figure out what I am going to do.

PDA Notes

I've noted I want to sync my calendar to my PDA, Cell Phone or other such devices, or indeed to other calendar systems. It must be understood those systems will not have all of these fabulous features, so this must be managed. Events might not be exported or might be modified on export. Copied events from emails, other calendars etc. must get good defaults.

So who wins?

What are your favourite tools? I have not tried every system, do any of them come close? No, I doubt any program will do all of this (in particular the RSVP and conference features are more in the bell and whistle category) but I haven't seen anything to satisfy me yet.

Comments

Brad.

While I have not used a shared calendar, other than at work on the network, for the things you discuss in your post, I have just started using the Google Calendar to share events between my wife, son, daughter and son-in-law.

We are able to post events for each uf us to view. I can invite others to view the calendars as well.

I'm happy with what I can do so far, but as I said, I haven't gone into the depth your are discussing.

As noted, I have tried google calendar. While I like a web interface for roaming, it doesn't quite compare to a dedicated app in ease of use and speed. And it doesn't have a way to sync with my PDA or cell phone (until syncing over the cell phone network works, I suppose, if you buy the data service.)

Brad, I found your site as I looked for unique ideas. Yes congrats, I am calling you unique and your ideas good.
The reason I am looking for unique ideas is because I am building a system to organize and manage all my information.
My calendar has some of your ideas. My calendar also displays things from other parts of the system by date. However, I wanted to say something about the way most systems store contacts.

I have address the following problems and others for contacts:

Why can't I have the same phone number linked to two contacts? (Mom & Dad)
Why can't I have the same address linked to two contacts?
Why am I limited to the number of phone numbers or address that I can put on one contact?
Why can't I leave an old phone or address and simply mark it so it is striked out?
Some systems don't allow you to link two contacts together.

My system does allow you to do this and more.
My system also has 5 ways to notify me of events. Text to Speach(audio), wav file(audio), email (home or cell phone address), has it's own web interface, YAC interface to pop up message on computer screens. IM integration is an idea that may be implemented in the future.

My point is that most systems designers are not thinking outside of the box. (have you seen gmails contacts? Good thing they are working on a better version, which I can't wait to see.) They design to mimic the systems of the past. Where is the progress in that?

freak3dot

Have you built your calendar? Is it available?

We spoke about this at SHDH tonight. My wife and I use Palm Treos and http://www.goosync.com/ with some success. There's one set of events that appears on both palms and a google calendar. My own google account also merges in other google calendars.

I do not have a way to designate that an event on my palm should be on my google cal but not on hers. There are various sync issues every now and then, such as the 'alarm' flag not getting set on events I receive from my wife. In other words, it's really crummy compared to how such a system ought to work, and I don't know why things are this hard. But, it's also a working system that does a useful thing for my personal info, so that's pretty cool.

Though it doesn't yet work for my old devices, and it double-fails a test I didn't include, regarding privacy. Going with google calendar puts my calendar in the hands of a 3rd party, which is troublesome, and adding goosync puts it in the hands of an additional 3rd party, though quite possibly they forget the data once it has gone through them. Data on 3rd party servers is not covered by the 4th amendment.

Now, remote web access is hard for most people without a 3rd party being involved, I wll admit, though there are ways that those 3rd parties can do it well, by encrypting the data and using the password I provide during sessions to decrypt it only while I am logged in, extracting things like E-mail alerts into a non-encrypted space when I am not logged in.

Brad,

Many of your ideas are also of interest to me.

Recently I found a web site from a UK company which had PC-based applications but with data stored on their web server, also with web based "sub" applications for access when away from base.
But unfortunately I did not record their URL and now cannot find them.

Have also looked at Airset but the program seems a little error prone.

Have you found anything to satisfy your requirements?

Regards,
Don

In response to Don's UK search:

doing some research on calendars to avoid the expense of upgrading all PCs in our offices to MS 2007 Professional (we are a non profit on limited budget). Came across this site for a shared calendar program from the UK, maybe the one you are looking for. www.myoffice.net.

Nancy

I have the same problem Brad.

I ve used to work with palm software until lost all my notes ( 2 times) with no explanation.

Just had a look at myoffice, because of Nancy's tip, but is expensive. And why not find a free software?

Keep searching !

Best Regards
Al

I know this is an old post, but if you haven't found a solution that works for you yet, you should try out our service, Airset - it's free and we give you a whole shared computer that includes IMHO the best shared calendar on the internet. All sorts of permission controls, as the organizer you can set roles and permissions, etc. If you try it out, let me know what you think.

-Brian

Just ran across this post searching for online shared calendar info and wanted to share a few results. As Brian mentioned above, Airset offers the most robust offering as far as features and services beyond a simple calendar. If you want to share files or collaborate online and more I suggest that you check out Airset. On the other hand if you prefer to have a very user friendly, award winning calendar & file sharing platform then check out 30Boxes.
Also for a list of many online calendars to check out for yourself go to www.calendarreview.com

Cheers~
Anthony

A shared calendar is not a simple beast. It can't be on a shared virtual computer, at least not only there, because it is necessary to sync the calendar to your phone/PDA, and it is necessary to access it when offline.

So while it's harder, the only way to do a real working calendar system involves real downloaded code on phones, computers and other code in the central-server/cloud

You might pull of just syncing well with existing calendars on phones and PCs though, but you will lose out on the features that I seek.

@Brad, at AirSet we've spent a good deal of effort supporting syncing to devices. For mainstream phones we have a dedicated java client you can download that supports contacts, calendars, and Lists, for smartphones we are supporting the ActiveSync protocol, essentially emulating an Exchange server so, for example, you can sync contacts and calendar to the native address book and calendar on your iPhone. Currently we support a desktop sync client for Outlook, but eventually we will replace that with our Exchange emulation.

Brian

check out basecamp i think its what your looking for basecamphq.com

Sorry, had to close the comments on this thread due to excessive spam. Sorry if you had something useful to add!