Ти ставиш пост на 19:00. Летиш кудись за три години різниці. Телефон міняє таймзону — і твій ретельно обраний вечірній слот тепер о четвертій дня для аудиторії, для якої він писався.
Чому так стається
Більшість сервісів зберігають момент часу й показують його в тій зоні, у якій пристрій зараз. Для зустрічі в календарі це правильно: подія відбувається в одну мить, і ти хочеш бачити її за місцевим часом.
Із постом навпаки. Це не зустріч, а намір щодо вечора твоєї аудиторії. Зберігши лише мить, ти втрачаєш намір.
Як правильно
Зберігати таймзону разом із часом, як властивість поста, а не глядача. Тоді 19:00 Europe/Kyiv означає 19:00 у Києві — байдуже, чи ти в Києві, Лісабоні чи Токіо.
Це заодно правильно обробляє перехід на літній час, чого фіксоване зміщення не робить. Зміщення +3 правильне пів року й неправильне решту; назва зони правильна завжди.
Одна аудиторія — одна зона
Якщо твоя аудиторія в одній країні, постав її зону раз і забудь. Якщо аудиторій справді дві в різних регіонах — це аргумент за два розклади, а не за компроміс, який не влаштує жодну.
