JPoint 2018: разбор полётов
6–7 апреля 2018 года в Москве проводилась Java-конференция JPoint 2018. Далее представлен «разбор полётов» конференции, прошедшей при активной поддержке и участии популярного подкаста Разбор полётов: информация и впечатления о докладах, организации мероприятия, проиллюстрированные большим количеством фотографий.
Конференция прошла уже в шестой раз, пятый раз из них в Москве и второй раз — в Центре международной торговли. Большие холлы и залы, удобно трансформирующиеся для изменения размера при необходимости, идеально подходят для принятия большого числа участников.
Существенно возросло количество компаний-спонсоров, соответственно, и их стендов в холле.
У стенда компании КРОК мог встретиться Андрей Когунь (лидер jug.msk.ru, член программного комитета и спикер конференции) и Антон Архипов (ведущий Разбора полётов, организатор DevClub и GeekOUT, экс-ZeroTurnaround и JetBrains, тоже член программного комитета) на стенде JetBrains. Там же имелась возможность пообщаться с Дмитрием Жемеровым и Тагиром Валеевым.
Альфа-Банк представляли на мероприятии Максим Гореликов и Кирилл Толкачёв (по совместительству — ведущий Разбора полётов). У стенда Одноклассников были Олег Анастасьев и Александр Тарасов. На стендах компаний проходили разнообразные викторины и розыгрыши призов, иллюстрация этого — соревнования от Альфа-Банка.
Активно использовались дискуссионные зоны — прекрасная возможность после доклада задать дополнительные вопросы докладчику и пообщаться с ним.
Евгений phillennium Трифонов и Олег olegchir Чирухин брали интервью у организаторов конференции (например, Владимира Ситникова и Андрея Дмитриева) и у представителей компаний-спонсоров (например, Альфа-Банка и Align Technology).
Открытие конференции
Алексей Фёдоров и Андрей Дмитриев открывают конференцию, предоставляя дополнительную информацию для участников и давая слово спонсорам.
Доклады первого дня
Spring Framework 5.0 on JDK 8 & 9
Juergen Hoeller, Pivotal
Юрген — легендарная личность, сооснователь проекта Spring Framework и его лидер в настоящий момент. Его выступление на конференции было разбито на два доклада. Первый доклад открывал конференцию, второй был в конце второго дня.
В первом докладе было рассказано об особенностях поддержки версией 5 фреймворка версий JDK 8 и 9. Проиллюстрировал общие проблемы совместимости, с которыми пришлось столкнуться. Дал рекомендации по адаптации собственных приложений до Java 9 с учётом специфики Spring.
При демонстрации вклада в код Spring на одном из слайдов был упомянут igor_suhorukov.
Боремся с «Russian Hackers» с помощью Kafka Streams и Firehose API
Виктор Гамов и Барух Садогурский
Совместный искромётный доклад звёзд конференции (и Разбора полётов) Виктора и Баруха. В качестве испытуемых были взяты продукты Bintray (реализующий Firehose API) и Apache Kafka. С помощью последней обрабатывались потоковые данные и искались определённые события, могущие изобличить хакеров. Код показываемого проекта доступен на GitHub. Барух и Виктор были, как всегда, прекрасны.
Как сделать встроенный в JVM профайлер, который не боится AOT-компиляции?
Иван Углянский, Excelsior LLC
На конференциях, проводимых JUG.ru Group, появился ещё один (кроме Никиты Липского) представитель компании Excelsior LLC — Иван Углянский. Как и Никита, Иван активно пишет в Excelsior JET Team Blog, разрабатывая сам продукт Excelsior JET.
Доклад был про особенности написания JVM-профилировщика, способного выполнять свои функции при AOT (Ahead-of-Time)-компиляции. Детально были разобраны имеющиеся варианты, их применимость на различных платформах (Windows, Linux, macOS). В докладе был достигнут разумный баланс между хардкорностью темы и понятностью её слушателям конференции.
Spring Boot и Xtend: сеанс чёрной магии c разоблачением
Андрей Когунь, КРОК
Привычная роль Андрея, к которой, вероятно, уже все привыкли — лидер московской группы Java-разработчиков jug.msk.ru, встречи которой он проводит с декабря 2012 года при поддержке компании КРОК. На конференциях JUG.ru Group Андрей входит в программный комитет. На этой конференции он выступил также и в качестве одного из спикеров.
В докладе горизонты слушателей, привыкших к новым языкам типа Kotlin, были расширены демонстрацией приложения на основе Spring Boot с использованием Xtend. Xtend — статически типизированный язык на основе Java с менее многословным синтаксисом. К сожалению, работающий плагин сейчас есть только для Eclipse, но есть надежда на исправление существующего или появление нового плагина для IntelliJ IDEA.
Refactoring your code to Java 9 modules
Rabea Gransberger, MEKOS
Доклад носит прикладной характер — рефакторинг существующего монолитного приложения на модульную структуру, поддержка которой появилась в Java 9. В значительной степени перекликается с докладом следующего дня «Designing for modularity with Java modules». Содержит перечисление конкретных шагов по разбиению на модули с указанием возможных подводных камней.
Большие данные в современной биологии
Михаил Гельфанд, НИУ ВШЭ
Уже стало традицией для завершающего доклада одного из дней приглашать интересного спикера из совершенно другой предметной области. На этот раз таким стал Михаил Гельфанд — доктор биологических наук и кандидат физико-математических наук.
Совершенно взрывающий мозг доклад (но от этого не становящийся менее интересным) у никоим образом неспециалистов в предметной области.
«Что? Где? Когда?» с Михаилом Скипским
Турнир по спортивному «Что? Где? Когда?» провёл Михаил Скипский (игрок команды Балаша Касумова телевизионной игры «Что? Где? Когда?»). Желающим предлагалось предварительно записаться, объединившись в команды по 6 человек.
Всего было задано 24 вопроса — 2 порции по 12. На среднем снимке можно видеть команду Ивана Углянского. Команда, выигравшая турнир, представлена на следующем фото.
Параллельно с игрой «Что? Где? Когда?» проходили BoF-сессии на три темы: Spring, VM/Runtime, Kotlin.
Разбор Полётов Live: JPoint 2018
Завершающим аккордом первого дня стала запись выпуска подкаста Разбор полётов. Присутствовали как ведущие — Виктор Гамов, Алексей Абашев, Антон Архипов, Барух Садогурский, Кирилл Толкачёв…
… так и гости (некоторые ставшие уже постоянными) — Антон Черноусов (aka Голодный), Андрей Когунь, Иван Крылов и Олег Чирухин.
В непринуждённой дружеской обстановке был обсуждён первый день конференции.
Доклады второго дня
Один раз в год сады цветут: разбор семантики «exactly-once» Apache Kafka
Виктор Гамов, Confluent
Виктор — сооснователь и лидер Разбора полётов, ныне работающий в компании Confluent, разрабатывающей платформу на основе Apache Kafka.
В докладе (первый снимок — перед началом доклада с Екатериной Куриловой) было акцентировано внимание на семантике «exactly once» применительно к Kafka. Были упомянуты и Kafka Connect с Kafka Streams. Очень динамичный и насыщенный информацией доклад (более двухсот слайдов в презентации).
Корутины в Kotlin
Роман Елизаров, JetBrains
Совершенно замечательный доклад от Романа Елизарова о корутинах: исторический экскурс в историю асинхронного программирования, эволюция подходов, особенности реализации в языке Kotlin (к чему Роман имеет самое непосредственное отношение). Впечатления от доклада сходны с мнением Ивана Осипова, другого спикера конференции (хотя и эта реакция на корутины интересна).
Designing for modularity with Java modules
Sander Mak, Luminis Technologies
Сандер уже был спикером на конференциях JUG.ru Group — он делал доклад на подобную тему на Joker 2016. Очень хорошее знакомство с предметом доклада, так как является соавтором книги Java 9 Modularity (очень милая реакция его семьи на книгу). Детальное изложение с плавным переходом от теоретических основ модульности к практическим советам.
Graal, Value Types, Loom и прочие ништяки: что это и зачем оно нужно простому смертному
Олег Чирухин, JUG.ru Group
Собственное видение на развитие Java в ближайшее время изложил Олег olegchir Чирухин: Value Types, Amber, Loom, Graal и Truffle, прочие технологии и проекты. Экспрессивный доклад, расширяющий горизонты восприятия и заинтересовывающий почитать и поразбираться в упомянутых в докладе вещах.
Spring Framework 5: feature highlights and hidden gems
Juergen Hoeller, Pivotal
Данный доклад Юргена являлся продолжением доклада первого дня. В нём были показаны менее известные особенности и возможности Spring Framework, имеющиеся в версии 5: для написания кода в функциональном и реактивном стиле, поддержка языка программирования Kotlin и т.д. Был анонсирован выпуск версии 5.1, ожидающейся в 3 квартале 2018 года.
Приключения Сеньора Холмса и Джуниора Ватсона в мире разработки ПО
Барух Садогурский и Евгений Борисов
Несравненный бриллиант — совместный доклад Баруха и Евгения, завершивший конференцию. Несколько детективных историй, обыгрывающих особенности Spring Framework.
Роль главного в расследовании последовательно переходила от Евгения к Баруху и обратно.
В четвёртой истории дополнительно приняли участие Алексей Абашев («разработчик-злоумышленник») и Виктор Гамов («консультант из Pivotal»).
К большому сожалению всех присутствующих, пятая история не была представлена в связи с недостатком времени.
Закрытие конференции
Прощальные слова при закрытии конферении и традиционные фото организаторов, спикеров и волонтёров.
Послесловие
Больше докладов, спикеров и компаний-спонсоров, новые форматы проведения (BoF-сессии) и улучшение старых (дискуссионные зоны), внимание к мелочам (резервный дополнительный зал для просмотра популярного доклада, быстрый Wi-Fi) — всё это JPoint.
Ссылка на видео докладов конференции отправлена всем участникам, оставившим отзывы. С презентациями можно ознакомиться, посетив сайт конференции.