Saturday, March 11, 2006

30boxes calendar application

I came across a new online calendar last night called 30 boxes; 30boxes.com. In a word, wow! I've long had personal calendar requirements that have defied nearly all calendar application's (online, or desktop) ability to win me over. 30b might just do it.

After seven, or so, years as a Yahoo! calendar user, I'm seriously considering moving over to 30b. I don't have complete control over this decision however, as my spouse shares a calendar account with me, so, I'll have to convince her too.

Let me start by describing the four calendar requirements I have that narrow the calendar playing field significantly for me. As I'm writing this, I'm realizing I'll finally have a URL to send people to when they ask about my bizzarre calendar requirements. I can finally stop repeating this mess.

- Shared login/account. My wife and I need to use the same login/account. Sharing calendars and entries, as opposed to the account itself, as all calendar applications would recommend we do, doesn't cut it for us. Think about a refridgerator calendar affixed with a magnet to your ice-box; it's a shared page, there isn't a page for me, and a page for my spouse. So, we carry this metaphor into our online calendar experience; we share the login/account ID and password. For us, it's the only way to ensure we don't miss something the other person added.

- Mobile phone access. XHTML/WAP browsers must be able to access a stripped down version of the calendar (no superfluous graphics/UI please). Add/delete, and view events by day are required features. Mobile is required as 75% or so of the events I want to add to my calendar come up when I'm nowhere near a desktop machine. Therefore, I need to be able to view/add from anywhere, via my phone (currently a Treo 650).

- Native online/web access. Sadly, this rules out iCal (I'm a Mac user). I need full-access, to live (not sync'd, see below) data in my calendar from an arbitrary set of computers of various operating systems.

- No sync'ing required. Synchronization yields latency, and latency is a very bad thing. Notice that the three requirements above are all in support of this no-sync requirement. My life moves fast (married, with two children), and long ago I vowed never to be bitten by the calendar entry collision problem. My wife adds something to the calendar, while I'm adding something at the same time in the same time-slot. Sharing a login, and always being connected, live, reduces the likelihood of entry collision to its smallest possible probability. This isn't to say that I don't want the application to support sync'ing. I'm close to making that another requirement. There are data sources I want blended into my calendar, of which, I don't care about latency; just not my, or my family's, data.

That's really it. Of course I need all the add/delete/categorize/edit/move/notify/remind/repeat/update/blah/blah/blah functionality that any calendar app worth a second look would have, but I'm assuming a base level of functionality here; this is the 21st century afterall. You may know of a calendar app that does mobile, but if it doesn't do it well, or its web browser UI is broken, it's off my list of possibilities.

The killer for nearly all online calendar applications is mobile phone access; very few actually support this (Yahoo! and 30b do; obviously).

So, with my base requirements fulfilled, I dove into the standard functionality provided by 30b. I couldn't figure out how to add events from my mobile initially because there was a single text input field associated with an "add" button. How could I add an entry with only a single field? After looking through the bug list to see if they were going to fix the bug, I discovered it wasn't a bug at all. One of the pivotal features of 30b is what they call "One box" (I used to work for a company called onebox.com; funny coincidence). As the name suggests, it's a single box for calendar event entry. The catch is that they do some fun parsing of the text to extract an entries' relevant info. "3/12 6pm dinner" creates an entry on March 12th (current year), at 6pm, for "dinner." Now we're talking! Generally speaking, ordering of text doesn't matter "dinner 6pm 3/12" would have done the same thing. You can get fancy too with entries like "2-3pm Monday Meeting with Bob (at his place) tag meetings." That would create an entry for the next occurring Monday at 2pm, for one hour, with subject "Meeting with Bob", and notes "at his place", tagged as "meetings." It goes on from there, with much more complex entries. Such a cool way to create a calendar entry relative to the six to twelve steps I have to go through with Yahoo! to create similar entries.

This kind of intuitive UI is something I love. I should note however that most of the world does need explicit UI thrust in front of them to accomplish something. For example, MapQuest tried single text field address/location input(ala Google maps) at one point, but negative user reaction brought back the field-per-component UI; sad but true.

Unless Yahoo! revs its calendar application really soon, 30b will become my personal calendar.

No comments: