• Обновляем расширение Intl в PHP 7 на Linux Ubuntu 16.04

      Программисты делятся на два типа: консерваторы, для которых переход на новую версию равносилен перелёту на другую планету (если читаешь это из Windows XP — поздравляю, это ты); и Викторы Цои, чьи сердца и глаза требуют перемен, и обновляют всё и вся при первой возможности. Если ты второго типа, и у тебя уже стоит последняя версия PHP на последней LTS версии Ubuntu, но покоя не даёт то, что расширение Intl использует устаревшую версию библиотеки ICU, или тебе просто понравились картинки из «Аватара» — добро пожаловать под кат! (Картинок больше не будет.)

      Аватар

      Читать дальше →
    • Обновление строк на лету в мобильных приложениях: часть 2



        Привет, Хабр!

        В недавней статье наш коллега Дмитрий Марущенко yojick рассказал о том, как доставлять динамические обновления переводов с сервера на мобильные устройства. В продолжение темы сегодня поговорим о том, как мы используем эти обновлённые переводы в наших приложениях.

        Исторически сложилось, что все основные мобильные платформы «из коробки» обладают превосходной поддержкой локализации сообщений. В iOS, Android и Windows Phone приложение можно локализовать без всяких трудностей. Все средства для этого уже встроены в IDE: просто укажите нужный язык в списке поддерживаемых локализаций, введите текст на этом языке — и всё остальное за вас сделает IDE. Работает как часы. Но у этого подхода всё же есть недостатки.

        Нашли в тексте ошибку? Хотите что-то перефразировать? Вам нравится экспериментировать с разными обращениями к разным целевым группам? Во всех случаях ответ один: придётся пересобирать приложение, снова выкладывать его в магазин, проходить проверку, получать одобрение, публиковать новую версию со всеми изменениями и ждать, чтобы пользователи обновили приложение на своих устройствах. Даже если все процедуры пройдут без заминок, это займёт дни или недели. А если пользователи не захотят обновляться? Или того хуже — не смогут этого сделать по техническим причинам вроде неподдерживаемой ОС? Тогда нежелательный текст в вашем приложении проживет гораздо дольше, чем хотелось бы.

        Это довольно неудобно. К счастью, нам удалось решить эту проблему на разных платформах (с учётом особенностей каждой из них). И мы рады поделиться своим решением.
        Читать дальше →
        • +27
        • 2,9k
        • 2
      • В 20 раз дешевле, в 2,5 раза точнее и вдвое удобнее

          Приветствую, уважаемое сообщество!

          Сегодня ровно год, как я написал первый пост на Хабре. Второй и до этого момента крайний пост, я написал примерно через неделю и…

          Этот год я активно занимался освоению новой профессии — Трабл-Шутер. Тех, кто не знает такой специальности (но хотел бы узнать), милости прошу в мой профиль. Если кратко, то Трабл-Шутер — это человек решающий чужие бизнес-проблемы, не традиционными способами.

          Так вот, в честь юбилея моего присутствия на Хабре, я решил написать серию статей, в которой расскажу о некоторых проектах и разработках, сделанных в ходе работы над этими проектами. Конечно, я буду рассказывать только о разработках, которые по тем или иным причинам не принял заказчик (соответственно все права на интеллектуальную собственность принадлежат мне) или которые я делал вне проектов, для себя. И естественно, все проекты будут технической направленности, это около 40% всех проектов (остальные относятся к области маркетинга, HR, экономики).

          Долго думать с какого проекта начать, не пришлось, логично начать с самого первого проекта. Тем более решение, которое я опишу, получилось действительно эффективное и простое (у Трабл-шутеров часто решения на столько простые, что заказчик хватается за голову: «Как же я сам не догадался?»). В теме поста нет никакого обмана, действительно разработанное оборудование получилось минимум в 20 раз дешевле аналогов (для некоторых брендов конкурентов, этот показатель достигает и 40х), в 2,5 раза точнее и значительно удобнее.

          И так, как вы уже поняли разрабатывали мы в этом проекте не ПО, не процессы, а оборудование (железку). Под катом вы узнаете все подробности о проекте.
          Читать дальше →
        • Обновление строк на лету в мобильных приложениях: часть 1



            Введение


            Свою статью я начну с признания: я немного завидую людям, чей родной язык — английский. В современном мире он стал языком интернационального общения, негласным стандартом. Практически любое популярное приложение поддерживает английский язык. Англоговорящие люди вряд ли когда-нибудь скачивали долгожданную игру из App Store и разочарованно понимали, что она не поддерживает их родной язык.

            Игры и приложения приятнее и проще использовать на родном языке, а для некоторых людей он вообще единственно доступный. Именно поэтому компании, работающие на международном рынке, переводят свои приложения на распространённые языки.

            Эта статья — для тех разработчиков, которые уже задумались о локализации своего приложения, сделали первые шаги в этом направлении и наступили на свои первые грабли. В сегодняшней статье я коротко опишу подходы к локализации приложений, остановлюсь подробнее на локализации на стороне клиента, расскажу о недостатках этого подхода и предложу способ их обойти. А в следующей части мои коллеги подробнее расскажут о деталях имплементации нашего подхода в мобильных ОС.

            О локализации веб-приложений мы уже писали здесь.
            Читать дальше →
            • +52
            • 10,1k
            • 7
          • Как не утонуть в лендингах: история создания японского CarPrice

              В прошлой статье про развитие CarPrice в Японии мы обещали отдельно написать о создании сайта для экзотического японского рынка. Абсолютно незнакомый язык. Мало времени на запуск. Большая разница во времени между IT и бизнесом. Географически разрозненная команда из России, Японии, Канады, Белоруссии, Филиппин и Китая. В этом посте мы расскажем, как у нас все получилось в этих непростых условиях.


              Читать дальше →
              • +30
              • 7,1k
              • 8
            • Проблемы локализации iOS и macOS

              image


              Любая успешная компания, занимающаяся разработкой продуктов, ориентированных на массового пользователя, рано или поздно сталкивается с проблемой их локализации. Под ней я понимаю куда более сложную задачу, чем банальный перевод программных интерфейсов на другой язык. Ведь настоящая локализация должна учитывать максимально возможный спектр особенностей, влияющих на пользовательский опыт в той или иной стране.


              К сожалению, у Apple с локализацией наблюдаются реальные проблемы. В этой статье я хочу рассмотреть ряд примеров, на которых становится очевидным недостаточно качественный подход компании к адаптации iOS и macOS под российского пользователя. Я бы даже сказал, местами откровенно наплевательский.


              Это моя первая публикация на Хабре, надеюсь, вам понравится.

              Читать дальше →
            • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

              Подробнее
              Реклама
            • Sir Markdown. Лекция Яндекса

                При разработке документации мы руководствуемся не только стандартами, но и удобством её использования. Стандарты определяют состав и форму документации, а формат строится исходя из удобства. Разработчик Сергей Бочаров рассказывает о пути Markdown-документа и о проблемах, которые приходится решать в обмен на простоту использования этого формата.


                У меня иногда складывается впечатление, что не он служит для нас, а мы служим для этого формата. Поэтому — сэр Markdown.

                Читать дальше →
              • CarPrice в Японии: особенности национального автоаукциона

                  Возможно, вы слышали, что CarPrice работает не только в России, но и в Японии. Рынок подержанных автомобилей там очень развит, и на первый взгляд кажется, что занять определенную нишу просто невозможно. Но это не так.

                  Японские компании, продающие подержанные автомобили, работают по отточенным десятилетиями схемам. Механизмы взаимодействия отполированы до блеска, но они практически не учитывают широкие возможности, которые открывает IT. Оценив японский рынок с этой стороны, мы увидели перспективу занять долю на этом рынке.

                  Читать дальше →
                • Внедрение в Mars IS процесса Service Introduction

                    «У вас не будет второго шанса произвести первое впечатление» — этот афоризм прекрасно характеризует ситуацию, возникающую при введении новых услуг в эксплуатацию в сфере IT. В 2016 году Mars IS перешел на новую операционную модель, состоящую из 48 процессов, взаимосвязаных между собой, с тем чтобы обеспечивать эффективное функционирование IT-услуг. Наряду с такими широко используемыми процессами, как управление инцидентами, проблемами, изменениями и др., в новую операционную модель вошел процесс введения новых услуг в эксплуатацию (Service Introduction).


                    Читать дальше →
                  • Краткий FAQ о Федеральном законе N 242-ФЗ


                      Не далее, как 1-го сентября Роскомнадзор опубликовал итоги реализации федерального закона о локализации баз персональных данных российских граждан на территории России. Полная версия статьи находится по адресу: https://rkn.gov.ru/news/rsoc/news49466.htm


                      С момента реализации Федерального закона №242-ФЗ сотрудниками Роскомнадзора проведено 2256 плановых проверок, 192 внеплановые проверки и более 3000 мероприятий систематического наблюдения, по итогам которых выявлено 56 нарушений требований, связанных с локализацией персональных данных, что составляет около 1 % от общего числа выявленных нарушений.


                      Инфографика из статьи, так же представленная Роскомнадзором:

                      Итак, о чем пойдет речь? Да, про пресловутый ФЗ №242. Попытаемся ответить на наиболее типичные вопросы, и попытаемся ответить на вопрос: "А что делать, чтоб не попасть в эти проценты?"


                      Для тех, кто не в курсе — под катом краткий FAQ.

                      Читать дальше →
                    Самое читаемое