Душераздирающее зрелище
Не могу молчать, хочу писать.
Случившийся давеча бунт гаджетов (и сервисов) наводит на меня тоску:
- Сюрпризом для меня оказалось количество мест, дублирующих TZ database: операционная система (про которую было известно заранее), PHP, PostgreSQL (в ветке 8.x база TZ старая), Java - это только то, про что я сам знаю. А реально мест - существенно больше.
- Таким же сюрпризом оказалось то, что сервисы надо перестартовывать, просто апдейта TZdb и /etc/localtime - недостаточно.
- Владельцам продвинутых гаджетов веселухи добавила продвинутая автоматика, вроде установки времени "от GSM-сети" (а сети все проэтосамое, а может просто побоялись свитчи обновлять ради такой мелочи) или, еще веселее, установки таймзоны по GPS-координатам, как это во многих навигаторах сделано (проверил, в моем Garmin 62s просто нельзя поставить offset в часах, только по имени города).
- На этом фоне сообщение РЖД о том, что в ж/д сообщении с Украиной будет бардак до 3 декабря, а дальше будет видно - уже не вызывает удивления, хоть и вызвано это не IT-бардаком, а законодательными инициативами у братского народа: сначала отменой перехода на зимнее время (в сентябре, по мне так безумно поздно), а затем отменой отмены (в октябре, еще веселее).
Беда тут в том, что реально "и навсегда" чинить все эти проблемы никому не надо: с переводом на летнее/зимнее время все худо-бедно научились справляться (пусть и путем дублирования TZdb), а смена правил происходит настолько редко в рамках конкретной страны (и еще реже - на крупных рынках вроде России, а на мелкие страны всем вендорам уж совсем наплевать), что ожидать какого-то систематического улучшения ситуации не следует. Как минимум, до какой-то серьезной аварии или катастрофы. Пока же - все будут жить патченьем/пересборкой всего, о чем вспомнили и последующим допиливанием.
Что делать - более-менее тоже понятно:
- Устранить дублирование TZdb в продуктах: во всех ОС сервисы достаточные, а дублирование происходит от лени, проще всосать базу и код для работы с ней из одной ОС, чем делать отдельный код для Unix, отдельный - для Win32 и так далее.
- Сжиться с мыслью, что правила могут меняться по ходу работы приложения и соответствующим образом поправить системную libc (скажем, перечитывать /etc/localtime раз в час).
- Какой-то сервис, раздающий актуальную TZdb (по координатам или по названию) в реалтайме (а не в виде архива с файликами) тоже был бы полезен.
Вся инфраструктура в очередной раз показала себя хрупкой: все более-менее работает до первого существенного изменения.
Существенное дополнение: на мой взгляд, жизнь по летнему времени т.е. с солнечным полуднем около 14 часов - для такой урбанизированной страны как наша - хорошее решение. Да, как отец детей школьного возраста, я огорчаюсь оттого, что лишний месяц-полтора в год мы будем идти в школу в темноте. Но эта проблема у меня пройдет через обозримое число лет. А вот что темнеть в декабре будет не в четыре часа дня, а в пять - эта фишка будет с нами надолго.
Comments
Постгрес умеет использовать системные таймзоны: --with-syste
Постгрес умеет использовать системные таймзоны: --with-system-tzdata при сборке.
Ну вот теперь я знаю. Но в надежде, что следующий "раньше
Ну вот теперь я знаю.
Но в надежде, что следующий "раньше хер стоял в постели, а теперь в автобусе" случится не раньше, чем через 30 лет - не буду пересобирать постгресы.
Тем более, что конкретно меня постгрес не поимел.
А я всё-таки сделал себе-будущему такой подарок, пересобрал.
А я всё-таки сделал себе-будущему такой подарок, пересобрал. Мало ли что следующему медвепуту в голову стукнет.
<i>просто нельзя поставить offset в часах, только по имени г
просто нельзя поставить offset в часах, только по имени города
Если бы только в гармине. Даже во многих сотовых нельзя просто сказать офсет, надо искать подходящий город. Живу вот теперь на Сейшелах.
Кстати, спасибо за напоминание про Гармин, пойду переставлять время на 705-ом.
>а смена правил происходит настолько редко в рамках конкретн
>а смена правил происходит настолько редко в рамках конкретной страны
а вот интересно бы посмотреть на статистику. имхо, не так уж и редко. я так понимаю в США отдельные штаты сами себе время устанавливают, например.
да что там время - новые страны регулярно появляются и исчезают. не так давно мне где-то в интернетах попался выбор "USSR" в списке стран...
Да, чтение src/share/zoneinfo/* - увлекательное занятие: #
Да, чтение src/share/zoneinfo/* - увлекательное занятие:
# On September 20 [1979]...DOT...officials decreed that on April 27,
# 1980, Juneau and other nearby communities would move to Yukon Time.
# Sitka, Petersburg, Wrangell, and Ketchikan, however, would remain on
# Pacific Time.
#
# ...on September 22, 1980, DOT Secretary Neil E. Goldschmidt rescinded the
# Department's September 1979 decision. Juneau and other communities in
# northern Southeast reverted to Pacific Time on October 26.
Но преимущественно там речь об отдельных колхозах (county).
Но таки да, иметь это место централизованно во всех программах без перекомпиляции и перезапуска - очень хочется.
>Но таки да, иметь это место централизованно я думаю, что ты
>Но таки да, иметь это место централизованно
я думаю, что ты очень верно подметил, что это никому не надо.
>Существенное дополнение: на мой взгляд, жизнь по летнему времени т.е. с солнечным полуднем около 14 часов - для такой урбанизированной страны как наша - хорошее решение. Да, как отец детей школьного возраста, я огорчаюсь оттого, что лишний месяц-полтора в год мы будем идти в школу в темноте.
я вот считаю, решение президента -- ужасно, по крайней мере для москвы. два часа опережения декретного времени над истинным - для меня, совы, травма и насилие над организмом. в четыре или пять пополудни темнеет - мне на важно (а кому важно?) ибо рабочий день все равно дольше. а вот что рассветает в 9..10 - кошмар. вот в школе мы читали про то, как деревенские жители вставали ни свет ни заря и т.п., я вот думал - ну какие герои-труженники - в 5..6 утра вставать, а оказывается мы (в москве по крайней мере) такие же, ибо наши 8 это их 6.
Проще всего проиллюстрировать на примере равноденствия. Рас
Проще всего проиллюстрировать на примере равноденствия.
Рассвет в 5 (за час до восхода, который в 6), темнеет в 19 (через час после заката в 18). Час накинут "примерно", реально может минут 40, но смысл не меняется.
Ну и кому нахрен нужна такая симметрия, если в 5 утра в Москве просто пусто? И в 7 - еще пусто, движуха начинается около 8 (за исключением магистралей из области), а в 19 - самый пик на улицах, то то счастья в сумерках.
Сдвигаем на 2 часа и получаем световое время с 7 до 21. Очень даже в самый раз, захватываются и вечерний и утренний часы пик (автомобильные).
Укорачиваем на два часа световой день, получаем с 8 до 19. Это лучше, чем с 6 до 17.
А в декабре - палюбому жопа. И в Москве еще кое-как, реальная жесть в Питере (понятно, есть еще Мурманск, но их эти расклады парят только в районе равноденствия, там производная длины светового дня по времени - безумная).
Обсчитался для "укорачиваем на 2 часа". Для 12-часового свет
Обсчитался для "укорачиваем на 2 часа".
Для 12-часового светового дня
- астрономически: с 6 до 18
- декретно: с 8 до 20
Второе - сильно лучше.
Собственно, "совы" имеют по декретному времени больше шансов увидеть немножко дневного света....
>Собственно, "совы" имеют по декретному времени больше шансо
>Собственно, "совы" имеют по декретному времени больше шансов увидеть немножко дневного света....
вечером свет не нужен, в рабочие дни. а в выходные каждый волен вставать когда ему хочется.
а вот утром в рабочие дни - вставать надо как скажет работодатель.
кстати о заполярном круге. был я пару лет на новый год там (время MSK+4), в гостях, так мы принимающей стороной жили по московскому времени практически, ибо не были привязаны к графику работы учреждений -- магазины часто круглосуточные а даже если и нет то в плюс-минус 4 часа можно попасть. по телеку всякая шняга постоянно, в любое время. и кстати удобней даже и комфортней - когда "светлое" время утром когда встаешь, а не в обед.
Вечером свет офигенно нужен тем кто за рулем. Утром тоже, н
Вечером свет офигенно нужен тем кто за рулем.
Утром тоже, но вечером больше машин и плотнее пробки.
Ну не знаю, я не чувствую потребности в солнечном свете вече
Ну не знаю, я не чувствую потребности в солнечном свете вечером за рулем, именно из-за того что машин много и пробки. И для меня вечером пробки не плотнее, я уже еду когда они проходят пик.
Вот если наоборот - машин мало, скорости большие тогда наверное.
Ну или если в разные места надо ездить. А как я - по одной дороге каждый день, так и пофик светло вечером или темно. А вот утром [мне] хочется видеть солнце, или хотя бы светлое небо (ибо солнечных дней в Москве зимой раз два и обчелся, все время облачность, подозреваю что антропогенного характера).
>Укорачиваем на два часа световой день, получаем с 8 до 19.
>Укорачиваем на два часа световой день, получаем с 8 до 19. Это лучше, чем с 6 до 17
Мне пофик - у меня рабочий день с 10 до 19, так что вечером я по-любому еду в темноте.
Да пофик период вокруг равноденствия и вообще лето. Меня волнует только пчелы, зима начиная с середины октября, когда надо просыпаться а за окном темно. Поэтому я - за зимнее время в москве и чтобы оно не менялось. Или даже ещё на час назад.
>А в декабре - палюбому жопа.
А вот и нет. Пусть сдвинут на два часа, на истинное время, чтобы вставать когда светло или хотя бы уже утренние сумерки, а не ночью! Ну может это мои личные тараканы потому что я сова.
>реальная жесть в Питере
Там по-любому жесть, сочувствую питерцам. Я долгое время прожил за полярным кругом и ну его нафик эти полярные дни и ночи. Где-то до восьмого класса меня это не напрягало, а вот в 10-м я уже стал завешивать окна когда полярный день. И стал ощущать давление полярной ночью. Первый восход солнца после полярной ночи - непередаваемое ощущение окончания бесконечно надоевшего сумрака.
А тут меня опять в это окунают, хорошо хоть есть на свете суббота и воскресенье...
дети
У меня ребёнок, так я предпочитаю в темноте отвести его в школу, зато после школы по свету погулять спокойно.
Re: дети
Все-таки в декабре-январе (а сейчас будет в ноябре-феврале) дети гораздо тяжелее встают в школу, чем остальной учебный год.
У меня трое - и статистики больше :)
Re: дети
Итого 2 месяца добавилось к этому ухудшению вставания, зато все 5 месяцев к улучшению гуляния :)
Re: дети
>У меня ребёнок, так я предпочитаю в темноте отвести его в школу, зато после школы по свету погулять спокойно.
уроки начинаются в 8:30, допусти даже 5 уроков плюс четыре перемены и полчаса завтрак\обед, в 14:00 уроки заканчиваются. после школы, т.е. после 14:00, даже плюс обед, после 15:00 достаточно света для погулять хоть по летнему хоть по зимнему времени.
но в принципе, аргумент понятен.
Re: дети
По факту, у дочки-первокласницы два раза в неделю заканчивается в 15, один раз - в 16 (кружки, да), два раза - в 13, один раз в 12.
И то что в 16 поедем домой по свету - большой плюс.
Re: дети
>И то что в 16 поедем домой по свету - большой плюс.
Один раз в неделю. Но все пять раз утром - по темноте. Не перевешивает?
Re: дети
Еще два раза - после 15. Доехать, перекусить и гулять.
Ну вот я заглянул в .reg для
Ну вот я заглянул в .reg для винды, который из KB2570791 так вот там с момента выхода WinXP SP3 (потому что он post-SP3) аж 116 ключей Time Zones меняется, а в каждом еще и не одна запись может быть. Примеры:
Аравия:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Arabic Standard Time\Dynamic DST]
"2006"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,01,00,04,00,\
00,00,00,00,00,00,00,00,04,00,00,00,01,00,03,00,00,00,00,00,00,00
"2007"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,01,00,01,00,04,00,\
00,00,00,00,00,00,00,00,04,00,00,00,01,00,03,00,00,00,00,00,00,00
"2008"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
Аргентина:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Argentina Standard Time\Dynamic DST]
"2006"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2007"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,01,00,01,00,01,00,00,00,\
00,00,00,00,00,00,00,00,0c,00,00,00,05,00,00,00,00,00,00,00,00,00
"2008"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,03,00,00,00,03,00,00,00,\
00,00,00,00,00,00,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2009"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,03,00,06,00,02,00,17,00,\
3b,00,3b,00,e7,03,00,00,01,00,04,00,01,00,00,00,00,00,00,00,00,00
"2010"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
вообще ситуация со временем немного напоминают ситуацию с ко
вообще ситуация со временем немного напоминают ситуацию с кодировками текста. вроде сейчас же везде юникод и все такое, ан нет. только сегодня получил письмо из аутлука в аутулук в пределах одного exchange-а в KOI-8
У приятеля: "Нокия при синхре
У приятеля: "Нокия при синхре с аутлуком попросила удалить
с себя 470 записей Синхрилка не умеет показывать, что именно будет удалять
Спасибо Медведеву!
В новых гарминах есть
В новых гарминах есть файлик-карта, gmaptz.img, где сия зависимость прописана. Однако обновить эту штуку пока не почесались.
Что касается операторов связи - у меня нокия на S40, проставил там GMT+4, но sms приходят со сдвинутой датой отправки аж на два часа вперед (билайн) от людей, у которых телефон тоже показывает правильное время (что у них в таймзоне прописано - не в курсе). При этом я знаю, что старые смартфоны Самсунг (которые на их самостийной ОС) глючат со списком смс, когда их время отправки кажется им странным.
Теперь понятно, почему был
Теперь понятно, почему был такой кипишь по миру из-за Y2K, а ведь тогда было значительно меньше всякой умной электроники. По-моему, проблему нужно решать разделением времени и его отображения: часы всегда делают расчёты в одном формате, а уж только отображение в UI зависит от пояса.
Так ведь проблема текущая -
Так ведь проблема текущая - за редчайшими исключениями именно с отображением. Хотя, конечно, есть и прочие приколы, но их мало.
А будильник в телефоне - это
А будильник в телефоне - это тоже проблема отображения? Задумался. Видимо да.
Чисто для поддержания
Чисто для поддержания дискуссии: будильник в (моем) телефоне срабатывает, когда на экране ОТОБРАЗЯТСЯ цифры 6:45 (или 7:15, в зависимости от дня недели). То есть да, отображения.
Совершенно отдельный класс проблем - это проблемы "умолчания", вот текущие 19:25 должны бы восприниматься как 19:25 +0400, а необновленные программы воспринимают как +0300 и переводят в неправильное время по гринвичу. И с разбором аббревиатуры MSK у них тоже проблемы (если кто разбирает в таком формате).
И в этом смысле будильник (который вы устанавливаете без таймзоны) - это проблема интерпетации вашего ввода времени, конечно же. Потому что ВЫ ввели его в таком двусмысленном формате.
Про срабатывание будильника
Про срабатывание будильника по отображению - верно, согласен. Однако, в моём телефоне (samsung защищённый) есть опция "автообновление времени", и нет ничего про переход зима/лето. Ожидая, что автообновление сработает, ничего не стал делать. А оно видимо вообще не работает (проверил позже - выставил вручную неправильное время, включил синхронизацию, телефон сказал ща ребутнусь, загрузился и ноль эмоций). Более того, сейчас сверил часы с компом, отстают на мобиле. Т.е. всё это время, что я пользовался телефоном, синхронизация не работала и молчала.
Я могу про это только
Я могу про это только процитировать сам себя "индустрия оказалась хрупкой".
Удивительное дело, т.к. тут пишут, что в Штатах не так давно меняли неделю перехода на зимнее (или летнее) - казалось бы, по всем граблям должны оттоптаться.
А можно вопрос от чайника?
А почему нельзя просто спрашивать всем время на каком-нибудь сервере, которому все доверяют? Есть же NTP и всякие другие умные слова...
Я вот уже давно привык просто набирать time.is в браузере в случае сомнений.
Или проблема, что не все еще в одном большом интернете?
2:5049/97.3
NTP отдает в гринвиче (UTC).
NTP отдает время в гринвиче (UTC). А какая у вас (спрашивающего) временная зона - не знает. Это вы должны знать (или вам скажут снаружи, из GSM-сети или GPS-приемник по вашим координатам)
Не, я имел ввиду более
Не, я имел ввиду более "дружественный" интерфейс. Один раз поставил в... девайсе, что я в "Москва" и понятия я не имею, какой там часовой пояс - пусть про это сервер думает.
Для переносных устройств - ну пусть мне предлагает при переезде (фиг знает, как оно определять будет, что я переехал...) - выставить новый ближайший большой город. Или не выставлять - мне, может быть, удобнее по Москве жить.
Главное: как можно больше переложить на центральный сервер(ы), а пользователю и девайсу оставить самое простое.
2:5049/97.3
Да, я примерно это и
Да, я примерно это и "предлагаю" в исходном тексте.
На практике, с сожалению, это не получается столь радужно. GSM-сети, скажем, умеют отдавать время (или что-то в этом духе) клиентам - и вчера Билайн и Мегафон (как пишут в комментариях в соседнем посте) делали это неправильно.
К сожалению, инфраструктура приспособилась к двукратной смене "времени" (временной зоны) каждый год, это пожалуйста, а вот шансов приспособить ее к смене правил смены - я вижу мало.
Да кошмар вообще. У меня
Да кошмар вообще. У меня ощущение, что единственное место, где не было больщих проблем - это корпоративные сетки на MS'овских продуктах, админы которых не ленятся ставить и читать обновления.
<i> а смена правил происходит настолько редко в рамках конкр
а смена правил происходит настолько редко в рамках конкретной страны (и еще реже - на крупных рынках вроде России, а на мелкие страны всем вендорам уж совсем наплевать)
Штаты совсем недавно меняли неделю в которую происходит один из переходов. У нас софт на таймзоны завязан, я хоть и не занимаюсь этими проблемами уже лет пять как, всё ещё напрягаюсь при каждом переводе часов :)
Ну тогда - удивительно, что все это не напрягло очень сильно
Ну тогда - удивительно, что все это не напрягло очень сильно. Ведь бунт гаджетов был, очевидно, и тогда.
Юзеры с полей рапортуют, что
Юзеры с полей рапортуют, что на некоторых Android-девайсах "перестали ходить" SMS (я думаю что они при получении или оказываются в списке непонятно где, или режектятся), и аналогичная ситуация с некоторыми "обычными" телефонами Samsung. О том, что последние неустойчивы к получению сообщений с неправильной датой, я знаю уже давно - если послать на такой Samsung backdated-сообщение, вручную установив дату на своем телефоне назад, оповещение о приходе SMS не выдается, а сообщение оказывается где-то в заднице архива. Подозреваю, что у таких самсунгов сигнал о приходе SMS выдается в момент появления новой первой записи в стеке. Куда деваются сообщения с опережающей датой - не в курсе. :)