Продолжение начатой в статье с подведением итогов JBreak и JPoint темы Java-конференции JPoint 2017, проводившейся 7-8 апреля 2017 года в Москве стараниями JUG.ru Group.
Ещё больше фотографий, подробностей о докладах и больше впечатлений.
Аудитория конференции JPoint с каждым следующим годом увеличивается. В связи с этим новым местом проведения конференции стал более вместительный Конгресс-центр Центра международной торговли.
Стойка регистрации участников конференции. Лестница на второй этаж. Фойе второго этажа, ведущее в четыре зала для чтения докладов.
Стенды (т.н. будки, booths) спонсоров. Горячо любимая всеми компания JetBrains в этом году ограничилась скромным баннером. Практически никого не оставили равнодушным задачи, предложенные GridGain, другим спонсором конференции. Также на фото ниже показаны стенды Deutsche Bank и компании Одноклассники.
В части холла второго этажа Руслан ARG89 Ахметзянов и Евгений phillennium Трифонов брали у спикеров интервью, уже получившие высокую оценку. Как можно видеть, интервьюируются Евгений Борисов, Саша Гольдштейн и Олег Чирухин.
Отличной находкой, зарекомендовавшей себя ещё в прошлом году, стали дискуссионные зоны. Возможность задать спикерам вопросы после доклада и проконсультироваться оказалась весьма востребованной.
Открытие конференции
Долгожданное открытие конференции Алексеем Фёдоровым и Андреем Дмитриевым. В первых рядах нетрудно узнать Тагира Валеева, Виктора Гамова и Баруха Садогурского.
Доклады первого дня
В первый день, так же как и во второй, предлагалось выбрать один из четырёх одновременно читаемых докладов. Выбор, безусловно, облегчался разнообразием тем докладов и возможностью посмотреть позднее любой из пропущенных докладов в записи.
Перформанс: Что В Имени Тебе Моём?
Алексей Шипилёв, Red Hat
Открывающим конференцию стал доклад, предыдущая версия которого ранее была представлена им на Joker 2016. С того времени доклад немного изменился и увеличился в объёме.
Алексей заслуженно признаётся одним из самых интересных, авторитетных и востребованных спикеров. Знаменитая Кривая им. Ш. из этого доклада была упомянута и в недавнем хабрапосте Владимира Долженко (ещё одного спикера конференции).
Стоило ли поменять местами доклады Алексея, поставив на место кейноута новый доклад (о нём рассказывается далее) — вопрос сложный. Данный доклад, возможно, действительно подходит для начала конференции лучше.
Java Puzzlers NG S02: Всё чудесатее и чудесатее
Тагир Валеев и Барух Садогурский
На конференции состоялась премьера на русском языке второго сезона Java Puzzlers NG. Замечательным явилось участие в представлении одного из главных авторов (или главного) — Тагира lany Валеева.
В начале этого года на английском языке Барух Садогурский и Виктор Гамов на нескольких международных конференциях уже выступали с этим докладом (лучшая запись — с Devoxx US 2017). При внимательном рассмотрении слайды немного отличаются, поэтому новое выступление — всё-таки эксклюзив. Ранее сдержал себя от просмотра записи с Devoxx (прервавшись на третьем паззле), чтобы посещение доклада имело смысл.
Барух и Тагир были традиционно в ударе. Барух фонтанировал остротами, заряжая всех хорошим настроением. Тагир успешно парировал, вызывая восторг у публики. Порадовало и наличие паззла про Jigsaw, основную составную часть Java 9.
Распределяй и властвуй — 2: Потоки данных наносят ответный удар
Виктор Гамов, Hazelcast
Виктора, предполагаю, многие из читающих знают, слушая уже более 5 лет подкаст Разбор полётов (сооснователем и соведущим которого он является). Кроме того, на последних Joker и JPoint он ещё и один из активных докладчиков.
Предыдущий (часть 1) доклад Распределяй и властвуй: введение в распределенные системы был в программе JPoint 2016 Student Day. По результатам прошлого доклада для опровержения обвинений в отзывах (про демонстрацию «банального примера подсчёта слов в файле») задачу решено было усложнить. Далее на примере Hazelcast типичного программного продукта класса in-memory data grid продемонстрировать преимущества потоковой обработки данных.
Виктор, как всегда, был убедителен, ярок, зажигателен и напорист. За что мы его уважаем и любим.
Масштабируемость в распределенных in-memory системах
Владимир Озеров, GridGain Systems
Владимир известен автору этих строк прежде всего замечательным ежемесячным Дайджестом интересных событий из мира Java, и вокруг нее, увы, прервавшимся на выпуске 9. Безусловно, пятничные выпуски новостей JUG.ru сильно помогают (большое спасибо phillennium). Но пусть больше дайджестов «хороших и разных», вдруг и Владимир возобновит свои выпуски.
Компания GridGain является конкурентом Hazelcast, поэтому вдвойне интересно (кроме уважения к личности спикера) было выслушать и альтернативную точку зрения.
Рассказ был посвящён особенностям, трудностям и способам их преодоления при масштабировании в распределённых системах, Apache Ignite в частности. Хороший, интересный и живой доклад.
Application Performance Monitoring: сравнение возможностей, проблемы и решения
Ярослав Киселев, КРОК
Данный доклад проходил параллельно с докладом такого мэтра, как Евгений Борисов. Несмотря на такую вынужденную конкуренцию, заполненность зала Ярослава была достойной, с чем его можно поздравить.
Повествование велось про подходы и инструменты мониторинга производительности приложений. Несколько обескуражили специально обрезанные сверху скриншоты у использованного приложения мониторинга.
Доклад вызвал интерес не только у меня. В частности, присутствовавший в зале Глеб Смирнов прокомментировал тему унификации форматов дампов.
Задача о коллективной ответственности
Алексей Савватеев, Университет Дмитрия Пожарского
Завершающим в первый день стал доклад Алексея Савватеева. Отличительной особенностью конференций JUG.ru стало расширение кругозора участников технических конференций подобными докладами. Наиболее часто они заканчивают один или оба дня конференции.
Можно сказать, что выступление оказалось полезным как докладчику, так и слушателям. Алексей признался, что это была самая большая аудитория, перед которой ему довелось выступать. Слушателям представилась возможность получить представление о практическом применении теории игр, увы, не всегда работающем в наших реалиях.
«Разбор Полётов» Live!
День закончился вечеринкой в офисе Сбербанк-Технологий.
Барух и Виктор, готовящиеся к онлайн-вещанию. Заглянувший на огонёк Андрей Когунь (участник программного комитета конференции, лидер jug.msk.ru). Почти полный состав подкаста Разбор полётов и Евгений Борисов.
Егор Бугаенко, разогревающийся перед своим докладом следующего дня. Тагир Валеев, вызванный помочь в дискуссии с Егором.
Доклады второго дня
Проклятие Spring Test
Кирилл Толкачёв и Евгений Борисов
Дуэт Кирилла с Евгением собрал полный зал желающих их послушать, несмотря на то, что это был самый ранний доклад в этот день.
В живой («живой» в прямом смысле — Кирилл занимался лайв-кодингом) и непринуждённой форме рассказывалось про тестирование приложения на основе Spring Boot. Подопытное приложение имитировало экспертное мнение других замечательных спикеров конференции — Егора Бугаенко и Баруха Садогурского.
Шутливое взаимное препирательство иллюстрировалось стремительным набором и изменением кода Кириллом. Продемонстрировано использование новых аннотаций и особенности манипуляции кэшом контекстов, порой весьма нетривиальные.
Shenandoah: сборщик мусора, который смог
Алексей Шипилёв, Red Hat
На второй доклад Алексея Шипилёва на этой конференции, как можно видеть, желающих попасть было столько, что некоторым пришлось сидеть на полу в проходах между рядами.
Доклад был про новый сборщик мусора, которому даже посвящён отдельный JEP 189: Shenandoah: An Ultra-Low-Pause-Time Garbage Collector. Само название Shenandoah (Шенандоа) имеет много значений, от индейского вождя до географических объектов в разных странах.
«Быстро, бодро, беспощадно» (цитата самого Алексея) аудитории было рассказано о теоретических основах сборки мусора, преимуществах и недостатках различных алгоритмов, при этом акцентировалось внимание на собственно Shenandoah. Алексей был прекрасен, о чём, надеюсь, ему ещё не раз напишут в отзывах на доклад.
Сделаем Hibernate снова быстрым
Николай Алименков, EPAM
Ещё один частый и заслуженный докладчик на конференциях, организуемых JUG.ru (и сам организатор конференций, наиболее известная из которых — JEEConf).
Николай рассказал, подтверждая сказанное кодом, об улучшениях производительности нежно любимого всеми широко применяемого Hibernate. Точно можно утверждать, что над многими (или хотя бы некоторыми) вещами большинство не задумывалось (или уж не придавало значения точно). По крайней мере, при возникновении необходимости тюнинга теперь можно будет вспомнить про презентацию и заглянуть в код примеров.
Техники векторизации кода в JVM
Владимир Иванов, Oracle
У современных процессоров в наборе команд присутствуют векторные инструкции (т.н. Single Instruction-Multiple Data, SIMD). Волшебным образом для прикладного программиста JVM вся мощь этих инструкций может быть задействована для параллельной обработки. Или не может быть задействована, как повезёт. О том, как и когда работает (или не работает) эта магия, и шла речь.
Доклад полностью оправдывает отметку «хардкорный», сделанную в программе конференции. И от этого становится не менее интересен, полностью соответствуя духу конференции.
Повесть о том, как один инженер HTTP/2 Client разгонял
Сергей Куксенко, Oracle
С неослабевающим вниманием, начиная с «бенефиса Куксенко с Шипилёвым» (по выражению Никиты Липского) на JavaOne Russia, слежу за появлением новых докладов Сергея.
Текущий доклад можно отнести к жанру увлекательного детективного расследования. Предмет наблюдения (подозреваемый?) — реализация HTTP/2 в HTTP-клиенте (JEP 110). Реализация войдёт уже в версию 9, но пока в качестве экспериментальной (т.н. incubator).
Шаг за шагом, улика за уликой переделка за переделкой приближает к раскрытию преступления приемлемой производительности. К концу повествования зритель облегчённо вздыхает — преступник найден HttpClient обогнал JettyClient!
Going Native: Foreign Functions on the JVM
Charles Nutter, Red Hat
Чарльз второй год приезжает на конференции JUG.ru, начав с Joker 2016 (недавнее интервью с ним, взятое перед его приездом в этом году).
Доклад кратко описывает некоторые возможные способы доступа к родным (native calls) библиотекам операционных систем из JVM, концентрируясь на детальном описании модулей Java Native Runtime (JNR). В конце упоминается будущее, которое нас ждёт (в Java 10 или позже) для этих целей — Project Panama.
Закрытие конференции
Закрывающая конференцию речь Алексея Фёдорова. Организаторы, спикеры, волонтёры на сцене.
Итоги
Организаторы проделали огромную работу по подготовке и проведению конференции, спикеры обеспечили множеством интересных докладов, новая площадка проведения оправдала себя. Конференция, совершенно точно, удалась.
Файлы всех презентаций доступны на сайте конференции. Оставившим отзывы участникам уже отправлена ссылка на видео всех докладов.
Автор: JUG.ru Group