• От сайтов на заказ к Enterprise-продуктам

      Каждый бизнес, даже если это маленький семейный ресторанчик, с чего-то начинался. В IT, и особенно в web, скорость роста очень высока, поэтому истории становления успешных компаний из ничего могут занимать всего каких-то десять лет, но при этом, пройти много этапов, взлетов и падений. Так все происходило и для KODIX, которая стартовала, как маленькая web-студия, а пришла… читайте дальше в расшифровке выступления Кирилла Новикова на Whale Rider, к чему пришла компания, что нужно, чтобы повторить успех, и какие есть перспективы.



      О спикере: Кирилл Новиков основатель и руководитель компании, которая с недавнего времени называется KODIX Automotive Digital и работает более, чем с 10 автомобильными брендами и более 300 их дилерами. По числу клиентов и согласно разным отраслевым рейтингам — это ведущая компания в сфере Web-разработки для автомобильного бизнеса.

      Но так было не всегда.
      Читать дальше →
    • Осталось 7 дней, чтобы повлиять на программу Highload++ Siberia

        Сначала о главном, а потом обо всем по порядку. Через 7 дней, то есть 30 апреля закрывается приём докладов на Highload++ Siberia.


        Стоп, что это вообще


        Мы посчитали, что одного HighLoad++ в год недостаточно. Пораскинули мозгами и решили заодно расширять географию. Новосибирск — это крупный IT-хаб в России, там базируется целый ряд крупных IT-компаний и развивается сибирская Долина — Академпарк. Поэтому, все едем в Новосибирск 25 и 26 июня.

        Highload++ Siberia это форк нашей самой крутой конференции для разработчиков высоконагруженных систем, но это будет совершенно самостоятельное мероприятие со своими будущими традициями и своей программой. То есть, если вам чего-то все время не хватало на Highload++, то самое время, а точнее последний шанс, деятельно на это повлиять.
        Читать дальше →
      • Анонс AppsConf: 2 дня прикладных, хардкорных и хайповых докладов



          8-9 октября в Москве пройдет AppsConf — конференция, посвященная проблемам в мобильной разработке и их решению. Это будет уже третья AppsConf, и теперь мы решили переработать формат и подойти к организации немного с другого угла.

          Но сначала о важном:


          Итак, что изменилось…
          Читать дальше →
        • Бешеные псы: Angular 2 vs React

            Встречайте, противостояние двух фреймворков: Angular и React в формате поединка на примере конкретного простого приложения. За Angular выступает Евгений Гусев (@bunopus), за React — Илья Таратухин (@ilfa). Чтобы сделать честные выводы, они сначала поменялись технологиями и попробовали развернуть базовый проект. Старт на React породил множество проблем, а вот с Angular дело обстояло гораздо проще, потому что это идеальное приложение для человека, который не особенно работал с фронтендом. Но, конечно, это было только начало, дальше пошел настоящий спор, все этапы которого под катом


            Читать дальше →
          • Программируй меньше, думай больше… инкрементально

            • Перевод
            К сожалению, примеры проектов, на которые разработчики потратили много времени, скажем более полугода, но так никогда и не выпустили в свет, нередки.

            Фагнер Брек считает, что такое происходит потому, что эти проекты не реализовывали принципы непрерывной интеграции. В своей заметке, перевод которой перед вами, он пишет, что в известном ему случае кое-что нужно делать по-другому с самого начала:

            • Интегрируйте ваши изменения кода в работу всех остальных как можно скорее, желательно по несколько раз в день.
            • Программируй меньше, думай больше.

            Но как это сделать? Это фундаментальный вопрос, с которым каждому приходится столкнуть в программном проекте: всё изменится.

            Как можно непрерывно интегрировать проект каждый день, если для его завершения требуются месяцы, а не дни?


            Читать дальше →
          • Три истории микросервисов, или MSA для Enterprise

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


              Вместе с Игорем Беспальчуком постараемся посмотреть на этот тренд с трех разных ракурсов, что очень полезно для понимания природы того, с чем мы имеем дело, и, как следствие, для того, чтобы сделать правильные выводы и принять правильное решение.

              Микросервисы — одна из самых важных и значимых составляющих Web-scale архитектуры, имеющая наибольшие последствия для переделки устройства техник и паттернов в Enterprise. Трудно сейчас сказать, на каком участке сейчас находится сама технология — может быть, на самом верхнем пике, и нам предстоит еще десять раз разочароваться. Но, тем не менее, это не повод не изучать её прямо сейчас.
              Читать дальше →
              • +22
              • 3,7k
              • 1
            • Держим дизайн системы под контролем, используя изолированное юнит-тестирование

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



                Сегодня мы поговорим о том,

                • Как делать тестирование сложными зависимостями?
                • Как добиться большого тестового покрытия?
                • Как тесты влияют на дизайн?
                • Что делать, когда много логики в базе?
                • Как соблюсти компромисс между дизайном и «не дизайном».


                Читать дальше →
              • Как решить 90% задач NLP: пошаговое руководство по обработке естественного языка

                • Перевод
                Неважно, кто вы — зарекомендовавшая себя компания, или же только собираетесь запустить свой первый сервис — вы всегда можете использовать текстовые данные для того, чтобы проверить ваш продукт, усовершенствовать его и расширить его функциональность.

                Обработкой естественного языка (NLP) называется активно развивающаяся научная дисциплина, занимающаяся поиском смысла и обучением на основании текстовых данных.

                Как вам может помочь эта статья


                За прошедший год команда Insight приняла участие в работе над несколькими сотнями проектов, объединив знания и опыт ведущих компаний в США. Результаты этой работы они обобщили в статье, перевод которой сейчас перед вами, и вывели подходы к решению наиболее распространенных прикладных задач машинного обучения.

                Мы начнем с самого простого метода, который может сработать — и постепенно перейдем к более тонким подходам, таким как feature engineering, векторам слов и глубокому обучению.

                После прочтения статьи, вы будете знать, как:

                • осуществлять сбор, подготовку, и инспектирование данных;
                • строить простые модели, и осуществлять при необходимости переход к глубокому обучению;
                • интерпретировать и понимать ваши модели, чтобы убедиться, что вы интерпретируете информацию, а не шум.

                Пост написан в формате пошагового руководства; также его можно рассматривать в качестве обзора высокоэффективных стандартных подходов.
                Читать дальше →
              • Обзор TeamLead Conf: 2 дня по 2 трека, 25 докладов, 474 участника, излитая боль неизмерима



                  Начнем рассказ о тимлидах и для тимлидов с проблем, болей, вопросов, которые могут возникнуть в больших и небольших ИТ-компаниях. Ведь, если мы не можем сформулировать задачи, то как же мы станем их решать.

                  1. Нужен ли вообще тимлид?
                  2. Что есть тимлид, какие у него задачи?
                  3. Что сначала: команда или тимлид?
                  4. Необходимы ли тимлиду технический навыки?
                  5. Вырастить или нанять?
                  6. Как понять, можно ли и нужно ли выращивать из инженера тимлида?
                  7. Сколько времени нужно, чтобы вырастить тимлида?
                  8. Менеджерские роли тимлида, какая роль предпочтительней?
                  9. Насколько важны эмоциональный интеллект и социальные навыки?
                  10. Что делать если руководитель сам является техническим специалистом и падок на микроменеджмент?
                  11. Тимлид ушел на неопределенное время (отпуск, больничный, форс-мажор), что делать?
                  12. Что делать, если тимлид уходит насовсем?
                  13. Какое должно быть соотношение менеджмента и разработки в работе тимлида?
                  14. Есть ли путь назад (и вперед)?
                  15. Какие перспективы карьеры тимлида?
                  16. Что может помешать стать тимлидом?
                  17. В чем разница между тимлидом и техлидом?
                  18. Как выявить неэффективного тимлида на ранней стадии?
                  19. Как начинающему тимлиду справиться с потоком информации?
                  20. Нужен формальный или неформальный лидер?
                  21. Junior и Senior тимлид, в чем различия и как держать их в одной команде?

                  Такой поток запросов выдали участники TeamLead Conf на круглый стол. Если вы уже сталкивались с какими-то из них, то, вероятно, и остальные могут вас настигнуть, есть, о чем подумать.

                  Под катом — обзор лучших докладов TeamLead Conf с видеозаписями и презентациями.
                  Читать дальше →
                • REST-сервисы на ASP.NET Core под Linux в продакшене

                    В основе этой статьи доклад Дениса Иванова (@DenisIvanov) на РИТ++ 2017, в котором он поделился опытом разработки и запуска в продакшен REST-сервиса на ASP.NET Core на Kubernetes. На текущий момент это сделать уже можно без особенных проблем и бояться использовать .NET Core, судя по опыту 2ГИС, не стоит.

                    Конфигурация: ASP.NetCore на Linux позволила не только использовать существующую on-premise платформу, но и принесла еще несколько дополнительных плюсов, в частности, в виде полноценных Docker и Kubernetes, которые сильно упрощают жизнь.



                    О сервисе


                    С 1 апреля 2017 года в продуктах 2ГИС появилась иконка, на которую можно нажать и начнет проигрываться видео. Рекламодатели, которые размещаются в справочнике, теперь могут купить новый способ размещения рекламы, а все продукты нашей компании (мобильные, онлайн, API), ходят на сервис, про который я буду сегодня рассказывать.

                    Топология этого сервиса примерно представлена на картинке ниже. Сервис помечен облачком в центре, он, по сути дела, является бэкендом для продуктов. Когда продукт приходит и говорит: «Дай мне для этого рекламодателя всю информацию о видеорекламе», сервис ему послушно ее отдает. Это информация такого плана: такая-то обложка лежит на таком-то CDN, такой-то видеофайл в таких-то разрешениях лежит там-то и там-то, само видео длится такое количество времени и прочее.


                    Осторожно: много информации и кода.
                    Читать дальше →
                  Самое читаемое