25 языков LIVE — важная веха
cutty.dev теперь говорит на двадцати пяти языках. Краткая история о том, что это значит, почему именно эти языки и как это было сделано без отправки данных вовне.
В первые недели существования cutty.dev говорил на двух языках — польском и английском. Сегодня он говорит на двадцати пяти. Это короткая история о том, что это значит и почему это того стоило.
Список, который что-то значит
Польский. Английский. Немецкий. Французский. Испанский. Итальянский. Чешский. Румынский. Венгерский. Греческий. Нидерландский. Шведский. Финский. Украинский. Турецкий. Арабский (справа налево). Иврит (справа налево). Китайский. Японский. Корейский. Хинди. Тайский. Вьетнамский. Индонезийский. Португальский.
Выбор не случаен. Это языки, охватывающие крупнейшие европейские рынки, а также ключевые рынки за пределами Европы — Ближний Восток и Северная Африка (арабский), Израиль (иврит), Восточная Азия (китайский, японский, корейский), Индийский субконтинент (хинди) и Юго-Восточная Азия (тайский, вьетнамский, индонезийский). Вместе — несколько миллиардов человек на их родном языке с самого первого визита.
Испанский открывает Испанию и Латинскую Америку. Португальский — Португалию, Бразилию, африканские страны. Французский — Францию, Бельгию, Квебек, большую часть Африки. Каждый из этих языков — это рынок, исчисляемый сотнями миллионов потенциальных посетителей.
Что значит «нативно»
Переводы не выполняются через внешний API. Они выполняются локальной моделью ИИ, запущенной на нашей собственной инфраструктуре. Это значит:
- Ни один текст из интерфейса никогда не покидал нашу сеть — ни один внешний поставщик ИИ не получил ни одного нашего текста.
- Качество выходит за рамки простого машинного перевода — модель сохраняет контекст, тон и нюансы.
- Без оплаты за каждый запрос — мы можем обновлять переводы когда захотим, без дополнительных счетов.
После первой итерации каждая страница проверялась визуально — не разъезжается ли верстка, не выходит ли длинный немецкий текст за границы рамок, и правильно ли отображаются арабский и иврит справа налево.
RTL — граничный случай
Арабский и иврит потребовали отдельной работы. Вся страница отзеркалена по горизонтали — навигация идет справа налево, стрелки развернуты, градиент hero в другую сторону. Эффект — арабская и еврейская версии выглядят нативно, а не как наполовину переделанная западная страница, которая лишь частично поддерживает письмо справа налево.
CJK и другие системы письма
Китайский, японский и корейский языки используют символы CJK, которых нет в большинстве веб-шрифтов. Мы добавили соответствующие фолбеки (fallback), загружаемые только на этих версиях сайта — остальные локали используют наш стандартный легкий шрифт. Тайский, хинди и другие письменности получили такое же отношение: каждый язык выглядит так, как он должен выглядеть в своей системе письма.
Почему это всё имеет смысл
Большинство компаний запускают продукт на английском и «может быть, когда-нибудь добавим другие языки, когда появится трафик». cutty.dev пошли наоборот — 25 языков с самого старта, чтобы, когда кто-то из Испании, Чехии, Египта, Тайваня или Вьетнама попадал на наш сайт через поисковик, сразу видел свой язык.
Это также вопрос уважения. Интернет по умолчанию предполагает английский язык. Небольшой инструмент из Европы, который приветствует вас на корейском или тайском языке, говорит о том, для кого он был создан: для всех, а не только для англоязычного ядра.
Что дальше
Список длинный, но не исчерпывающий. Если вашего языка здесь еще нет — напишите. Добавление следующего — вопрос дней, а не месяцев.
А если мы уже говорим на твоем языке — просто сократи первую ссылку. У тебя всё должно выглядеть как дома.