Обзор Java-конференции JPoint 2016

от автора

22-23 апреля 2016 года в четвёртый раз прошла конференция JPoint, в т.ч. уже в третий раз подряд в Москве. В конференции приняли участие более 1000 Java-разработчиков, на 4 параллельных треках было прочитано 48 докладов. Далее приводятся подробности о прошедшей конференции.



Из интересных событий, произошедших с октябрьской конференции Joker 2015, можно назвать:

  • анонсы этой конференции и JPoint Student Day;
  • анонсы видео топ-10 докладов JPoint 2015 (раз, два);
  • новые интервью Алексея Фёдорова из серии «Без слайдов» (например, с Романом Елизаровым);
  • конференцию JBreak, прошедшую в Новосибирске;
  • выход первой версии языка Kotlin (со встречами в Питере и Москве);
  • выпуск 105 подкаста Разбор полётов, тоже оказавший определённое влияние на конференцию.

Холл гостиницы «Radisson Славянская», традиционного места проведения JPoint.

Робот Федя, который (как можно предположить) дистанционно управлялся и озвучивался человеком-оператором. Забавно было наблюдать за общением робота с детьми, не понимающими, что говорят с человеком.

Стенды-будки компаний-спонсоров: JetBrains, Одноклассники

Deutsche Bank, Сбербанк-Технологии и Luxoft.

Открытие конференции

Приветственное слово от организаторов и спонсоров (являющихся иногда одновременно и спикерами). Алексей Фёдоров, Руслан Черемин, Андрей Паньгин, Олег Анастасьев, Андрей Дмитриев.

Новости высокой моды, или В поисках серебряной пули
Барух Садогурский, Виктор Гамов, Кирилл Толкачев, Антон Архипов, Алексей Абашев, Антон Черноусов

Ведущие популярного подкаста Разбор полётов в формате keynote представили многие из докладов конференции. Слева направо: Виктор Гамов, Алексей Абашев, Барух Садогурский, Кирилл Толкачёв, Антон Черноусов (Голодный) и Антон Архипов.

Доклады

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

Hotspot и AOT: Пришло время компилировать
Дмитрий Чуйко

Дмитрий рассказал о появлении (пока только экспериментальной) возможности в Java 9 статической (AOT, ahead-of-time) компиляции Java-кода. Пока достижения скромны — компиляция возможна только в исполняемый код под Linux и размер получаемых файлов велик (около 200 Мб). Интерес к Linux вызван доминированием именно на этой платформе серверных Java-приложений.

Неочевидные Дженерики
Александр Маторин

На доклад Александра пошёл, т.к. ранее слушал его доклад «Рефакторинг в функциональном стиле» на Joker 2015. В ожиданиях не разочаровался. Повествование велось про дженерики (Generics) и затронуло достаточно глубокие темы, например:

  • во что компилируется при этом код;
  • bridge-методы;
  • правила стирания (erasure) типов;
  • heap pollution;
  • примеры кода, который должен компилироваться и не компилируется, и наоборот.

Чувствуется знание темы, материал хорошо подан и смотрится интересно.

Escape Analysis и скаляризация
Руслан Черемин

Очень экспрессивный (см. среднюю фотографию выше) и интригующий доклад про

  • Escape Analysis (статический анализ области достижимости объекта) и
  • скаляризацию (проецирование полей в локальные переменные).

Ранее присутствовал на одной из конференций на его докладе про Disruptor (при аншлаге в зале) и был знаком с его блогом. Желающих посмотреть и этот доклад было так много, что Алексей Шипилёв был вынужден сидеть на полу.

Счастливое присутствие в зале Тагира Валеева позволило даже исправить озвученную Русланом проблему (о чём Тагир сегодня написал).

Баттл инструментов для сборки — Maven vs Gradle vs SBT
Антон Архипов, Евгений Борисов, Барух Садогурский

Для сравнения инструментов сборки были выбраны доминирующие Maven (защитник — Евгений Борисов), Gradle (естественно, Барух) и, в качестве экзотики, SBT (Антон Архипов).

В игровой форме иллюстрировались преимущества и недостатки каждого из инструментов в различных случаях — создание заготовки проекта, управление зависимостями и т.д. Наиболее интересной мне показалась поддержка BOM (Bill of materials), т.е. описание совместимых версий зависимостей для чего-либо (например, для Spring).

Живо, зрелищно. Заинтересовали крышки ноутбуков Жени, Баруха, Антона (см. правый снимок). Аскетичные крышки ноутбуков Жени и Антона, изобилующая наклейками крышка ноутбука Баруха.

Если не Unsafe, то кто: восход VarHandles
Алексей Шипилёв

Тяжёлое испытание выпало на долю Алексея (см. самую правую фотографию) — неработающий на протяжении 23 первых минут проектор. Железная выдержка, стойкость (шутка) и оптимизм позволили Лёше сгладить возникшие технические проблемы.

