В этом году Java-конференция получилась двусоставной: онлайн-часть уже прошла, а вот офлайн-день ещё предстоит 24 июня в Санкт-Петербурге (и ещё не поздно решить в нём поучаствовать).

Причём несколько видеозаписей уже доступны всем желающим. Поэтому хотим этим текстом поймать трёх зайцев сразу:

  • Порадовать Хабр этими Java-докладами без регистрации и смс.

  • Написать, что ещё было в онлайновой части.

  • И рассказать, что будет в офлайне.


Открытые видеозаписи

У обладателей билетов уже есть доступ ко всем видеозаписям, а для всего мира мы пока что открыли такие:

Непрерывное профилирование в облаке с помощью eBPF

В 2017 году Андрей Паньгин и Вадим Цесько (Одноклассники) прямо во время своего доклада на JPoint взяли и выложили на GitHub новый Java-профайлер async-profiler

Спустя пять лет у этого GitHub-репозитория уже 5000 звёзд — инструмент явно оказался востребован. И теперь в новом докладе Андрей с двумя коллегами по Одноклассникам зашёл дальше. Профайлер может дать много интересной информации об исполняемом приложении — но что, если в продакшне произошёл какой-то непонятный выброс и он уже закончился, а вы хотите разобраться в произошедшем?

Для такого нужно, чтобы профайлер работал постоянно и можно было в любой момент узнать, чем приложение было занято в прошлом. Андрей, Леонид Талалаев и Артём Дроздов вместе работали над этим и теперь рассказали о нюансах. Тут сразу напрашивается вопрос: «Не окажется ли так, что при непрерывной работе сам профайлер и станет главной проблемой производительности, из-за которой всё начнёт тормозить?» На это Андрей бодро ответил: «Если неправильно сделать, конечно, начнёт!». А как правильно? Вот и узнаем.

Как доклад выглядит для команды в пультовой
Как доклад выглядит для команды в пультовой

После доклада было ещё и длиннющее активное обсуждение со зрителями — но вот оно велось уже не под запись.


Почему мы решили переходить на R2DBC и чем это закончилось

R2DBC существует не первый год, но для многих это название по-прежнему выглядит чем-то вроде имени персонажа «Звёздных войн». Что это вообще такое и зачем оно нужно, когда у нас в Java-мире есть привычный JDBC? 

Главное, что нужно понимать о названии: R2 означает не «вторая бобина» (Reel 2), как в «Звёздных войнах», а «reactive relational». То есть это сочетание реактивного подхода и старых-добрых реляционных БД.

А об остальном и рассказал Антон Котов из Сбера. В программе этот доклад был обозначен значком «смузи»: для получения пользы от него не требуется предварительно знать что-то про R2DBC. Однако это не значит «только для джунов», он привлёк внимание и опытных специалистов из крупных проектов. Например, после доклада в видеосозвоне с вопросами можно было увидеть Олега Анастасьева из Одноклассников, и диалог шёл в ключе «нас интересуют масштабы от миллиона соединений».


Не клади все яйца в один билдпак

На JPoint 2019 Дмитрий Чуйко выступал с докладом под названием «Не клади все яйца в один контейнер». Теперь он вернулся с новым выступлением, название которого взято по аналогии. Однако доклад не строго про билдпаки.

Контейнеры — это, конечно, удобно. Но с ними легко может возникнуть, например, недоутилизация железа (и, соответственно, перерасходы денег). Нагляднее всего у Дмитрия это показывала аналогия из офлайнового мира — фотография с посылками, где все коробки стандартные и этим удобные, но из-за этого явно очень недоутилизированные:

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


Интервью с Дмитрием Чуйко

На JPoint бывают не только доклады, но и другие активности. И после того, как Дмитрий выступил с докладом про контейнеры, он ещё и поотвечал на вопросы на другую тему.

Компания BellSoft, где он работает, давно известна своей Liberica JDK. Но с недавних пор у неё появился ещё и продукт Axiom JDK. Что это такое? Чем отличается от «Либерики»? Кому это нужно? Тут разговор попроще докладов, слайдов с кодом не ждите. А вот неочевидные нюансы из мира сертификации есть.


Разбор доклада Ted Neward «Iconoclasm»

В далёком 2015-м Тед Ньюард выступил у нас на Joker с ярким докладом «Иконоборчество». Многим запомнилась, например, универсальная архитектурная диаграмма. Над каким бы проектом вы сейчас ни работали, если посмотрите на эту диаграмму, сможете увидеть в ней свой проект:

В отличие от многих других технических докладов, этот за семь лет не устарел: диаграмма по-прежнему всё такая же универсальная! Более того, его порой продолжают вспоминать — так что это своего рода классика наших конференций. Но кто-то его пропустил, кто-то пришёл в разработку уже после 2015-го, а кто-то не готов слушать на английском языке. 

