Thursday, May 28, 2009

Oracle Calendar Migration: ICS vs UNICPOUTU

We've been asked why we don't just migrate out of Oracle Calendar using ICS format.

We could, but the results are way better using UNICPOUTU.

Let's look at Jimi Hendrix's meeting with Jerry Garcia and John Lennon in ICS format. The meeting title is "Jimi, Jerry, John"

You'll notice that any of the recurrence pattern syntax is absent, as is any concept of the meeting ATTENDEES. Yes, you can take this and you can insert it as is into Exchange or any other calendar system that reads iCalendar. BUT without recurrences, attendees (and therefore attendee response status) and with no connection to managed conference rooms or resources.

It is very easy to insert this way -- but it is also less functional when it arrives at the target system. Users will need to add back all their guests and send invitations, which the guests then need to respond to. And don't forget the great conference room land grab that's going to happen the second your people get wind the conference rooms are not yet booked on the new system.

And let's look at the same meeting in UNICPOUTU export, Oracle Calendar's own format.

It is CRUCIALLY better because while we are (still) lacking the recurrence patterns (don't worry, we re-create those), we have the attendee list and the attendee responses! This means we can re-create the full state of the meeting and make it live in Exchange. This also allows us to re-create the status in conference rooms.

Yes, this means in a system like Exchange that we need to re-propose the meetings and respond to them. But the results at the end are much more seamless and require less user interaction to get back to its previous state. After doing this for almost nine years though we think we've gotten good at it.

Wednesday, May 27, 2009

Name changes and calendar behavior in Exchange 2007

This might seem a little esoteric, but it's still important.

Let's look at name changes in Exchange / Active Directory and how they have an impact on calendaring.

User Name Changes has done a good job of sketching out the mechanics of name changes and its repercussions for email. However, as with anything else there's some consequences for calendars that we feel the need to document.

So let's look at Marge Bouvier and her calendar in Exchange 2007.

In the way of many marriages, Marge changes her name to Simpson after marrying her high school sweetheart, Orenthal.

If we change her name (leaving her alias alone) and go back into her calendar we note that the display name at the top is "Marge Simpson." New meetings are created as "Marge Simpson" but previously created meetings are still labeled "Marge Bouvier."

What happens when previously existing meetings are modified?

So glad you asked.

In her GUESTs' calendars (for example Russ) the original meeting looks like this:

If Marge updates it (say by adding an agenda), the invitation comes into Russ's inbox looking like it's from Marge Simpson:

But accepting it and looking at it in Russ's calendar, it will STILL identify the organizer as "Bouvier."

SO NOW, let's look at it the other way: When the organizer modifies a meeting Marge is a guest in.

Say, Russ modifies his original meeting:

Like this:

MARGE sees the following update come into her inbox (identifying her as Marge Simpson):

And now this exception is listed in Russ's calendar as having Marge Simpson as a guest.


If you're not confused you haven't been paying close attention.

The situation is at least comprehensible because updates are at least still going between Marge and everybody else in the organization. What makes this possible is that her Alias ("marge") remained constant. Meetings which are unchanged keep her as "Marge Bouvier" meetings which are new or get updated list her as "Marge Simpson" (most of the time).

If her alias started as "marge.bouvier" and it needed to morph to "marge.simpson" things would be a lot wilder and woollier with all previous meetings now invalid and updates being impossible (exactly as happens with email in this situation).

I leave as an exercise to the interested reader what happens to any Delegate rights Marge had set up prior to her name change.

Friday, May 22, 2009

True Conference Room Anecdote

So I was having lunch a few weeks ago with two people, let's call them Bill and Kelly, who were stalwarts of the Meeting Maker world back when.

Not surprisingly the talk turned to calendaring.

Kelly was telling me how her non-profit Boston office has two conference rooms, and one being necessary for an auditor for an extended period of time, lots of non-software interpersonal skills (what someone outside of psych-speak would call "peer pressure" or "bribery" or possibly "extortion") were brought to bear to free up the conference room.

It's as we tell you: The most important things to consider in your calendar system or migration are the inanimate objects. People will do anything for conference rooms.

Friday, May 15, 2009

Server-Side Exchange 2007 Holiday Insertion

OK. We know you keep asking for it.

The Sumatra Utilities has had this sort of weird cult following (and we mean weird -- we're not sure we want to meet some of the people who send us email) for its ability to insert holidays server-side on Exchange. But based on CDO it was restricted to Exchange 2003 (and those daring Luddites with a 2000 fixation).

Since the E2K7 code was wide-open for ResourceWatch development, Russ's team just kinda, sorta, threw in the holiday insert. So Memorial Day on my calendar went in server-side via an improved holiday CSV.

And since the code is based on the migration tool we have options to tag "(Migrated)", which was how I actually did it the first time before I went "D'Oh!":

So in answer to the questions we always get:

  • Yes, we're now automatically inserting our own Keyword so it's easier to undo (for those of you who ignore our advice by inserting on your production server without an isolated test).
  • No, you can't use an existing .hol file. We actually have more capability than the .hol files allow.
  • Yes, if you still want to do this client-side there are plenty of directions online, like Customize the Outlook calendar with your company's important HR dates
  • Yes, we added the capability to do a "Stockholder's Meeting" on June 30, 2009 from 12:00 noon to 3:00 PM in ALL Calendars server-side.
  • Yes, we're field testing it with a few folks now.
  • No, we haven't decided if it's going to be a give-away. We're leaning towards bundling it.

Wednesday, May 13, 2009

Is there anybody out there? In a word: No.

So our article Corporate Microsoft Exchange to Google Calendar migrations: Is there anybody out there? generated lots of feedback -- all of it confidential.

We're used to this by now.

But here are the high-level conclusions:
  • CORPORATE Google Calendar? Fuggedaboutit. Does not exist at the enterprise level. Actually it doesn't seem to exist in business beyond the "Mom and Pop started this store and needed some calendaring" level. There is one exception in Europe via an SAP consultancy we're too curious to let drop.
  • Educational: Sure - but we've been put off by free not being a viable business model for us.

So don't wait up for us to do a full state calendar migration from Exchange / Oracle Calendar / Meeting Maker to Google.

Tuesday, May 05, 2009

Preview of ResourceWatch

We thought we'd give you a taste of something that's been in development and now in beta. We've been doing analysis of resource use in Exchange for a while, and when one of our favorite clients in the world asked us about turning our analysis into something they could use on an on-going basis, we kind of just started writing it.

Since pictures are worth more than words, I'll start the screen grabs here.

That's the screen display, based on Silverlight. We just all love the way the data comes up on the screen.

But since Microsoft believes Silverlight has no need to ever print anything, we have a separate portion handling output (we call it the "Printer-friendly version"), and these are representative samples:

So what the heck can you do with this? Well you can finally
  • Have statistics on how often conference rooms / resources are used
  • Know how many people have used them
  • See when the high demand days / times are
  • Start to quantify decisions like "Do I need two conference rooms on this floor or will one do?"

Saturday, May 02, 2009

Broken E2K7 Meetings Part 2: Getting rid of them.

So you have some broken meetings, eh?

It's easy for your users to just delete them -- but your conference rooms have a certain inflexible uncreative temperament that means some biological entity capable of passing the Turing test needs to be looking over their collective shoulders.

Or you could use software.

Specifically our software.

First let's revisit the broken meetings in Conference Room 222 of our previous post. The 10:00 AM meeting is broken, and should not be in the calendar.

How do we have the audacity to call it "broken?"

Well it's not in the owner's calendar, and he tried to cancel it. I'd argue it's pretty clear it should not be in the resource calendar.

So now we probably want to divide this into two steps: Finding the broken meetings and removing the broken meetings.

Those of you with experience with SuExchange2007 will be aware of the little "test" button in the corner. This is where we send you to test that you really do have adequate permissions for the calendar insertion we're about to do.

This is also where we're headed to get this menu:

I've taken the liberty of filling in Conference Room 222's alias: "room222" and indicating that it is a resource.

Now, click this button:

And it will create a text file called "_suExLog_BrokenMtgs.txt" which includes our test subject:

Pressing "Delete Broken Meetings" will remove them and log that to a report.

This is scriptable so if you're interested let us know.

Sorry, folks, this one only works for Exchange 2007.