В общем, я считаю, что лучше использовать UTC.
Иногда вам может понадобиться местное время. Тогда я бы предпочел использовать UTC + информацию о часовом поясе.
В общем случае для повторяющихся событий время может быть чрезвычайно сложным, и вы должны очень тщательно проанализировать варианты использования.
Представьте себе повторяющуюся встречу, каждый вторник в 9:00.
Если DST изменится, встреча все равно должна состояться в (новое) 9:00 утра.
Но не добавить к встрече некоторых парней во Франции. Для них встреча в 6:00 вечера.
И они меняют DST по другому правилу.
Когда вы меняете DST, они этого не делают, поэтому какое-то время (пока Франция не изменит DST) кто-то должен быть «выключен»: либо ваша встреча будет в 10:00, а их встреча в 6:00, либо ваша - в 9:00. и переместить их в 5 вечера. Другого пути нет, компьютеры не имеют к этому никакого отношения.
Как приложение решит, кого следует «исправить»?
Это группа с большинством членов? (1 парень в США против 20 во Франции?) Или речь идет о важности человека? (что, если один парень в США является генеральным директором?)
Как вы храните эту информацию?
Мое лучшее решение - использовать UTC + один «основной часовой пояс»
Пользователи в «главном часовом поясе» побеждают (остаются неизменными).
Все может быть довольно сложно, но в целом я обнаружил, что UTC решает больше проблем, чем вводит.