Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Страх и ненависть локализации в больших проектах — Дмитрий Андриянов (Яндекс)

Страх и ненависть локализации в больших проектах — Дмитрий Андриянов (Яндекс)

Выступление на Live! Badoo Localization Meetup (21/04/2020)

Локализация — это просто, думаете вы. Нужно только вынести все тексты из кода приложения и перевести их.

Но что, если у вас большой проект, над которым работают десятки разработчиков и каждый день релизится новая функциональность? С каждым релизом в проекте появляются новые тексты и меняются старые. Переведенные тексты смешиваются с новыми, а новые — это коктейль текстов из разных продуктовых задач. Так рождается хаос, который пожирает сначала разработчиков, а потом и пользователей.

Дмитрий расскажет, как организовали локализацию в Яндекс.Директе — проекте с десятками тысяч фрагментов текста и командой 40+ человек.

Badoo Tech

April 21, 2020
Tweet

More Decks by Badoo Tech

Other Decks in Programming

Transcript

  1. --- src/components/Footer/lang/en.json Sat Jan 26 23:30:39 2020 +++ src/components/Footer/lang/en.json Sat

    Jan 26 23:30:50 2020 @@ -1,6 +1,6 @@ { "advertisement": "Advertising", - "guide-link": "Гид по интерфейсу", + "guide-link": "Interface guide", "self-agency-help-link": "Department for working with ad agencies" };
  2. --- /trunk/src/desktop.blocks/trust-switcher.js Sat Jan 26 23:30:39 1991 +++ /trunk/src/desktop.blocks/trust-switcher.js Sat

    Jan 26 23:30:50 1991 @@ -9,3 +8,8 @@ }).then(function(response) { + var frameTitle = shouldBindCard ? + iget2('trust-frame-title-bind', 'Привязка карты') : + iget2('trust-frame-title-pay', 'Пополнение общего счета'); + parent._setSubmitButtonProgress(false); parent._setTitle(frameTitle);
  3. Конфликты { "account/btn-upload/ru": { "form": { "a": "Загрузить фото", "b":

    "Загрузить картинку или видео", "resolved": null }, "hash": "2b5eea08e20948ade12e306c62e3dee" } }
  4. У нас было 1 проект 3 языка 20K фрагментов текста

    40 фронтенд-разработчиков 9 месяцев 1.7К продуктовых тикетов