Перейти до вмісту
cutty.dev
All posts

25 мов LIVE — камінь прощання

cutty.dev тепер підтримує двадцять п’ять мов. Коротка історія про те, що це означає, чому обрано саме ці мови, і як це було реалізовано без відправки даних назовні.

Протягом перших тижнів існування cutty.dev сайт спілкувався двома мовами — польською та англійською. Сьогодні він розмовляє двадцятьма п’ятьма. Це коротка історія про те, що це означає і чому це було варте того.

Список, який щось означає

Польська. Англійська. Німецька. Французька. Іспанська. Італійська. Чеська. Румунська. Угорська. Грецька. Нідерландська. Шведська. Фінська. Українська. Турецька. Арабська (справа наліво). Іврит (справа наліво). Китайська. Японська. Корейська. Гінді. Тайська. В'єтнамська. Індонезійська. Португальська.

Вибір не є випадковим. Це мови, які охоплюють найбільші європейські ринки, а також ключові ринки за межами Європи — Близький Схід і Північна Африка (арабська), Ізраїль (іврит), Східна Азія (китайська, японська, корейська), Індійський субконтинент (гінді) та Південно-Східна Азія (тайська, в'єтнамська, індонезійська). Разом — кілька мільярдів людей, рідною мовою, з першого відвідування.

Іспанська відкриває Іспанію та Латинську Америку. Португальська — Португалію, Бразилію, африканські країни. Французька — Францію, Бельгію, Квебек, значну частину Африки. Кожна з цих мов — це ринок, що вимірюється сотнями мільйонів потенційних відвідувачів.

Що означає "нативно"

Переклади не виконуються за допомогою зовнішнього API. Вони здійснюються локальною моделлю ШІ, запущеною на нашій власній інфраструктурі. Це означає:

  • Жоден текст з інтерфейсу ніколи не покинув нашої мережі — жоден зовнішній постачальник ШІ не отримав жодного з наших текстів.
  • Якість виходить за межі простого механічного перекладу — модель зберігає контекст, тон та нюанси.
  • Без оплати за запит — ми можемо оновлювати переклади, коли завгодно, без додаткових витрат у рахунку.

Після першої ітерації кожна сторінка перевірялася візуально — чи не збивається макет, чи довгий німецький текст не виходить за межі рамок, чи арабська та іврит відображаються правильно справа наліво.

RTL — граничний випадок

Арабська та іврит вимагали окремої роботи. Уся сторінка віддзеркалена по горизонталі — навігація йде справа наліво, стрілки перевернуті, градієнт hero спрямований у зворотний бік. Ефект — арабська та івритська версії виглядають нативно, а не як напівперероблена західна сторінка, яка лише частково підтримує письмо справа наліво.

CJK та інші писемності

Китайська, японська та корейська використовують символи CJK, яких більшість веб-шрифтів не містить. Ми додали відповідні резервні шрифти, які завантажуються лише на цих версіях сторінки — решта локалей використовує наш стандартний легкий шрифт. Таїландська, хінді та інші писемності отримали таке саме ставлення: кожна мова виглядає так, як має виглядати у своїй системі письма.

Чому все це має сенс

Більшість компаній запускають продукт англійською і «можливо, коли-небудь додадуть інші мови, коли буде попит». cutty.dev пішов навпаки — 25 мов від самого старту, щоб, коли хтось з Іспанії, Чехії, Єгипту, Тайвану чи В’єтнаму потрапляє на нашу сторінку через пошукову систему, він одразу бачив свою мову.

Це також питання поваги. Інтернет за замовчуванням передбачає англійську мову. Невеликий інструмент з Європи, який вітає вас корейською або тайською, говорить про те, для кого він був створений: для всіх, а не лише для англійськомовного ядра.

Що далі

Список є довгим, але не закритим. Якщо вашої мови тут ще немає — напишіть. Додавання нової мови займає дні, а не місяці.

А якщо вже говорити твоєю мовою — просто скороти перше посилання. Воно має виглядати у тебе так само, як у тебе.