Java-конференція Joker 2016: більше, сильніше, цікавіше

Конференція Joker 2016, що проходила 14-15 жовтня 2016 року в Санкт-Петербурзі, стала, можливо, найбільшою російськомовною Java-конференцією за всю історію. 2 дні, 52 доповіді, 6 паралельних треків, більше 40 спікерів, понад 1000 учасників.



Період, що безпосередньо передував конференції, був досить насиченим і багатим на події:
Справжніми перлинами з перерахованого вище, на мій погляд, стали інтерв'ю з Барухом Садогурским і Володимиром Красильщиком (обидва — спікери Joker 2016).

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

Була освоєна нова площадка для проведення конференції — пітерський Експофорум. Прекрасні декорації (раз, два і спікери організаторами, прикрашають своєю присутністю конференцію.

Відкриття конференції

Організатори конференції (Олексій Федоров, Андрій Дмитрієв) та її доповідачі (Олег Анастасьєв, Андрій Паньгин, Дмитро Бугайченко) на відкритті.



Доповіді першого дня

Доповіді першого дня були так само хороші, як і доповіді дня другого. Вибір полегшувала думка, що всі доповіді записуються і пізніше можна буде подивитися і все інше.

Що В Імені Тобі Моєму?
Олексій Шипилев, Red Hat



Першою доповіддю, задає загальний настрій конференції (т. зв. кейноутом), почав Олексій Шипилев. «Розігріваються» будь доповідь Олексія просто бути не може за визначенням. Навіть злегка полегшена для кейноута тема рясніла технічними подробицями, формулами і, природно, традиційними афоризмами («крива їм. Ш», «не бійтеся дивитися на ваше додаток», «трошки пограємо членами»).

У невимушеній формі давалися покрокові рекомендації для досягнення «достатньою і задовольняє» продуктивності. У другий день Олексій продовжив більш складним доповіддю «Близькі Контакти JMM-ступеня».

Незадовго до конференції Олексій перейшов з Oracle Red Hat, тому червоний колір курточки (з написом «Oracle» на грудях) тут був цілком доречний.

Groovy Puzzlers S03 — Грувить так Грувить!
Барух Садогурський і Віктор Гамов



Барух з Віктором запально представили третій сезон Groovy Puzzlers (слідом за першим сезоном на Joker 2015 і другим сезоном на JPoint 2015).

Правила все ті ж — намагатися здогадатися (не шукаючи підказки), активно голосувати, правильно пояснити свою відповідь. До середини доповіді аудиторію вдалося розворушити. Думаю, що вийшло в підсумку однаково сподобався і глядачам, і доповідачам.

Native код, Off-heap дані і Java
Володимир Іванов, Oracle



З інтересом стежу за долею проекту Panama, результати якого стануть доступні не раніше Java 10. Володимир є одним з найбільш авторитетних експертів у даній області. Було проведено розгорнуте порівняння Java Native Interface (JNI) і Java Native Runtime (JNR), показано переваги та недоліки кожного з рішень.

В якійсь мірі розказане (крім Panama було ще і про VarHandles) доповнила доповідь Олексія Шипилева про VarHandles c JPoint 2016.

Примхи Stream API
Тагір Валєєв, JetBrains



Ще один постійний доповідач Java-конференцій (і за сумісництвом зірка Java-хаба на Хабре lany), який змінив роботу з минулої конференції (квітневої JPoint). З недавнього часу Тагір працює в компанії JetBrains, що не може не радувати всіх шанувальників продуктів даної компанії.

Доповідь продовжив тему про Stream API, розпочату в доповідях на JBreak 2016 і JPoint 2016. Саме в цій доповіді йшлося про химерне, дивне, нелогічне, на перший погляд, поведінку в деяких випадках при роботі з стримами. На другій фотографії Тагір демонструє генератор випадкових чисел у вигляді кубиків, як допоміжний реквізит до «Примхи №3». Думаю, що глядачі не пошкодували про вибір докдада, зал був повний.

Верхи на реактивних стримах
Віктор Гамов, Hazelcast



Тему використання стримов підхопив у наступному доповіді Віктор Гамов, співзасновник і співведучий подкасту Розбір польотів, одночасно є і працівником компанії Hazelcast.

Традиційне (на одному комп'ютері) застосування стримов було замінено розподіленим з використанням Hazelcast Hazelcast Jet. наведеному коді маніпуляції з даними проводилися з англійським текстом «Війни і миру», при бажанні приклади можна подивитися і запустити.

б'ється серцем Threads — live coding music
Sam Aaron, University of Cambridge



Вельми цікавий і пізнавальний доповідь Сема Аарона завершував перший день конференції. Семом була продемонстрована його програма Sonic Pi (дуже красивий і зручний сайт програми), призначена для музичного лайвкодинга.

Крім розважального використання (діджеєм на дискотеці) Сем позиціонує її як допоміжний інструмент для вивчення програмування (на сайті навіть є план занять). Доступні дистрибутиви для Raspberry Pi, macOS, Windows, Linux. Вихідний код — на GitHub.

Доповідь носив, швидше, академічний характер, по-справжньому Сем відірвався на вечірці першого дня конференції (див. відео). Ще більше відео — на офіційному каналі YouTube Сема.

Гості «Розбору польотів» у перший день

Нововведенням конференції стала майданчик подкасту Розбір польотів. Резиденти подкасту брали інтерв'ю в організаторів, спікерів та учасників.

Олексій Федоров в оточенні провідних подкасту (Антон Архипов, Віктор Гамов, Олексій Абашев, Барух Садогурський). Інтерв'ю з представниками компанії Crossover.



Розмова з Іваном Криловим, Олексієм Шипилевым, Андрієм Дмитрієвим. Інтерв'ю з Глібом Смирновим.



Закриття першого дня

Вручення подарунків учасникам програмного комітету — Андрію Когуню (jug.msk.ru, перший знімок), Володимиру Ситникову і Володимиру Красильнику (другий знімок). Отримує подарунок Тагір Валєєв (третій знімок).



Доповіді другого дня

Перші три доповіді близької тематики просто ідеально складалися в послідовність для перегляду: «From Java to Assembly: Down the Rabbit Hole», «Життєвий цикл JIT коду» і «Байткод для допитливих».

From Java to Assembly: Down the Rabbit Hole
Charles Nutter, Red Hat



Чарльз є одним з лідерів проекту JRuby. Назва доповіді збігається з найменуванням першої глави alice's Adventures in Wonderland Аліси в країні чудес). В презентації були використані класичні ілюстрації Джона Тенніела з перших видань обох книг Керролла про Алісу.

Аналогія між Wonderland JVM цілком вдала, стиль викладу і побудова доповіді також вельми оригінальні. У цікавій формі був показаний шлях від вихідного коду Java до нативного коду — компіляція у байткод, інтерпретація байткода, JIT-компіляції в нативний код. Крім того, були розкриті особливості реалізації final-полів, synchronized, volatile, оператора switch для рядків, лямбда-виразів.

Життєвий цикл JIT коду
Іван Крилов, Azul Systems



Логічним продовженням попереднього доповіді стала доповідь Івана Крилова про Just-in-time (JIT)-компіляцію. Крім трансформації коду, профілів і випадків деоптимизации були згадані 5 рівнів компіляції (з можливими переходами між ними) і 4 наявні API для тюнінгу компіляції.

Цікавою була розповідь про ReadyNow — технологію, специфічну для віртуальної машини Azul Zing. Згадав і про ще більш зрослий інтерес з боку компанії Oracle до статичної компіляції Ahead-in-time (AOT), див. JEP 295.

Байткод для допитливих
Антон Архипов, ZeroTurnaround



Антон Архипов відмінно завершив серію з трьох перших доповідей другого дня, розповівши про Java-байткод: набір і типи інструкцій, особливості роботи зі стеком і таблицею локальних змінних, огляд наявних інструментів.

З інструментів були згадані Java Bytecode Editor, плагін ASM Bytecode Outline IntelliJ IDEA і ObjectWeb ASM. Демонструвався приклад доступний на GitHub.

Java 9 Modularity in Action
Sander Mak, Залишившись Technologies



Животрепетна тема, з якої всім неминуче доведеться зіткнутися в недалекому часу (або не скоро, якщо вихід Java 9 в черговий раз буде відкладено) — модульність (проект Jigsaw). Сандер є співавтором книги Java 9 Modularity видавництва o'reilly, тому цілком обізнана в цьому питанні.

Крім загальних питань (цілі модульності, історія модульності в рамках екосистеми Java) показано і поточний стан (Java 9 ще не вийшла) з прикладами коду.

Еволюційний дизайн
Толкачов Кирило та Олександр Тарасов, Альфа-Лабораторія



Блискучий дует Кирила Толкачова та Олександра Тарасова на цей раз зацікавила тема еволюційного дизайну. В ході стрімкого і живого оповідання (189 слайдів за годину доповіді) продемонстрована еволюція архітектури і стека технологій під впливом мінливих вимог, накопичуваного досвіду і з'являються нових інструментів і методологій.

Особливо зацікавила грандіозна «таблиця технологій», яка була сформована в процесі доповіді.

Pragmatic Performance
Gil Tene, Azul Systems



Гіл — співзасновник і CTO компанії Azul Systems. Його доповідь перегукувався з першою доповіддю Олексія Шипилева, також закликав до більш прагматичного підходу у ставленні до продуктивності додатків.

Були наведені різні метрики і підходи в оцінці продуктивності. Надано рекомендації для розуміння справжніх потреб при проектуванні і реалізації продуктів.

Як завершальний доповідь конференції, неперегруженный технічними деталями, був більш ніж доречний і легкий для сприйняття.

Гості «Розбору польотів» у другий день

Спілкування з Олександром Тарасовим. Тагір Валєєв і Андрій Когунь.



Сергій Єгоров та Дмитро Чуйко. Антон Архипов і Олексій Федоров, підводять підсумки.



Закриття конференції

Загальна фотографія всіх, причетних до підготовки конференції, — організаторів, волонтерів та спікерів.



Андрій Дмитрієв, Олексій Федоров, Гіл Тені. Катерина Курилова в оточенні волонтерів.



Підсумки

Корисність будь-конференції полягає в
  • цінності інформації, що міститься в доповідях;
  • зручності сприйняття цієї самої інформації.
Для досягнення цих цілей на даній конференції
  • значно збільшено кількість доповідей (доповідей майже в шість разів більше, ніж в цьому огляді);
  • стало більше спікерів, як російськомовних, так і англомовних;
  • організовані дискусійні зони, в яких за рахунок збільшених перерв між доповідями можна продовжити спілкування зі спікерами;
  • експериментально з'явилася і добре себе зарекомендувала майданчик подкасту «Розбір польотів»;
  • вперше дана можливість безкоштовного перегляду основного треку конференції.
На жаль, в перший день були деякі проблеми з трансляцією, успішно вирішені до початку другого дня (самокритичний твіт про це). Незначні незручності викликав вимушений перенесення на більш пізній час у перший день доповіді Антона Архипова. Всі інші технічні й адміністративні питання вирішувалися по мірі їх виникнення і навряд чи були помічені учасниками.

Файли презентацій доступні на сайті коференції, посилання на відео всіх доповідей вже надіслана учасникам, що заповнили відгук.



Які враження від конференції залишилися у Вас?
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.