Andy Heninger <aheninger@google.com> wrote on Thu, 27 Feb 2014 at 15:32:42 -0800 in <CAFXfk_3HsxkRK1UmEj0_rb5uVN-E-6QWN7HbQcqUUv25t7iEfg@mail.gmail.com>:
When users schedule events, the times are typically stored in a calendar database in UTC/GMT.
This is, of course, the wrong way to go. What *SHOULD* happen is that events should have a home timezone, and they should be stored in that timezone. It may be a different home timezone for different events, and some software may not be so flexible, but that's how it should work. Defaulting to UTC is just wrong -- it'll be more wrong than it is right, and is worse than just using the user's local timezone (and remembering what it is).
The conversion happens when the event is created. If a subsequent tz rule update changes the GMT offset of the (future) event times, the previously scheduled events will appear to move. For events that are shared among people in multiple time zones there is no good answer.
For events shared among multiple people it's not great, but the answer is to pick a timezone for the event, typically the timezone of the lead host, and reference it clearly. --jhawk@mit.edu John Hawkinson