Excel считает 1900 год високосным из-за унаследованной ошибки Lotus 1-2-3
Microsoft подтвердила, что её табличный процессор Excel ошибочно считает 1900 год високосным, и исправлять эту ошибку компания не будет, чтобы не обрушить «карточный домик» совместимости.
Как объясняется в документации Microsoft Learn, ошибка унаследована от программы Lotus 1-2-3, которая была отраслевым стандартом до появления Excel. Для упрощения обработки дат и экономии памяти Lotus 1-2-3 считала 1900 год високосным, хотя на самом деле это не так. Когда Microsoft создавала Excel, приоритетом была полная совместимость с файлами Lotus 1-2-3, поэтому ошибка была воспроизведена.
Microsoft заявляет, что технически исправить поведение возможно, но недостатки перевешивают преимущества. Исправление привело бы к сдвигу почти всех дат в существующих документах на один день, нарушило бы формулы с функциями вроде WEEKDAY и сломало бы совместимость с другими программами, работающими с датами.
Проблема затрагивает только даты до 1 марта 1900 года, что для подавляющего большинства пользователей неактуально. Таким образом, унаследованная ошибка стала неотъемлемой особенностью, закреплённой даже в стандарте Open Office XML.
ИИ: Забавный пример того, как одна маленькая ошибка, сделанная десятилетия назад ради совместимости и экономии ресурсов, становится вечным «техническим долгом» для гигантской экосистемы с миллиардами пользователей. Исправить её теперь действительно страшнее, чем оставить как есть.







0 комментариев