В докладе рассказывалось про легальную замену sun.misc.Unsafe, которая вскоре будет предложена и рекомендована — VarHandles. За оставшиеся 27 минут Алексей традиционно образно, выразительно и аргументированно рассказал про VarHandles. Удивление вызвало, что производительность VarHandles может обеспечена даже выше, чем у Unsafe.

Воспитай свою обезьяну
Максим Дорофеев

Первый (хронологически) нетехнический доклад конференции. Бизнес-тренер, консультант, автор проекта «Много сделал!» в занимательной форме попытался донести идеи о путях к личной эффективности.

По моим наблюдениям, многим даже понравилось. Интересно, осталась ли бы презентация столь выразительной при исключении определённых (почти и совсем не цензурных) слов из неё…

«Разбор Полётов» Live!

Вечеринка в клубе Stereo Hall с участием ведущих подкаста Разбор полётов. С записью получившегося можно ознакомиться здесь.

Внимающие слушатели (слево направо): Тагир Валеев, Алексей Шипилёв (с вручённой футболкой), Сергей Куксенко (смотрящий прямо в объектив), Никита Сальников-Тарновский. Алексей Шипилёв уже в футболке на сцене.

Человек и инстинкты: насколько мы запрограммированы?
Евгения Тимонова

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

Хороший выбор темы, доклада и докладчицы. Интересные вопросы от зрителей и интересные ответы на них.

JCache и распределенные кэши: беспредел!
Виктор Гамов

Доклад Виктора был посвящён распределённому кэшированию вообще и стандарту JCache (JSR 107) в частности.

Были показаны «иконы Шипилёва» (второй снимок), которым нужно молиться при проблемах с производительностью приложения, но при отсутствии Алексея рядом. Различие репликации и шардинга на примере овцы. Примеры видов архитектуры и кода для различных случаев. Достаточно живенько и образно.

Поддержка Java 8 в Excelsior JET
Никита Липский

Совершенно несправедливо проигнорированный многими доклад, весьма хардкорный и хорошо подходящий данной конференции. Посвящён техническим подробностям, тонкостям, проблемам при добавлении поддержки Java 8 в детище новосибирской компании Excelsior — AOT-компилятор Excelsior JET.

В достаточно представительной презентации рассказано, как обеспечивалась поддержка нововведений Java 8:

  • лямбда-выражений;
  • default-методов;
  • Stream API, Time API;
  • Type annotahons, Parameter names;
  • Stream API, Time API;
  • не входящих в стандарт Nashorn и JavaFX;
  • Compact profiles.

Полезным оказались пояснения Никиты про AOT-компиляцию от Oracle — в каком состоянии готовности сейчас находится и какие цели в данный момент преследуются.

Странности Stream API
Тагир Валеев

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

Тагир, будучи экспертом и гуру Stream API, наглядно показывал его особенности и странности. Представленные примеры иллюстрировали различные характеристики Stream API (sized, subsized, sorted, orderered и т. д.). Некоторые вещи выглядели, честно говоря, парадоксально.

Java 8 Puzzlers
Барух Садогурский, Евгений Борисов, Тагир Валеев

Команда паззлеров из Жени и Баруха, усиленная Тагиром, загадывала загадки о странностях Java 8. Доклад получился достойным продолжением представленных на предыдущих конференциях Groovy- и Spring Puzzlers.

«Яйца, яйца ещё!» (ключевая реплика Тагира первых паззлов)

Solving the full stack problem, live!
Барух Садогурский, Кирилл Толкачёв

Кирилл (live coding) и Барух (постановка задачи, комментарии возможных способов решения и получившегося) представили «CI as a Service за 50 минут». Кирилл мастерски кодировал, Барух остроумно комментировал, получилось неплохо.

Убери за собой!
Никита Сальников-Тарновский

Рассказывалось про различные возможные способы гарантированного освобождения ресурсов. Каждый из представленных вариантов иллюстрировался примерами кода. Выводом доклада (презентация, к сожалению, пока недоступна) является использование (в зависимости от случая) или лямбды, или класса Cleaner.

Seven lessons developers can learn from film
Tim Berglund

В докладе Тим проводит аналогии между кинопроизводством и IT-индустрией. Показывает на примере производства фильмов, какие уроки можно извлечь и какие похожие приёмы использовать. Доклад выразителен, оригинален, лаконичен.

Закрытие конференции

Ставшие уже традиционными при закрытии выход на сцену организаторов…

… затем волонтёров…

… и спикеров конференции.

Итоги

Почти идеально организованная конференция. Обед со сменой блюд официантами выше всяких похвал. Свидетелем технических проблем я был лишь на докладе Алексея Шипилёва (считаем, что форс-мажор).

Подбор сильных докладчиков и сильных докладов. Внимательные и доброжелательные организаторы. Хорошие умные зрители.

Артефакты конференции, в том числе шоколадка компании Excelsior (спасибо Никите Липскому за подарок).

А как провели эти два дня Вы, уважаемый участник конференции?

ссылка на оригинал статьи https://habrahabr.ru/post/282810/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *