Tim Bray has a post titled PHP Calendar Fun, in which he says:
The conclusion is painfully obvious: whoever first provides a family-scheduling tool that non-geeks can use and Just Works with the tools most people run their calendars on is going to make a lot of money and do Humanity a major service.
Anthony Coates picked up on that and wrote in his post Poor and Stupid:
I also want a solution
- that will let me share a calendar with a few colleagues;
- which is available offline when my laptop is offline;
- which can be synchronised with my phone calendar.
Chuq responds to this in his post, kontrawize: Poor and Stupid, where he says:
My mac does this out of the box.
No. It does not.
Tom and I were talking about this earlier today: why isn’t this an obvious application? Why does it have to be so hard to cobble together something that works?
This is the problem when people who are familiar with technology try to work with non-geeks: they don’t understand that what’s simple to them is rocket science to everyone else. Chuq uses the two words that should not be allowed anywhere near a conversation about family calendars: export and sync. That stuff’s easy to him; it’s not to most of the world. A real, honest-to-goodness family calendaring system cannot use either of these words — it has to just work.
Here’s a scenario:
Let’s take your typical household: Mom and Dad, and kids Sue and Tim. They each have their own Mac and their own local calendaring application, which for the purposes of this example I’ll call iWish. The whole family is tech-savvy enough to be able to put their own schedules into their calendars and check them regularly. The part of iWish that doesn’t exist is how to make these calendars work together.
[Note: I'm not talking about PDAs and cell phones and such like that, because the simple boring stuff doesn't even currently work as yet. Yeah, it'd be nice if the mobile stuff worked too, but we'll put that aside for iWish 2.0.]
How it should work: It’s the weekend, and Mom is looking at her calendar for the upcoming work/school week. She sees that on Monday, Sue has soccer practice after school from 3-5 and that Tim has a orthodontist appointment at 4:45. She changes Sue’s soccer practice appointment to say that she’s talked to Jane’s Mom, that Sue should go home with Jane after soccer, and that Mom will pick her up after Tim’s done at the orthodontist.
Monday morning, Sue looks at her schedule on her Mac before leaving for school and sees the changes her Mom made.
Monday afternoon, Dad looks at the schedule, reads the details about the orthodontist appointment and sees where it says that Tim’s getting braces and it should take about an hour. He knows that that means the family won’t be home until after 6, so he plans dinner for 6:30.
Note that in the above, there’s nothing about syncing. There’s nothing about exporting. And it doesn’t work at all unless one person can change another person’s schedule. This is where most of the existing stuff completely falls apart.
Tom and I use Now Up-to-Date, but it’s expensive (it would cost our hypothetical family $400-500 for the current version) and it requires a server. That’s not acceptable for this situation. We also both use Entourage for email which we wish had this kind of calendaring in it, but it doesn’t.
What I’d like to have is a network-savvy, sharing-savvy version of iCal. If it required .Mac for its full functionality, well, that’d be a good reason for Apple to put the work in that it would require (remember, Apple’s a for-profit corporation, not a religion or a charitable organization, no matter what you hear this week.)
Here’s how we would use it: Sean would set up sets in his calendar named “High School” and “College.” I could view those sets, and prioritize them according to how I think that he ought to be spending his time. I have a set called “Business Appointments,” and Tom ought to be able to both view what’s there and set up meetings that both of us should be at (especially for this week!). Sadly, most calendar apps have a “you can look but not touch” attitude towards other people’s schedules, and that just doesn’t work for us here in the real world.
In short: the only way that Chuq has a setup that’s doing this is if he’s using as-yet unannounced software. And boy, do I wish that was the case, because I’d buy it the second it was available. But considering that I’ve been asking for this for about ten years now, I’m not holding my breath.
Why is this so hard to do? Have you come up with a solution to work around these problems? If so, tell me in the comments.