• Как я написал мобильное приложение на react-native

      Меня зовут Алексей Андросов, я уже много лет работаю в Яндексе фронтенд-разработчиком. Два года назад мне и моим партнерам пришла в голову идея создать мобильную социальную сеть Verb. Идея Verb в том, что пользователи могут делиться небольшими статусами — “вербами” — о том, чем они занимаются в данную минуту, простыми вещами, о которых хочется рассказать друзьям, но некуда об этом написать. И мы уже даже получили инвестиции, но сейчас не об этом. Сегодня я хочу рассказать о том, как и почему я написал мобильное приложение на react-native.
      Читать дальше →
      • +17
      • 5,8k
      • 6
    • На Яндекс.Картах теперь можно создавать тепловые карты

        У Яндекс.Карт давно просили сделать средство для визуализации данных с помощью тепловых карт — и мы наконец его сделали. Если вы — один из тех, кому это было очень нужно, можете переходить сразу к чтению документации на гитхабе. Если же вы ещё не знаете, нужно ли это вам, — можете потратить немного времени, чтобы почитать статью про то, что такое тепловые карты, как они генерируются на клиенте, и как мы совместили генерацию тепловой карты с картой географической.


        Отображение географических точек из Википедии

        Что такое тепловые карты, и зачем они нужны


        Итак, обо всем по порядку. Для начала давайте определимся, что такое тепловые карты и с чем их едят? Как подсказывает мне капитан очевидность википедия, тепловые карты (они же теплокарты, они же heatmap) — это графическое представление данных, где дополнительные переменные отображаются при помощи цвета. Такой вид отображения бывает очень удобным. Например, им часто пользуются веб-аналитики, чтобы увидеть наиболее активные части страниц сайта.
        Читать дальше →
      • Как протестировать наследство без боли и страха

        image

        Вы получили или пришли на проект, которому d+дцать лет? PHP код был написан в перерывах между охотой на мамонтов и поэтому слегка не читаем? Вам предстоит это как минимум сапортить, как максимум — рефакторить или переписывать?

        Если у вас после этих вопросов не участилось дыхание или пульс — проходите мимо, эта статья для тех, кто уже бывал жертвой таких издевательств или предчувствует такой поворот судьбы.
        Читать дальше →
      • 43 полезных сервиса для управления проектами. Без эпитетов

          Дано: собственные и аутсорс-проекты, некоторые участники работают удаленно.

          Требуется: необходимо быстро назначать задачи исполнителям, планировать спринты, трекать выполнение и статусы, визуализировать процессы и делиться результатами с заказчиками.

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

          Изначально сервисов было более 100, но постепенно список сокращался, и мы остановили наш выбор на трех, удовлетворяющих вместе наши нужды лучше всего: Jira, Slack и GanttPro. Но, если вдруг эти сервисы не помогут вам в планировании задач и работы с командой, делюсь с вами полным списком:

          Процесс поиска очень часто усложняется тем, что все сервисы, как один, пишут «Лучший сервис, помогающий превратить ваши идеи в реальность и реализовать ваши проекты. Сегодня.». Так, а что вы делаете-то? Поэтому в этом списке без лишних эпитетов, только что какой сервис умеет. :)




          Читать дальше →
        • Установка SuiteCRM 7.5. Интеграция с Asterisk посредством Callinize — community Edition

          Возникла у меня необходимость установки связки: Asterisk + CRM + Интеграция. С установкой Asterisk и FreePBX на Ubuntu проблем не возникло. Отличная статья с пошаговыми инструкциями и картинками, справится даже новичок.

          Но вот когда дело дошло до установки CRM и попыток дружбы оной с Астером, у меня начали клочками выпадать волосы на голове. Сначала я думал, что эта задача так же проста, как и установка Ubuntu+Asteris+FreePBX. Но уже через несколько дней понял, что нормальных мануалов, а у же тем более нормальных бесплатных моделей просто нет. Так компания у нас не большая и покупать что-либо желания нет. Пришлось купить по кускам разные мануалы, посты, статьи и методом проб и ошибок устанавливать и интегрировать CRM с Астером.

          Выбирал из 3-х (Сахар, вТигр и Сюит) и свой выбор остановил на SuiteCRM (остальные не прошли проверку на прочность и совместимость с модулями интеграции С Астером).

          В этой статье я собственно и хочу поделится опытом установки и интеграции SuiteCRM с Астериском. Тот, кто уже установил SuiteCRM, и она успешно работает, можем смело пролистывать часть с установкой и переходить к интеграции.
          Читать дальше →
        • Установка корректного времени на сайте и сервере

            Из-за постоянных изменений с переходом на зимнее-летнее время в РФ это самое время может отображаться на вашем сайте и на сервере некорректно. К тому же время PHP (если собран без опции --with-system-tzdata) и системное время — разные вещи. Поэтому нужно проводить две настройки.

            Как-то помучился с поиском решения, разрозненной информации в инете полно, вот «комплексное» решение этой проблемки, делюсь…
            Читать дальше →
          • Синхронизируем уведомления CI с Telegram

            Cегодня я хотел бы поделиться своим опытом синхронизации уведомлений Continuous Integration серверов (Bamboo, Jenkins, TeamCity и тп.) с бесплатным мессенджером от Павла Дурова — Telegram.

            Данную проблему захотелось решить из-за того, что программисты на нашем проекте не реагировали на уведомления, присылаемые на почту, а телеграмм у нас корпоративный мессенджер. Подопытным CI является наш корпоративный Bamboo, с которого и должны приходить эти самые уведомления.

            Для организации данной синхронизации мы будем использовать BOT API от телеграмма, Gmail API от Google, а также наш ubuntu сервер на Digital Ocean.
            Читать дальше →
            • +4
            • 12,1k
            • 7
          • Yii environment. Наследования и переопределение конфигов

            Хочу рассказать вам про интересный опыт, с которым я столкнулся на своей последней работе. Нужна была гибкая система Environment-ов. После некоторого времени экспериментов я таки добился идеального варианта. Перейдем сразу к делу.

            В protected я создал environment.php c такими вот 2я классами:
            Читать дальше →
          • Интернет-радиостанция на Liquidsoap + IceCast

            liquidsoapДовольно много на хабре сказано про интернет-радиовещание изнутри. Есть даже хорошо написанные теоретические основы интернет-радиовещания, с которыми советую ознакомиться. В данной статье я бы хотел рассказать об организации ещё одной любительской интернет-радиостанции, построенной на связке незаслуженно малоизвестного Liquidsoap 1.0.1 и вездесущего IceCast 2.3.2. Статья расчитана на тех, кто хотя бы приблизительно знает, что такое аудиопоток, IceCast, линуксовская консоль и таки что он вообще хочет получить. Однако она и написана начинающим пользователем, поэтому моё решение даже не зарекается на звание оптимального.
            Читать дальше →
          • Простой PHP генератор сложных HTML таблиц

            Всем привет. Хочу поделиться свеженаписанным генератором HTML таблиц.

            Участились случаи сбора различной статистики и компоновки ее в сложные таблицы с различными групировками.

            image

            Заметив такую тенденцию решил автоматизировать рисование таблиц.

            Как итог:
            • Избавил себя от составления слоеных циклов для вывода массива;
            • Получил стандартизацию структуры массивов;
            Читать дальше →