• Незамеченное IT

      Замечали неравномерность человеческого внимания к разным достижениям? Мемы о том, что Стив Джобс и Деннис Ритчи ушли почти одновременно, но обществом была замечена только смерть первого, хотя вклад второго в IT гигантский:


      Реальность неумолима: как бы ни был талантлив сценарист фильма, актёрам всегда достанется больше внимания, потому что их видно. Как бы ни был профессионален создатель серверной технологии, Марк Цукерберг привлечёт больше внимания, потому что рядовой пользователь взаимодействует с его проектом напрямую. Это нормально: мы все не замечаем чего-то, с чем не сталкиваемся напрямую.

      В этом посте будет небольшой заплыв в специфику организации мероприятий, а также Kotlin, Machine Learning и создателя ОС Фантом. Коротко о посте в одной картинке (да, вы скоро поймете, о чем речь):


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

      Предлагаемая схема: обращать внимание людей на «незамеченные» вещи и объяснять их значимость. Например, сейчас мы запускаем фестиваль TechTrain, и видим несколько историй, о которых пойдет речь.
      Читать дальше →
    • Deep Learning: Распознавание сцен и достопримечательностей на изображениях

        Время пополнять копилку хороших русскоязычных докладов по Machine Learning! Копилка сама не пополнится!

        В этот раз мы познакомимся с увлекательным рассказом Андрея Боярова про распознавание сцен. Андрей — программист-исследователь, занимающийся машинным зрением в компании Mail.Ru Group.

        Распознавание сцен — одна из активно применяемых областей машинного зрения. Задача эта посложнее, чем изученное распознавание объектов: сцена — более комплексное и менее формализованное понятие, выделить признаки труднее. Из распознавания сцен вытекает задача распознавания достопримечательностей: нужно выделить известные места на фото, обеспечив низкий уровень ложных срабатываний.

        Это 30 минут видео с конференции Smart Data 2017. Видео удобно смотреть дома и в дороге. Для тех же, кто не готов столько сидеть у экрана, или кому удобней воспринимать информацию в текстовом виде, мы прикладываем полную текстовую расшифровку, оформленную в виде хабростатьи.


        Перейти к текстовой версии
        • +30
        • 6,3k
        • 2
      • Слушать и говорить: анонс HolyJS 2018 Moscow



          Что главное на конференциях — доклады или общение? Свои сторонники есть и у первого варианта («информация по делу важнее разговоров»), и у второго («учиться можно и дома, а вот поговорить с экспертами дорогого стоит»).

          24-25 ноября мы проведём в Москве конференцию для JavaScript-разработчиков HolyJS 2018 Moscow, и считаем, что она хорошо подойдёт как ценителям докладов, так и сторонникам общения. Почему? Написали под катом и о первой составляющей, и о второй.
          Читать дальше →
          • +23
          • 2,3k
          • 2
        • [Анонс, Питер] Встреча JUG.ru с Андреем Беляевым и Алексеем Стукаловым —Тролль гнёт CUBA: F.A.Q

            В четверг, 9 августа, в петербургском офисе компании Oracle пройдет встреча JUG.ru с Андреем Беляевым и Алексеем Стукаловым — инженерами самарской компании Haulmont. Тема встречи: F.A.Q. по CUBA.platform — высокоуровневой Java-платформе для создания корпоративных информационных систем.


            CUBA Platform — Java-фреймворк с открытым исходным кодом для быстрой разработки корпоративных приложений, созданный самарской компанией Haulmont и используемый по всему миру.


            Читать дальше →
          • Akka Streams для простых смертных

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

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


              В основе статьи — расшифровка доклада Вагифа Абилова с нашей декабрьской конференции DotNext 2017 Moscow.
              Читать дальше →
              • +34
              • 9,1k
              • 8
            • Чему я научился, создав 100 игр за 5 лет

              • Перевод

              Мой марафон закончен! С июня 2012 года по июнь 2017 года я создал 100 игр.

              Прежде, чем мы углубимся в подробности, мне нужно немного рассказать о своём проекте «100 игр за пять лет» и вкратце изложить числа и факты о самих играх.



              Небольшое объяснение


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

              Кроме того, я знал, что даже сами по себе мои игры будут плохими (а многие из них и в самом деле плохи), то по крайней мере поставленная задача заслуживает внимания. Хотя я не могу сказать, что научился при создании 100 игр большему, чем если бы выбрал другой путь, но одним из основных качеств Джеймса из 2012 года была амбициозность. Благодаря проекту я попал в список Forbes 30 Under 30 2017, выработал и упрочил собственный дизайнерский стиль, а также познакомился с самыми удивительными, вдохновляющими и интеллектуальными создателями игр. Я с гордостью называю свою цель «самой умной идеей, пришедшей в голову более юному мне».
              Читать дальше →
            • «Здесь нет начальника»: о работе с Open Source и Apache Ignite в Сбербанк-Технологиях

                При словах «open source» многим представляются либо энтузиаст, коммитящий по вечерам в любимый проект, либо небольшая компания, зарабатывающая поддержкой открытого продукта. Но если задумываться только о них, то упустишь важный и интересный сегмент сообщества. Когда-то слова «энтерпрайз» и «open source» казались антонимами, а теперь крупные корпорации не только активно используют OSS-проекты, но и сами контрибьютят в них.

                Сбертех со временем всё активнее проявляет себя в OSS-сообществе, и мы решили расспросить их об этом. Как сочетаются строгая банковская специфика с опенсорсным духом свободы? Какие возникают требования к Open Source, которых может не быть у других компаний? Есть ли в Сбертехе сотрудники, которые в качестве основных рабочих задач пишут открытый код? Каковы планы и желания на будущее?  Антон Чураев, курирующий направление Free&Open Source, рассказал нам обо всём этом и не только.


                Читать дальше →
              • Джеффри Рихтер приезжает в Россию: анонс конференции DotNext 2018 Moscow

                  Задумайтесь на минутку: что за последний год произошло с .NET? Что изменилось, что из этого мы должны использовать? Можно даже отложить эту статью и подумать, ведь вопрос более чем достойный. Мы сами попробовали и потратили на него не один час.

                  В этом году ответить на него сложней, чем обычно. С одной стороны, есть масса громких, но очень поверхностных или высокоуровневых новостей, например: в Microsoft теперь связывают будущее компании с облаками и искусственным интеллектом, а не платформой Windows. Но что с того толку обычному разработчику? Разве четыре года назад все уже не писали под облака?

                  В этой реальности нам приходится каждый раз делать совершенно новую программу DotNext. Чтобы сделать новую программу — нам нужны новые люди. Старые и известные люди в .NET, совершенно новые на DotNext. Например, этой осенью к нам приедет автор CQRS — Грег Янг.




                  Узнаете эти книги? «CLR via C#», написанная Джеффри Рихтером — настольная книга многих .NET-разработчиков, а «Windows Internals» Павла Йосифовича — одна из самых известных книг про Windows-разработку вообще. Кстати, в этом году вышло уже 7-е издание! Хотите узнать, как пообщаться с авторами этих книг и побывать на их докладах? Добро пожаловать под кат!
                  Читать дальше →
                  • +54
                  • 8,7k
                  • 8
                • 10 причин [не] использовать k8s

                    Сегодня мы поговорим про Kubernetes, про грабли, которые можно собрать при его практическом использовании, и про наработки, которые помогли автору и которые должны помочь и вам. Постараемся доказать, что без k8s в современном мире никуда. Противникам k8s также предоставим отличные причины, почему не стоит на него переходить. То есть в рассказе мы будем не только защищать Kubernetes, но и ругать его. Отсюда в названии появилось это [не].

                    Эта статья основана на докладе Ивана Глушкова (gli) на конференции DevOops 2017. Последние два места работы Ивана так или иначе были связаны с Kubernetes: и в Postmates, и в Machine Zone он работал в инфракомандах, и Kubernetes они затрагивают очень плотно. Плюс, Иван ведет подкаст DevZen. Дальнейшее изложение будет вестись от лица Ивана.


                    Читать дальше →
                  • Топ-10: лучшие доклады Joker 2017



                      Недавно мы открыли для всех видеозаписи докладов Joker 2017. А когда в публичный доступ попадают сразу сорок Java-докладов, в чём тут может быть проблема? В том, что глаза разбегаются! Когда столько всего, непонятно, на что обратить внимание в первую очередь.

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

                      Обычно мы в таких топах строго обозначаем места. Но в этот раз топовые доклады шли «ноздря в ноздрю», и разница между ними порой символическая. Поэтому, хотя видеозаписи ниже расположены по возрастанию оценок к наивысшей, это деление довольно условное: важнее не то, в каком порядке они идут, а то, что все они очень понравились зрителям.
                      Читать дальше →
                      • +34
                      • 10,8k
                      • 1
                    • Анонс DevOps-конференции DevOops 2018


                        Прошло уже как минимум несколько лет с тех пор, как слово «DevOps» стало у всех на слуху. Кто только не внедрял его, и чего только не делал.


                        Между тем, область это весьма неизведанная, таящая в себе множество открытий. Например, в русскоязычном сообществе всё еще не определились с терминологией: кто-то уже сейчас нанимает людей на должность «девопс», а кто-то всегда рассказывает, что «девопс» — это культура и практика, призванная объединить разработку, эксплуатацию и кого-то ещё, поэтому называть так должность некорректно.


                        Многие ищут ответ в книгах, благо в последнее время их появилось множество. Например, одними из наиболее значимых мне кажутся Devops Handbook, автором которой является наш спикер Джон Виллис, и Google SRE Book, доступная в интернете бесплатно. Однако, читая эти книги, я обнаружил следующую вещь: сухой текст не очень подходит для передачи знаний, очень сильно основанных на реальной работе живых людей. Получается слишком абстрактное знание.


                        Например, мы берем 14-ю главу, «Managing Incidents». Нам приводят два примера: вначале красочно рассказывается история одного инцидента, с которым разбирались неправильно. Потом рассказывается та же история, но с правильной структурой и хорошим исходом. Хороший исход наступает, если соблюдать важные практики:

                        Читать дальше →
                        • +31
                        • 4,5k
                        • 5
                      • Joker 2018: Клуб неанонимных Java-разработчиков

                          Чем Joker хорош как явление? По сути, это единственное место, куда можно прийти и поговорить за джаву.


                          И при этом Joker – праздник. Это не то место, где кучка старпёров нудит, какая Java тормозная, какой Hibernate костыльный, почему что-то там не компилируется и так далее — если понимаешь, о чём я.


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


                          Скоро будет новый Joker — уже шестой по счёту. Если интересно сразу узнать дату и время проведения — смотри под кат, иначе — читай дальше.


                          Скрытый текст
                          Что: Joker — наша самая большая международная Java-конференция для опытных разработчиков;
                          Где: Санкт-Петербург, Экспофорум;
                          Когда: 19-20 октября 2018.

                          Читать дальше →
                        • Выходные, которые нельзя пропустить. TechTrain в Питере

                            Будучи разработчиком, работая над узкоспециализированными проектами, со временем перестаешь разбираться в окружающем мире. Это общая проблема для всех нас. Расскажу пару слов о том, как это бывает и как мы придумали это побороть.



                            Осторожно, трафик! Под катом есть фоточки в довольно неплохом качестве.



                            Читать дальше →
                          • Чего стоит самое точное расписание электричек с 2003 года

                              Расписание электричек — это то, с чего в 2003 году начинался Туту.ру. Сейчас я с гордостью могу сказать, что наше расписание иногда оказывается более точным, чем расписание перевозчика или РЖД, — это потому что мы очень быстро реагируем на обращения пассажиров и имеем эвристики для сравнения разных источников данных и их взаимокоррекций.


                              Старое бумажное расписание СПб — Оредеж

                              Началось всё так. Изначально в Интернете не было регулярно обновляемого расписания электричек. Точнее, было «бумажное». Просто сохранить расписание с вокзала или опубликовать то, что обычно размещают в разных брошюрках, — это бесполезно. В расписание вносится большое число временных изменений. Мы поставили цель — сделать регулярно обновляемое расписание.
                              Читать дальше →
                            • Встреча JUG.ru с Артуром Пилипенко: Falcon — LLVM-based JIT-компилятор в Zing JVM

                                Во вторник, 5 июня, в петербургском офисе компании Oracle состоится встреча JUG.ru с Артуром Пилипенко, инженером компиляторной команды компании Azul Systems. Тема встречи — Falcon.

                                Falcon — JIT-компилятор, построенный на базе инфраструктуры LLVM, уже год как является компилятором по умолчанию в виртуальной машине Zing. Новый компилятор во всю используется в продакшне и показывает существенный прирост производительности по сравнению со старым компилятором C2.

                                image
                                Читать дальше →
                              • Убираем русский из своего английского

                                • Tutorial
                                Взрослые студенты, которые только начали изучение какого-либо иностранного языка, всегда полагаются на свой родной язык и переводят каждое слово в предложении, чтобы понять его суть. Только такой перевод может сыграть с вами злую шутку, и выйдет у вас «идите в!» вместо «входите!» от невинного “come in!”.

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


                                Читать дальше →
                              • Инструменты тестировщика

                                  Какие инструменты нужны тестировщику? Об этом мы сегодня порассуждаем в этой статье, в основе которой — доклад Юлии Атлыгиной с прошлого Heisenbug. Видеозапись доклада доступна по ссылке.


                                  Читать дальше →
                                  • +19
                                  • 40,2k
                                  • 8
                                • Пятничный JS: случайное перемешивание

                                    Экзамен в школе прапорщиков.
                                    — Вот смотрите. Это большой палец, это — указательный, это — средний, это — безымянный, это — мизинец. Мешаем, мешаем, мешаем (двигает пальцами)… Теперь где какой?
                                    Всем привет. С ортодоксальной точки зрения сегодня не настоящая пятница — просто день, когда завтра выходной. Поэтому статья в моей традиционной рубрике тоже будет не совсем настоящая, у неё пониженный градус безумия и повышенная полезность. Однако довольно предисловий, перейдём к сути.

                                    Перед моими студентами регулярно встаёт задача случайного перемешивания массива. За её решением они, как правило, лезут в гугл. И гугл им подсказывает следующее:

                                    var shuffledArr = arr.sort(function(){
                                      return Math.random() - 0.5;
                                    });
                                    

                                    Здесь и далее будем называть этот метод случайной сортировкой. Сегодня я решил написать о том, какие преимущества и недостатки есть у такого подхода.
                                    Читать дальше →
                                  • Ваши A/B-тесты сломаны

                                      После того, как вы проверили, что функциональность реализована нормально, она выкатывается в эксперимент, чтобы узнать, нравится ли новая версия пользователям.

                                      Замечали, что обычно люди, ответственные за эксперименты, в итоге говорят, что данных недостаточно для решения? Часто это действительно так, но нередко всё дело в поломках системы экспериментов и учёта пользовательской статистики.
                                       
                                      В этой статье мы рассмотрим типичные поломки, которые там встречаются, и у вас появится возможность, вернувшись на рабочее место, немножко побыть data scientist'ами и найти ошибки у себя в компании. Какие-то из них там наверняка есть.

                                      В основе материала — расшифровка доклада Романа Поборчего с нашей декабрьской конференции Heisenbug 2017 Moscow.


                                      Читать дальше →
                                    • Анимации в мире состояний

                                        Многие уже научились строить чистые интерфейсы и писать «undo-redo» в несколько строчек. Но как быть с анимациями? Часто их обходят стороной, и они не всегда вписываются в подход (state) ↦ DOM. Есть отличные решения вроде React Motion, но что если вам нужно делать сложные анимации или работать с Canvas, используя физический движок?

                                        В нашем тексте рассказывается, как работать с анимациям в React-приложениях, и сравнивается несколько подходов (D3, React-Motion, «грязные компоненты»). А также о том, как «запускать» анимации в Redux-приложениях. Материал основан на расшифровке доклада Алексея Тактарова с нашей декабрьской конференции HolyJS 2017 Moscow. Прилагаем заодно видеозапись этого доклада:


                                        Осторожно, трафик: под катом много картинок и гифок (сами понимаете, материал про анимации).
                                        Читать дальше →
                                        • +35
                                        • 9,8k
                                        • 1