Изменение текста в Microsoft Windows требует заморозки обновлений строк задолго до того, как прекратятся изменения кода, что часто приводит к странным формулировкам, сохраняющимся годами.
Эти странности не вызваны последними исправлениями. Всё дело в переводах, согласно ветерану‑инженеру Рэймонд Чену.
«Этот срок обычно наступает задолго до дедлайна инженерного “не менять код”, — пишет Чен в блоге Old New Thing, — потому что переводчикам нужно много времени, чтобы пройтись по всем строкам и перевести их на множество целевых языков, поддерживаемых Windows».
Настоящая проблема проявляется при обновлениях, когда внедряются изменения и обновляется существующая функциональность. Меняет ли Microsoft текст, чтобы сказать, что элемент x выполняет функцию z, а не y?
Нет. Microsoft добавляет новые переводы и оставляет старые без изменений. Всё, что уже находится в системе, считается навечно зафиксированным и не подлежит изменению.
«Причина в том, что изменение этих строк сделало бы переводы недействительными», — объяснил Чен, — «и пакеты переводов начали бы вспоминать: ‘Эй, это не та строка, которую меня просили переводить’».
«В зависимости от выбранного пользователем языка интерфейса это может привести к откату к базовому языку (для Language Interface Packs), а если перевод базового языка тоже стал недействительным, система может вернуться к английскому».
И поэтому с каждым обновлением разрастание Windows объясняется не только внедрением AI‑функций в ОС, но и накоплением заброшенных строк, заполняющих систему.
По словам Чена, лишь в крупных выпусках — отмеченных примерно таким надутым “Мы готовим всё для вас” экраном входа — Microsoft может очистить эти избыточные строки. ®
Автор – Richard Speed




