JPoint 2016: Швидше, вище, продуктивніше

У минулому році московська Java-конференція JPoint пройшла з таким розмахом (тисяча чоловік, чотири зали, імениті спікери), що здавалося, далі рости нікуди. Але JPoint 2016 показав: є куди. Конференція виявилася настільки масштабніше, що навіть на обробку фотографій з неї пішло багато часу (тому наш текст запізнився настільки, що на Хабре раніше встиг з'явитися огляд очима учасника dbelob). Під катом — всі подробиці про те, як це було.





Перший день

Перша відмінність впадало в очі відразу при погляді на програму: на відміну від торішнього, новий JPoint був дводенним. При цьому він не втратив у кількості залів, а суттєві теми не виявилися розведені випадкової «водою» від нікому не відомих спікерів: загалом, ті ж яйця, та погустіше влий.



У фойє теж виявлялася пара сюрпризів: атракціон з використанням Oculus Rift і робот Федя. Роз'їжджаючи навколо прийшли, Федя заводив з ними розмову, і в результаті виходив негласний тест Тьюринга: співрозмовники намагалися зрозуміти з його реплік, вимовляє їх живої оператор або генерує алгоритм. Втім, здогадатися було нескладно, тому що машини поки толком не навчилися жартувати, а Федя робив це постійно, викликавши за день безліч посмішок. Але те, що самим товариським учасником конференції виявилася їздить по підлозі залізяка, вже саме по собі показує: майбутнє можна вважати такою, що настала.



Відкриває keynote теж відрізнявся від того, що можна побачити зазвичай. За нього відповідали провідні подкасту «Розбір польотів», і замість промови одного спікера тут, як в недавньому вірусному ролику про монолог Гамлета, на сцені виявився цілий ряд людей, знайомих багатьом у залі: Барух Садогурський, Віктор Гамов, Кирило Толкачов, Антон Архипов, Олексій Абашев та Антон Черноусов. Бойко пройшовшись по сучасним трендам Java-світу і згадавши пов'язані з цими трендами доповіді в програмі JPoint, вони наостанок включили відео з відомою реплікою Стіва Баллмера «Developers, developers, developers, developers». Логічний вибір: тільки Баллмер здатний зрівнятися з Барухом по гучності.

Потім всі розійшлися по різних треках. Поки головну сцену зайняв Володимир Фарбувальник (Luxoft) з доповіддю про логировании (омніумі, що дебютував у березні на новосибірському JBreak), в четвертому залі Дмитро Чуйко (Oracle) агітував вже зараз пробувати дев'яту версію Java (словами «все зламається, але полагодити нескладно») і написаний на Java компілятор Graal (словами «він не настільки експериментальний, щоб бути поганим»).



Змінив його Дмитро Жемеров (JetBrains) з доповіддю «Ой, котик побіг: Компіляція і продуктивність коду на Kotlin». Тільки пару місяців тому ця мова нарешті дійшов до версії 1.0, а тепер у доповіді мова зайшла і про підтримку можливостей Java 8, запланованої 1.1. Термінів виходу нової версії озвучено не було (з поважною причиною «про вихід 1.0 ми багато чого говорили, і в підсумку якось недобре вийшло»), зате заявлений у назві котик дійсно фігурував. Між хардкорными слайдами JMH-бенчмарків Дмитро показав відеоролик, де його кіт при прогулянці по меблях розгортається в три прийоми. Інший милою деталлю доповіді було використання числа «239» у прикладі коду: з цього можна було здогадатися, що спікер родом з Петербургу, де фізико-математичний ліцей з таким номером грає найважливішу роль у технічному співтоваристві.



Потім у тому ж залі виступав Руслан Черемин з Deutsche Bank з темою «Escape Analysis і Scalar Replacement», розповідаючи речі, які не вийде нагуглити — точніше, нагуглится запису в блозі самого Руслана Черемина, частково перетинається з доповіддю. Які саме фрагменти коду вийде скаляризовать, а які ні — річ неочевидна і докладно в інтернеті не розписана, тому Черемин самостійно розбирався з нею методом проб і помилок, як з «чорним ящиком», і на конференції ділився рідкісним досвідом. Як він сам сказав, «так було цікавіше, ніж запитувати у Шипилева» — а в підсумку той же Шипилев сидів на цій доповіді, можливо, дізнаючись щось нове для себе. Може в Java бути хоч щось таке, чого Шипилев не знає, правда?



Тим часом у головному залі Олега Анастасьева («Однокласники»), який розповів про розподілених системах, змінили одразу троє доповідачів, і почалося справжнє шоу. Порівняти, який інструмент для складання краще і чому, було вирішено у формі баттла: Євген Борисов, Барух Садогурський та Антон Архипов намагалися впоратися з низкою завдань у Maven, Gradle і SBT відповідно, вимірюючи результат глядацькими оплесками. Це супроводжувалося такою кількістю саркастичных реплік на адресу один одного, що реп-баттли могли б позаздрити. У результаті, поки Maven і Gradle жорстко конкурували, Архипов часто визнавав відсутність у SBT відповідних можливостей — але великодушні глядачі плескали йому голосніше, щоб він не засмучувався.



Після цього відбулася головна технічна проблема конференції: коли Олексій Шипилев (Oracle) вийшов розповісти про те, як нам жити після відходу sun.misc.Unsafe, екран в головному залі не хотів нічого показувати. У випадку з якимось іншим доповідачем це могло б означати п'ятнадцять хвилин напруженої мовчанки, але тільки не з Шипилевым: за час усунення проблеми він встиг вимовити багато пам'ятних фраз на кшталт «найскладніше з Unsafe — розповідати про нього так, щоб не викликати у людей бажання ним користуватися». Але починати доповідь без слайдів він не хотів, і, коли все запрацювало, стало ясно, чому: було б злочином залишити зал, наприклад, без такої картинки, що викликала дружний сміх.



А потім, після закриває перший день keynote від Максима Дорофєєва, слід було продовження банкету: вечірка в клубі StereoHall. Тамвипуск подкасту «Розбір польотів» був записаний прямо на очах у публіки, так що всі бажаючі могли задавати провідним питання («Скільки треба Scala-програмістів, щоб розвалити проект на Java?» — «Зазвичай вистачало одного»). А потім виступила група Animal Джаz, піснями на кшталт «Три смужки» повернула всім їх 2007-й: у відвідувачів JPoint з тими часами, напевно, пов'язано багато ностальгічних спогадів.



Другий день

Ранок після вечірки в клубі — не кращий момент для того, щоб вникати в нюанси оптимізації коду. Так що відкриває keynote другого дня був більш відкритим: Євгенія Тимонова, відома своїм біологічним видеоблогом «Все як у звірів», розповідала про те, наскільки людей можна вважати запрограмованими. На слова «здивоване вскидывание брів — інстинкт, властивий всім людям на планеті» з залу заперечували «а як же гравці в покер?», і вона уточнювала: «так, мозок може певною мірою пригнічувати цю реакцію».



«Сбербанк-Технології», нещодавно вже котрі розповідали про новій платформі «Ощадбанку» на JBreak, в цьому випадку взагалі зайняли зал на цілий день, щоб зробити це максимально детально. Але це не означає, що іншим темам довелося потіснитися: для «Сбертеха» був виділений ще один зал, крім задіяних раніше. Тобто на другий день JPoint дію відбувалося одночасно в п'яти залах — і це якщо не рахувати експертних зон в холі. Питання «куди вже масштабніше» знаходив зовсім пряму відповідь.



З таким масштабом приходять і складності — рік тому затримкою попереднього JPoint стала велика черга на обід. Але цього разу вирішено було розділити аудиторію навпіл і рознести обід з двох різних перерв, так що ситуація не повторилася. Загалом, доповіді по оптимізації високонавантажених систем не проходять даром: можна сказати, що занадто довго виконувався процес був успішно распараллелен. Коли одна половина прийшли була на обіді, інший в тривалій перерві було чим зайнятися: у фойє можна було хоч прискіпливо розпитувати вже залишили сцени спікерів, хоч обійти численні стенди компаній-учасниць, попутно зарядивши у «Однокласників» свої гаджети.



Слот «між двома обідами» можна було назвати «сибірським», тому що два зали одночасно виявилися зайняті новосибирцами: Тагіром Валеевым з доповіддю про Stream API і Микитою Липським, рассказывавшим про Excelsior JET. Не дивно, що обидва вони виступали в березні на JBreak (ще б, пропустити головне Java-захід у себе на батьківщині), і не дивно, що обидва говорили там про тих проектах: Валєєв розробляє бібліотеку StreamEx, розширює можливості Stream API, а Липський і зовсім зробив Excelsior JET справою свого життя. Однак це не означає, що новосибірський і московський доповіді у них повністю співпадали: якщо на JBreak Валєєв розглядав Stream API з практичної точки зору «як досягти певного результату», то на JPoint акценти були зміщені в бік теоретичного «як це влаштовано».



Після Тагіра на головній сцені виявився… той же Тагір, але вже в компанії Баруха Садогурского і Євгенія Борисова. З досвіду баттла напередодні можна було припустити, що така компанія означає пожвавлення в залі — так і сталося. Спільний виступ з темою «Java 8 Puzzlers» пропонував присутнім не просто послухати про каверзних нюанси Java, а особисто поламати голову над тим, до якого результату призведе той чи інший фрагмент коду, і лише потім дізнатися правильний результат. У результаті В залі панував азарт: всі активно тягнули руки за один з варіантів, а потім з цікавістю дізнавалися, наскільки помилялися.



Слідом у четвертому залі теж пройшло спільне виступ, в якому два Олександра з OracleБелокрылов і Мироненко — говорили про «інтернеті речей». Тут не було такого веселощів, але для далеких від теми людей вистачало цікавих неочевидних моментів: від того, що IoT можна використовувати для дистанційної діагностики пристроїв на зразок бігових доріжок (ми-то звикли, що всі називають юзкейс «включати лампочку»), до того, що для нього використовують протокол XMPP (ми-то звикли, що він для мессенджинга між живими людьми, а не пристроями).



Нарешті, після розповіді Шипилева про java.lang.String в JDK 9 настав час заключного кейноута — Тім Берглунд (DataStax) розповідав англійською мовою про те, чому розробники могли б повчитися у кіноіндустрії. Було очевидно, що в кінематографі він розбирається не гірше, ніж в розробці: приклади відрізнялися від перших звукових фільмів (які показували, як індустрія не поспішала хапатися за нову технологію) до недавньої «Одержимості» («спочатку там зробили короткометражку, а потім розвинули до повного метра — це ж lean filmmaking!»). Серед глядачів теж знайшлися цінителі знають, що «Виховуючи Арізону» зняли брати Коени (далеко не найвідоміша їх робота). Хоча в цьому виступі не було коду, вийшло хардкорное завершення хардкорного конференції: слухати англійською мовою про технічну сторону іншої індустрії, запам'ятовуючи, що можна намотати на вус.

Два дні, п'ять залів, вечірка в середині — JPoint явно виявився масштабнішою від попередньої. Чи може щось ще сильніше збільшити масштаб? Може: на наступний день після цього всього був ще й Student Day з доповідями для початківців. Але про це — в окремому наступному тексті.



Джерело: Хабрахабр

0 коментарів

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