Браузерный переводчик нашёл «Глубинное государство» в доках веб-фреймворка. Вспомни своё

от автора

Открываешь документацию, жмёшь «Перевести» — и читаешь уже совсем другое. Знакомо?

Браузерные переводчики делали под обычного пользователя: новости, письма, бытовые сайты. Русский у крупных вендоров в низком приоритете — коммерческого смысла особо нет. Яндекс частично спасает по качеству, но проблема глубже: технические тексты эти инструменты просто не умеют переводить корректно. Термины едут, код ломается — и ты в раздражении вываливаешься из потока.

Мы тут все так или иначе читаем английскую документацию. Об этом статья.


Vue.js, Svelte, aiogram, TailwindCSS; да и вообще у всего IT что стоит читать для обучения или сложных случаев — доки, как правило, только на английском. Иногда несколько языков, но русский среди них редкость, а если и есть — переведено частично.

«Но ведь ИИ» — да, закрывает часть вопросов. Но не обучение с нуля, не тонкие случаи, не последовательное чтение. Доки никуда не делись.

Читать сразу на английском могут не все — и это не вопрос уровня. Даже те, кто могут, знают: дополнительное трение есть, и оно накапливается. Мозг тратит ресурс не на материал, а на язык.

Что конкретно ломается при переводе:

  • Главное: термины и названия API переводятся как обычные слова. TypeScript → «машинопись», Props → «реквизит», hooks → «крючки жизненного цикла», Suspense → «напряжение», Fallthrough Attributes → «атрибуты проваливания», Reactivity → «реакционная способность», $state → «штат», float → «плавать», padding → «подкладка», margin → «допуск». Читатель теряется.

  • Хуже: переводчик вносит ошибки, которых в оригинале нет. В доках Svelte появляется несуществующий метод getStateRecord. В Vue — «переход с Vue 2 на Vue 2» вместо Vue 3. В таблице миграции aiogram имена классов-исключений переведены как обычный текст — MessageIsTooLong становится «Сообщение слишком длинное».

  • Сопутствующее: код слипается с текстом — $stateруна, countSvelte не знает, .svelte.jsфайлах, DispatcherТеперь его можно расширить.

  • В тяжёлых случаях переводчик лезет уже в сам код: переводит теги, имена функций, метки блоков — и подсветка синтаксиса ломается вместе со смыслом.

  • Vue State Management → «Государственное управление». Playground → «Детская площадка». Tailwind Plus → «Попутный ветер плюс». Preflight → «Предполётная подготовка». Раздел про глубокую реактивность состояния в Svelte (Deep State) → «Глубинное государство». Такие дела.

Проблему с кодом, к слову, технически вполне можно закрыть: блоки кода исключаются из перевода через HTML-разметку. Но авторы библиотек на такие предложения не реагируют годами. А главное — кривой перевод самого текста это всё равно не исправит.

Мне трудно назвать это мелкими неудобствами. Страницы, с переводов которых брал примеры выше:

Мой случай — думаю, знакомый многим. Middle+ бэкенд, решил плотнее зайти во фронт: TS handbook, Svelte, SvelteKit, TailwindCSS. Стандартный маршрут. То, что выше — это именно оттуда.


Если это откликается — тыкните в голосование ниже, это один тап. Просто чтобы понять масштаб проблемы.

Если сталкивались — пишите в комментарии: с какими доками, насколько мешало, как справлялись или не справлялись. А если нашли способ решить это без страданий с браузерными переводами — особенно интересно.

Хочу использовать этот тред как реальный аргумент перед авторами библиотек — что проблема не у одного меня. Чем больше голосов, тем весомее. Это уже частично решит проблему.

Спасибо что дочитали. Надеюсь, не один.

ссылка на оригинал статьи https://habr.com/ru/articles/1047174/