Сегодня я наткнулся на совет Йоста Хелберга в Mastodon:
💡 Совет дня: не используйте три цифры после десятичной точки! Люди могут спутать её с разделителем тысяч. Лучше указывать 2 или 4 знака — это снизит риск ошибок в 1000 раз!
Раньше я всегда использовал 4 знака, но не задумывался о проблеме разделителей.
В разработке ПО 🖥️ важно доверять ввод и вывод чисел библиотекам, которые учитывают локальные настройки. Иначе — курьёзы, как в моей истории:
😅 Позор в Бордо (2006)
На курсе по байесовской статистике во Франции я демонстрировал софт, созданный в MD Anderson. Через пару минут стало ясно: у аудитории он не работает!
🚨 Причина: США используют точку как десятичный разделитель (3.14), Франция — запятую (3,14). Я тестировал софт на французской Windows, но с целыми числами, а на лекции ввёл десятичные.
Извинился, попросил аудиторию использовать американский формат. Не сработало!
🔍 Оказалось, Windows API корректно обрабатывал локализацию, но наш кастомный валидатор проверял символы: разрешал только цифры и точки. Французские запятые блокировались, а API игнорировал точки!
💡 Решение: Слушатели временно сменили локаль ОС на США. Они отнеслись с юмором, сказав: «Такое часто бывает». Неловкий старт, но курс прошёл успешно.
📌 Вывод: никогда не изобретайте велосипеды для обработки чисел — доверяйте проверенным библиотекам!
(Пост «Десятичные разделители и интернационализация» впервые опубликован Джоном Д. Куком.)