«Сколько языков ты знаешь, столько раз ты живёшь». Гёте
Всем привет! Я работаю в команде проекта DesignContest, пару недель назад мы выложили новый релиз нашего сервиса. В этой версии мы исправили несколько важных пунктов: сайт стал быстрее, корректно работает на любых устройствах, имеет современный адаптивный дизайн. Еще мы дополнительно добавили защиту от взлома профилей технологией AES-256. Все это хорошо и нужно, но под понятие “суперфича” не подходят, т.к. должны быть у любого хорошего сервиса.
Суперфичей, которую мы действительно полюбили, стал переводчик, полностью внедренный в сайт. Как и зачем мы это сделали, а также о том, что мы придумали для экономии на запросах в переводчик — расскажу ниже.
ЗАЧЕМ?
DesignContest — площадка, на которой собираются дизайнеры и заказчики со всего мира. Заказчик публикует свой бриф, дизайнеры — рисуют варианты. Тот, чей вариант оказался самым лучшим по мнению заказчика — получает деньги, а заказчик — исходники.
Мы давно хотели сделать проект мультиязычным, открыть новые домены (например, .ru), и одна из первых проблем, с которой мы столкнулись на пути к вселенскому счастью — это проблема перевода. Перевести саму оболочку сайта легко и вполне очевидно, все это укладывается в стандартный функционал перевода фреймворка YII: оборачиваем все тексты в функцию перевода и готово, тем кто работал с Yii наверняка знакома эта структура папок:
Основные тексты на посадочных страницах часто меняются, как и контент на них — поэтому перевод этой части сделали через базу данных, добавляя записи в таблицу с пометкой, к какому языку они относятся. К примеру, вывод работ и отзывов в слайдер на английском сайте:
и то же самое на русском:
В самой базе это выглядит так, колонка lang отвечает за привязку к языку, а сам язык может быть привязан к нескольким доменам.
Но все это лирика. Главная проблема с которой мы столкнулись — как сделать общение между клиентом и дизайнером, которые говорят на разных языках, простым и понятным двум сторонам.
Дело в том, что у нас на сайте собираются заказчики и исполнители из России, Штатов, Испании, Франции, Канады, Бразилии и т.д.
Они говорят на разных языках и не всегда друг друга понимают.
- Заказчику нужно написать бриф, ТЗ на дизайн того, что ему нужно. Понять вопросы от дизайнеров, ответить на них, прокомментировать работы.
- Дизайнеру нужно понять, что написано в брифе, часто нужно уточнить какие-то детали по брифу, понять ответы заказчика, чтобы доработать макет.
Когда заказчик и дизайнер говорят на разных языках, процесс общения становится очень долгим и неудобным. Плюс от непонимания между клиентом и дизайнером страдает качество исполнения: клиент просит увеличить шрифты и добавить больше красного цвета, дизайнер не понимает этого и, соответственно, не делает. Чтобы им понять друг друга — нужна постоянно открытая рядом вкладка онлайн переводчика Яндекса, Гугла; нужно выделить нужный текст, скопировать его в новое окно браузера, перевести, вернуться обратно на вкладку с конкурсом… Пару раз так можно сделать, но общаться в таком формате точно неудобно, а зачем пользоваться неудобным сервисом?
Именно поэтому мы поначалу брали функцию переводчика на себя: переводили брифы клиентов из России на английский язык, чтобы все дизайнеры понимали, о чем речь, и могли присоединиться к конкурсу, помогали с комментированием работ. Но клиентов становится больше, загружать рабочий день переводами — не самая крутая идея. Поэтому мы приняли волевое решение внедрить переводчик прямо у себя на DesignContest, чтобы частично снять проблему общения заказчика и дизайнера из разных стран.
КАК?
Мы рассматривали следующие самые популярные варианты переводчиков:
- Bing (2 000 000 символов в месяц бесплатно)
- Google (бесплатной версии с 2011 года нет, платная: $20 за 1 000 000 символов)
- Yandex (бесплатно до 1 000 000 символов в сутки, но не более 10 000 000 символов в месяц)
Разные лимиты, разный интерфейс, удобство работы с сервисом. До драки не дошло, мирным путем выбрали Yandex (достаточное количество бесплатных символов и удобный интерфейс сделали свое дело).
Чтобы держаться в рамках бесплатного количества ежемесячных запросов к переводчику мы сделали следующее:
- Перевод брифа от клиента на дизайн лого/сайта и т.д. Бриф, если он не скрыт специальными настройками, по умолчанию доступен всем пользователям, не только тем, кто зарегистрирован на сайте. Поэтому процесс перевода брифа происходит в два запроса:
Первым запросом по кнопке “Перевести задание” мы отдаем текст в переводчик Яндекса, он определяет, на каком языке написан текст (в нашем случае, это английский), потом предлагает перевести его на любой другой язык из списка и выполняет действие.
- Перевод обсуждения и комментариев под каждой работой. Т.к. принимать участие в обсуждении могут только зарегистрированные пользователи (дизайнеры или заказчик), то перевод доступен всем, кто в своем профиле на сайте указал язык, на который хотел бы переводить. Для выбора доступно 42 языка (список получаем непосредственно от самого Яндекса).
Комментарии в обсуждении переводятся при нажатии на иконку перевода именно на тот язык, который ты укажешь в профиле, поэтому запрос в переводчик Яндекса идет только один, а не два.
В чем плюсы внедренного переводчика?
Клиенту и дизайнеру не надо постоянно переключаться между вкладками в браузере на сторонние страницы, типа онлайн переводчика Гугла.
Можно перевести все комментарии в дискуссии сразу, без особых проблем: все элементы, которые ты переводил на странице — остаются до тех пор, пока ты не перезагрузишь страницу или не уйдешь с нее
теперь наши дизайнеры и заказчики лучше понимают друг друга, а т.к. designcontest — проект международный, это вообще бесценно!
Кстати, важно, что переводчик корректно обходится с форматом html: если в тексте брифа или комментария есть буллиты, ссылки — все это приходит ответом с Яндекса в том же формате, что и исходный текст.
Сейчас мы тестируем, будет ли реально хватать 10 000 000 символов перевода в месяц для подобного проекта, насколько часто им будут пользоваться и в целом насколько точно с сохранением смысла он будет переводить все клиентские брифы :)
P.S. данный переводчик стоит на сайте у нас уже 3 недели, за это время им воспользовалось уже 3 000 человек. Если у многоуважаемых читателей будут какие-то вопросы по реализации нашего решения — не стесняйтесь писать в комментах )
Автор: DaLight