Поэтому мы добавили докладу русскоязычные субтитры и сделали такую активность: Владимир Ситников и Алексей Стукалов в прямом эфире смотрели запись этого доклада, а как только хотелось что-то обсудить, ставили на паузу и обсуждали. В итоге часовой доклад превратился в трёхчасовой (!) разбор доклада.


Мини-доклад «Composable systems, или Как быстро писать эффективные базы данных на Java»

У Алексея Гончарука из Querify Labs было 15-минутное партнёрское выступление — казалось бы, что можно успеть рассказать за 15 минут? И сам он сказал, что отчасти это «приглашение к дискуссии», потому что интересно в видеосозвоне после него обсудить ситуации разных участников.

Однако, когда о чём-то рассказывают люди с нестандартным опытом, это всегда интересно. А основатели Querify Labs контрибьютили в Apache Ignite и Apache Calcite, так что про базы данных они знают больше многих, и могут поделиться экспертным взглядом. Какие недостатки у Java как языка для БД? А почему, несмотря на них, сейчас ситуация для Java стала благоприятнее? Как порог входа в БД изменился по сравнению с тем, что было лет пять назад? Об этом можно успеть понять главное и за 15 минут.


Что ещё было в онлайне 

А чего в открытых видеозаписях не увидеть?

Ну, понятно, докладов было куда больше, чем попало в число открытых. Просто в качестве одного примера, вызвавшего положительные отклики: Антон Козлов в 2020-м уже рассказывал про Coordinated Restore at Checkpoint, и видеозапись того доклада давно доступна всем желающим, а в этот раз он подготовил материал о текущем состоянии проекта с новыми примерами использования. 

Или вот пример очень нетипичной темы: Дмитрий Завалишин работает над операционной системой «Фантом», принципиально отличающейся от привычных нам, и поделился нюансами сборки мусора в таких условиях. Возможно, услышанное в этом докладе никак не применить на следующий день в своём рабочем проекте, но часто ли можно послушать подробный рассказ про настолько нетривиальные кейсы?

Помимо обычных докладов, были ещё и воркшопы, где вместо теоретического монолога показывали что-то на практике: Алексей Рагозин учил пользоваться различными профайлерами (Java Flight Recorder, Mission Control, Visual VM), а Иван Кочергин и Игорь Тресоумов показывали создание онлайн-маркетплейса на платформе Micronaut.

А помимо всех этих выступлений, были и активности, которые вообще не записывались — и там зачастую тоже происходило много интересного. Например, за каждым докладом следовал видеосозвон, где участники могли не под запись порасспрашивать спикера, и порой эти созвоны превращались в долгие увлекательные дискуссии. После докладов Никиты Летова про @Transactional и Андрея Сальникова про индексы в PostgreSQL обсуждения длились буквально часами. Андрей в какой-то момент сказал «мне пора, в моём городе уже час ночи» — а потом увлечённо поотвечал ещё немного :)

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

Ну и милая деталь напоследок. Этот JPoint был уже 10-м по счёту. И поскольку тут юбилей, начался он ностальгически. На открытии вспомнили песню про Java от «Научно-технического рэпа», записанную ещё к JPoint 2014:


Что будет в офлайне

Тут можно было бы описать все доклады из программы: Иван Углянский расскажет про Project Loom, Иван Пономарёв сравнит моки и Testcontainers… Это всё так, там будут интересные доклады. Но программу можно и на сайте увидеть. 

А здесь скажем о другом. JPoint впервые с 2019-го возвращается в офлайн. Поэтому мы хотим, чтобы все соскучившиеся по живому общению Java-разработчики получили его сполна, и собираемся предоставить всё для этого:

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

  • Круглые столы, где вместо докладов-монологов — живые обсуждения. 

  • Достаточно времени для нетворкинга, чтобы пообщаться с другими участниками.

В общем, офлайновый день JPoint — это не просто о том, чтобы сидеть и слушать доклады. Это о том, чтобы Java-сообществу снова было где встретиться и посмотреть друг другу в глаза.

Напомним, пройдёт он в Санкт-Петербурге уже в эту пятницу, 24 июня

А билеты устроены так: они дают и право участия в офлайн-дне, и доступ ко всем видеозаписям прошедшего онлайна (в открытый доступ эти видеозаписи спустя несколько месяцев).  

Если заинтересовало, вся информация и билеты — на сайте

Будем сами рады наконец увидеть всех не на мониторе!

Комментарии (2)


  1. Levsha128
    21.06.2022 22:45
    -4

    Но зачем? Ведь Oracle уже официально вышли из рассии.


    1. phillennium Автор
      21.06.2022 22:50
      +5

      Ну, насколько я лично понимаю ситуацию,

      — OpenJDK — опенсорсный продукт, который по-прежнему доступен всему миру, в том числе и России,
      — а для тех, кому нужно решение с поддержкой, сертификациями и тому подобным, может быть актуально интервью Дмитрия Чуйко, на которое как раз есть ссылка в этом посте

      Так что мой не-экспертный прогноз в том, что писать на Java в России не перестанут