О локализации без боли мечтает каждый, кто знает, что такое локализация. Особенно мечтает тот, кому нужно перевести свой продукт сразу на десяток языков. И тот, у кого в текстах сплошные термины. И еще сильнее тот, у кого постоянно выпускаются обновления с новыми строками, которые с тем же постоянством надо переводить, переводить, переводить…
Кадр из фильма Леонида Гайдая «Кавказская пленница, или Новые приключения Шурика»
С этими и другими сложностями мы в Alconost справляемся благодаря одному-единственному инструменту, который решает сразу десяток проблем. Медики назвали бы такую штуку панацеей. А мы, локализаторы, зовем ее облачной платформой Crowdin. Именно Crowdin позволил нам делать локализации приложений, сайтов и игр на 40 с лишним языков для десятков разных клиентов одновременно.
Итак, мы выделили шесть основных сложностей локализации, от которых избавляет Crowdin:
1. Очень. Много. Разных. Форматов. Работать приходится с огромным количеством разнообразных файлов в различных форматах:.xml, .strings, .resx, .properties, .po, .yml, .json, .ini, .xliff, .csv, .xlsx и так далее. Если же загрузить их в Crowdin, он их «переработает» и предоставит переводчикам только текст без ключей и кода — ничего лишнего, в чем они могли бы запутаться или нечаянно испортить (чего стоят одни ошибки с кодировкой или испорченными ключами).
Файлы разных форматов в одном проекте
2. Путаница и задержки с десятками направлений перевода. И продукт, и все сопутствующие маркетинговые материалы нужно перевести на 20 языков… Представить только, сколько заминок бывает лишь при написании русских текстов, а теперь все это — да в двадцатикратном объеме!
С Crowdin процесс перевода прозрачен, понятен и нагляден: можно следить за тем, как переводится каждая строчка на каждый из языков проекта.
Процесс пойдет еще быстрей, если работать через API. Можно настроить Crowdin так, чтобы он получал файл при каждом его обновлении из Гитхаба и автоматически рассылал нотификации переводчики и пруфридерам, а когда все строки переведены — сам забирал их и клал обновленный ресурсный файл обратно в репозиторий.
3. Нужно все показать, а показанное объяснить. Часто один раз увидеть лучше, чем сто раз услышать. Так и хочется прикрепить к проекту +100500 поясняющих скриншотов, чтобы переводчики сообразили, что к чему. И оставить несколько сотен комментариев. И пометить все те строки, которые трогать ни в коем случае не стоит.
Crowdin это все умеет. Сколько угодно скриншотов, которые при загрузке становятся доступны всей команде переводчиков и редакторов (не нужно отсылать копию скринов каждому переводчику, ура-ура). Та же история с комментариями. Например, у переводчика появился вопрос, он его задает, вы получаете нотификацию, отвечаете — и тут, внимание, ответ видит вся команда, в том числе и переводчики, работающие с другими языковыми версиями. Ведь не секрет, что большинство вопросов касается исходных текстов. Эффективное общение удобно всем: переводчикам не нужно переспрашивать, если уже есть вопрос от коллеги, а вам отвечать каждому лично, так как ответы видят все.
4. Ваш продукт не стоит на месте. Он постоянно улучшается: регулярно добавляются новые строки, и все их нужно прокомментировать, и каждую перевести на 20 языков… И неважно, одна новая строчка или сто новых — когда речь заходит о мультиязычном переводе, тут в любом случае хлопот не оберешься.
На самом деле непрерывная локализация — это не проблема, а услуга. Мы в Alconost поступаем в этом случае так: согласовываем бюджет с клиентом и просим его загружать новые строчки прямо в Crowdin. Как только поступает очередное обновление, мы тут же получаем уведомление — и сразу начинаем локализацию.
5. Нужны общедоступная память переводов и глоссарий. И то, и другое упрощает согласование терминологии. Не каждый переводчик догадается, что Снегуренция — это не толстая Снегурочка на пенсии! И вам придется как-то объяснять каждому, что это огромный кровожадный монстр, пожирающий все на своем пути.
Особенно это касается непрерывной локализации: например, три месяца ничего не переводилось, и переводчик успел подзабыть всю терминологию. Именно память переводов и глоссарий в Crowdin помогут ему все быстро восстановить все пробелы. Не менее важна и полезна эта функция, когда на проекте меняется переводчик.
Так выглядит глоссарий
6. Еще бы не повредить ресурсные файлы! То есть хорошо бы «разжевать» переводчикам, как работать с исходниками, чтобы они только переводили, а не занимались параллельно написанием кода (мы все знаем, к чему это приводит). И хотелось бы все это потом так же быстро привести в первоначальный вид. Как по взмаху волшебной палочки: оп — и красота :)
С Crowdin о сохранности кода можно не беспокоиться. Не нужно составлять громоздкие комментарии, не нужно ничего экспортировать и копировать. Достаточно загрузить файлы в платформу и выбрать несколько настроек под свои нужды. Кстати, клиентам Alconost не обязательно тратить на это свое драгоценное время: наши менеджеры готовы взять все на себя.
Файл .xml, как его видит переводчик. Никакого кода!
В общем, получается сплошной профит и для разработчиков, и для переводчиков, и для менеджеров, и для редакторов. Если наш опыт избавит от страха локализации хоть одного читателя Хабра, будем считать, что писали все это не зря :)
Автор: alconost