YourWorldTime

О проекте YourWorldTime

YourWorldTime — набор инструментов для работы с часовыми поясами, построенный на одном принципе: никогда не утверждать ничего о времени, что не было вычислено из базы данных IANA в тот момент, когда это понадобилось.

Зачем он нужен

Большинство инструментов для часовых поясов опираются на сохранённую таблицу смещений. Эта таблица верна до тех пор, пока какое-нибудь правительство не передумает — а это случается несколько раз в год, — и после этого она тихо ошибается, причём так, что ошибка выглядит человеческим просчётом в расписании, а не сбоем программы.

Каждое смещение, каждая дата перехода и каждый перевод на этом сайте берутся из копии базы IANA, которую приносит с собой среда выполнения, через интерфейс Intl. В этом коде нет ни одной таблицы смещений. Когда база обновляется, новая сборка это подхватывает, и сайт снова верен — без единого изменения в коде.

Как он устроен

  • Каждая страница собрана заранее. Здесь нет ни сервера, ни базы данных, ни программного интерфейса.
  • Абсолютное текущее время формируется в вашем браузере, а не в странице. Заранее собранная страница честно не может утверждать, что знает, который сейчас час, поэтому она и не пытается.
  • Устойчивые факты — смещения, даты переходов, окна пересечения — вычисляются при сборке и указываются по состоянию на неё.
  • Сайт пересобирается ежемесячно, а также 1 марта, 1 апреля, 1 октября и 1 ноября, чтобы обновления базы попадали на сайт раньше тех дат, которых они касаются.

Что здесь есть

Десять инструментов, 80 страниц городов, 1448 переводов между парами городов, 240 переводов между сокращениями и двенадцать руководств. Каждая сгенерированная страница несёт факты, вычисленные именно для этой пары: почасовую таблицу, даты перевода стрелок в обоих городах и часы, которые эти два места действительно делят.

Чего он сознательно не делает

  • Никакой слежки. Ни аналитики, ни куки, ни сторонних скриптов.
  • Никаких учётных записей. Обратные отсчёты и планы встреч живут в адресе страницы, так что поделиться ссылкой — это и есть вся функция.
  • Никаких выдуманных данных. Там, где у пояса нет сокращения в данных IANA, показано смещение, а не правдоподобная на вид догадка. Там, где нет отзывов, не заявляется никакой оценки.
  • Никаких сетевых запросов во время работы. Восход и закат вычисляются по широте и долготе алгоритмом солнечного положения NOAA, а не запрашиваются откуда-то.

Исправления

Если здесь что-то неверно, это важно: вся ценность справочника в том, что он прав. Контакты — на странице контактов.