Я в шоке. В коде самого главного сайта программистов России, Украины и Белоруссии, который должен быть эталогом качественного веб-программирования - явный баг. Я редактирую профиль, пишу свой день рождения - 22 декабря, сохраняю, а оно выводит для всех как 21 декабря. Был Козерогом, стал Стрельцом.
Косяк колхозной простоты в коде веб-сайта Хабра -42
Комментарии (44)
tmin10
26.05.2021 21:33+5Хм, а что написала поддержка? Мне всегда отвечали быстро (иногда среди ночи, когда они там спят...).
YuriPanchul Автор
26.05.2021 21:37-11Я могу конечно написать и в поддержку, но мне тут интересны мнения разработчиков вебсайтов, почему так могло получиться (я сам не разработчик сайта, хочу понять их видение). Разработчик использует какой-то стандартный объект или вызов функции для даты, который учитывает часовой пояс? Это произошло случайно или намеренно как clever feature?
DmitryLTL
26.05.2021 21:41+1Создатели js сделали дату очень интересно (конечно у них была причина для этого).
Месяц в js начинается с нуля, а день с единицы. От сюда много интересных косяков, если не отследить правильно.
YuriPanchul Автор
26.05.2021 21:46-3Интересно. Но это ли причина бага? У меня впечатление, что причина в том, что они учитывают IP-адрес или часовой пояс для вывода даты. Есть ли там опция вывода с учетом текущего положения (как для события типа звонка в зуме) и без учета (как для дня рождения, который должен быть как в паспорте)?
DmitryLTL
26.05.2021 21:58+2Точно могут сказать только владельцы кода на стороне сервера.
Если нажать на inspect на дате, то видно что стоит тэг time и аттрибут datetime правильный, а title нет.
И это только на мобильной версии, на десктопе правильно
extempl
27.05.2021 06:52Если Вам правда интересно, то IP Ваш конечно никому не нужен. Это обычная ошибка отображения. Ваша дата сохранена правильно, а при выводе при формировании читабельной даты учитывается локальная таймзона. Конечно этого не должно происходить для дат дня рождения, но для 99% пользователей она показывается правильно (потому что пока что мало посетителей с разницей часовых поясов более 8 часов).
И конечно это не могло и не может привести к каким либо критическим последствиям и всем по большому счётунасрать, простите, какая у вас дата на Хабре отображается.
А, и ещё, дата не отображается на десктопе, только в мобильной версии, представьте процент пострадавших (это, собственно, проблема, почему на это не обратили внимание ранее).
И нет, я не имею отношения к Хабру, кроме как пользователь.
Cerium
26.05.2021 22:10+8А казались адекватным человеком (хотя после фотопостов были сомнения). Хотите стишок про вас? «Я покакал, попу вытер, написал об этом в Твиттер». Неужели это нормально для раздела новостей? Багрепорт, серьёзно?
YuriPanchul Автор
26.05.2021 22:17-4Ну когда у Интела был FDIV баг в процессоре, об этом писали во всей мировой прессе, по телевизору показывали и до сих пор в учебниках об этом вспоминают. Чем Хабр хуже интела? И задачка для программистов вебсайтов — как такое могло произойти.
Cerium
26.05.2021 22:26+2Ох. Не падайте ещё ниже. Создали глупый пост, так ещё и разводите тут всякое. Предпочту более вас не читать, а болел всем сердцем за вас.
atomlib
26.05.2021 23:07+3Ничем не хуже.
Разница в том, что баг FDIV серьёзно нарушал нормальные характеристики, требовал аппаратные исправления и в конечном итоге привёл к дорогому отзыву продукта. А здесь мелкая ошибка интерфейса, которую исправят и забудут (если она вообще существует и воспроизводится).
Настолько же странный софизм — это то, что Хабр не имеет права на баг движка или опечатку в статье. Такое ещё как случается, но исправляют подобное быстро.
Ну ошибка и ошибка, чего такого-то?
Int_13h
27.05.2021 03:27Софт это не самолеты — летает и на одном крыле, и задом наперед, и без пропеллеров. Достаточно почитать блог Единорога, чтобы понять, что программ без багов почему то не бывает :)
ne555
26.05.2021 22:32В коде самого главного сайта программистов России, Украины и Белоруссии
тут же эталонный сайт лонгридов по программированию в рунете
По моему мнению, Хабр едва ли для программистов. В Рунете есть специализированные такие популярные сайты/форумы для программистов, как Киберфорум
или Ru board
Что-то вроде, как 4pda для гаджетов, или chem.net для электронщиков (действительно главные и не единственные в своем роде).
Overclockers тоже заявляет, что он один из старейших IT-ресурсов Рунета, как и LOR. Ладно, что-то рекламой уже попахивает...
По поводу ошибки, у Хабра служба поддержки оперативно реагирует на баги (исправлять могут небыстро).
ps/
Если бы такая ошибка была бы на налоговом сайте, финансовом или медицинском сайтах, где дата рождения используется для идентификации пользователя, там был бы хаос.
В ПФР и реальных доках бывает ошибка (у меня пара лс). И на Госуслугах неверные данные по поликлинике, годами не исправляют, Вы словно вчера родились...
Int_13h
27.05.2021 03:24А вот киберфорум — какой-то подозрительный, я думал там только «боты» пишут вот после таких новостей:
Вот вам очередная новость: админ кибера ворует материалы с форумов электроникса, казуса и радиокота. Чуть меняет ники и даты, размещает клоны в разделе электроники.
saintbyte
26.05.2021 23:15https://habr.com/ru/post/559212/ небось аналогичный баг
YuriPanchul Автор
26.05.2021 23:29Да, интересно, но они приводят другую платформу и обстоятельства (до 1970 года, Apple, Safari)
anonymous
26.05.2021 23:29Работая в военных архивах, я даже не десятки, а сотни раз встречался с удивительнейшими неточностями и накладками. Своими глазами я видел, например, книгу погребения стрелкового полка, где датой гибели сорока семи военнослужащих указано… 31 февраля 1942 года. Но это подлинный документ, и, отвечая сыну одного из сорока семи, сотрудники архива указали датой гибели его отца 31 февраля 1942 года, в скобках оговорив: «Так в документе».
militera.lib.ru/prose/russian/bogomolov/17.htmlSamoglas
27.05.2021 03:44Возможно, так помечали случай, когда дата неизвестна. Такое было у англичан или американцев - 30 февраля на памятнике.
Kirikekeks
26.05.2021 23:53Храбру ДР. А Вы ему, публично, "ширинку застегни"! А ведь сами ровестник Unix. Гришковец жаловался, в Одновременно на эту самую неприятность. Мол, проверяет теперь, перед выходом на сцену, привычным жестом.У Гагарина, помню шнурок развязался. А он военный! Подходит он за наградой, а ему - почему по форме не одеты!
PS. Но надо застегнуть, да. Не 90, 15. Здоровья, Храбр!
mSnus
27.05.2021 00:14+2Во-первых, Хабр -- это платформа для программистов и ещё для инженерно мыслящих людей из сотен других специальностей. А код платформы -- вовсе не плод коллективного творчества всех читателей Хабра. Сам Хабр вовсе не обязан быть эталоном классного кода.
Вообще посмотрите на самые-самые программистские сайты -- там что, phpBB?))))
Во-вторых, дата рождения в профиле -- последнее, что волнует большинство пользователей, если фиксить баги, того, очевидно, более приоритетные -- с текстовым редактором или авторизацией в новой версии.
В-третьих, для репортов по новой версии есть отдельный пост, на который ведёт ссылка из самой шапке. Не знаю уж, менялись ли профили в новой версии.
И, в заключение -- ни один тру айтишник не станет светить свою истинную дату рождения, потому что она совпадает у него с паролем от Хабра и пин-кодом от банковской карты!
YuriPanchul Автор
27.05.2021 01:17-1*** А код платформы — вовсе не плод коллективного творчества всех читателей Хабра. ***
Спасибо, Капитан!
Finesse
27.05.2021 01:35+1Можно было бы написать интересную статью, где разобраны типичные ошибки программирования, которые приводят к подобным багам (например, хранение даты в виде datetime). А получилось просто «тут баг».
YuriPanchul Автор
27.05.2021 03:12-1Я не веб-программист и совсем не представляю как работает что client, что server часть. Я когда-то в 20 веке был программистом компиляторов, но потом перешёл сначала в верификацию микросхем, а потом в проектирование микросхем. Я как-раз сделал этот пост, чтобы из реакций получить туманное представление, как код на телефоне взаимодействует с кодом на сервере веб-сайта.
Nomad_77
27.05.2021 02:20Привет. Вот прямо сейчас у вас в профиле корректная дата рождения. Вы что-то изменили? Можете ответить сюда, мне в личку или написать подробности в службу поддержки.
YuriPanchul Автор
27.05.2021 03:05Прямо сейчас на телефоне у меня неправильная дата, хотя понимаю что это может быть в кэше:
YuriPanchul Автор
27.05.2021 03:30Когда я использую на телефоне не google, а opera browser, то ошибка сохраняется:
YuriPanchul Автор
27.05.2021 03:39Проверил также на телефоне Microsoft Edge и Firefox - у них так же ошибка. Проверю на компьютере часа через 3
YuriPanchul Автор
27.05.2021 05:57-1В десктопной версии дата нормальная — 22 декабря. То есть это проблема только на телефонах, но зато в разных браузерах (Chrome, Firefox, Opera, Microsoft).
vmkazakoff
Честно говоря то, что разрабы делают с полем комментариев - это реально жесть.
А ваш кейс тянет максимум на короткую строку в форме обратной связи - ошибка совсем не критичная (ну если только вы правда в гороскопы и нумерологию не верите изо всех сил) и скорее от невнимательности. Настолько мелочь, что никто даже проверять не полез. Со всеми бывает.
YuriPanchul Автор
Дата дня рождения должна стоять как в свидетельстве о рождении, без поправки на часовой пояс. Если бы такая ошибка была бы на налоговом сайте, финансовом или медицинском сайтах, где дата рождения используется для идентификации пользователя, там был бы хаос.
И тут же не просто сайт — тут же эталонный сайт лонгридов по программированию в рунете. И не просто не левой странице, а прямо в профайле.
vmkazakoff
Ага. А если б у бабки были яйки, то была бы она дедкой... Ну серьезно, если бы это была ошибка на сайте налоговой - все понятно. Косяк. Как минимум стоит сообщить всем, чтобы те, кто сейчас проверяет данные, это учли, пока разрабы чинят. Но тут то на Хабре это вообще совершенно не обязательное поле.
YuriPanchul Автор
Я вообще работаю в ASIC design. У нас есть такой баг вошел в чип, который уже изготовлен на фабрике, и если такая операция делается именно железом (register transfer level), а не встроенным софтвером и не firmware, то потери могут быть $20 миллионов долларов — респин чипа + потери продаж из-за задержки выхода по сравнению с чипами конкурентов.
vmkazakoff
Да не вопрос. Но тут то явно не этот случай.
Я работаю в банке и если у нас начнут транзакции записываться с кривой датой то будет ахтунг. Только вот лично я занимаюсь дистанционным обучением и если даже у меня тестирование и запишется на завтрашнюю дату, то максимум мне прилетит пара колких замечаний от коллег и просьба переписать даты в отчётах, и то не срочно, скорее всего.
Надо, всё-таки, держать контекст в голове.
А то тут ещё и комментарии обновляются не с такими скоростями как на бирже торги проходят. И дублирование мощностей не как у платежных систем...
Catslinger
Вооот. А если бы вы работали в NASA — то ущерб бы был гораздо больше.
YuriPanchul Автор
Не факт. В ракетах NASA приборы, которые снимают показания с датчиков, управляют крылышками и двигателями, а также смотрят на GPS — представляют собой кучу стандартных контроллеров (просто mil grade) для сенсоров с mil grade FPGA. И вот FPGA перепрограммировать — это не ASIC-у на фабрике сделать respin.
Samoglas
Уж очень комично получилось на фоне того, что у Вас во втором предложении опечатка:
Видите её?
Не стоит такая пустяковая фигня целой статьи.
Хабр 2021 - тормознутый забагованный монстр, движок которого вызывает жгучее желание уйти, но некуда.
Чего стоит этот глюкавый редактор мобильной версии, в котором я сейчас набираю текст, скрипя зубами от того, что нет кнопки "предпросмотр", а конечный результат будет отличаться от того, что показывает WYSIWYG.
Люди вынуждены нажать кнопку "отправить", а потом несколько раз публиковать ответ с правками. На один такой ответ мне в почту придет письмо с каждой правкой - было и 7 писем на один камент.
На Хабре несколько месяцев живёт статья, комментарии к которой не загрузятся до конца в Хроме на ноутбуке с 16 гигами памяти.
Судьба предателя, угнавшего новейший МиГ-25 в Японию
Каждое третье нажатие на "добавить закладку" в мобильной версии не добавит статью в закладки - я использую закладки как возможность "немому" заговорить, т.е. хоть как-то плюсануть автору, будучи годами с опущенной кармой. Это самая мерзкая бага Хабра, когда механика социальных взаимодействий заточена на то, чтобы лишить права голоса большинство населения Хабра. Причем, даже и тех, кто статьи пишет, и много.
Очень часто количество показываемых комментариев больше, чем на самом деле, а кнопка работает неправильно (мобильная версия).
Количество новых комментариев так же отображается неправильно в других местах сайта (мобильная версия).
Сама логика работы кнопки новых комментариев - когда не дай бог нажмёшь на ссылку и, вернувшись на статью, навсегда потеряешь непрочитанные комментарии.
Я ещё с десяток подобного вспомню, а тут, видите ли, день рождения неправильно отображается - обсудим аж в целой статье. (:
vmkazakoff
Собственно и добавить нечего. Все так.
tvr
Примите ещё одну тыщу извинений от меня, я больше так не буду :))
DenimTornado
Если бы у бабушки был МПХ, то она была бы дедушкой.п.с. Поздно прочёл следующий коммент((