Что ни говори, а в Новосибирске обстановка суровая: суровая погода, суровая архитектура, – теперь можно с уверенностью сказать, что в Нске проходит еще и суровая Java-конференция. Без простых докладов, без аджайлов и скрамов, – только хардкор, в лучших традициях Joker и JPoint – и имя этой конференции JBreak.
![](https://habrastorage.org/r/w1560/files/7c5/649/e20/7c5649e20cb54b87af5cc7af9e045fef.png)
В этом посте вы найдете:
Доклады JBreak 2016 мы выложили давно, однако я обнаружил, что мы не сделали отдельного хабропоста об этом. Пользуясь случаем, исправляю ситуацию: все представленные ниже доклады получили рейтинг участников 4.5+ (из пяти). Все видео даны в плейлисте, в котором вы найдете доклады JBreak 2016, не вошедшие в топ-10.
Алексей Шипилёв, Oracle
The Lord of the Strings: Two Scours
Лучший доклад Joker/JPoint, порвавший зал и в Новосибе, который помогает понять, насколько сильно отличается разработка JDK от обычных проектов. В этом докладе рассматриваются две фичи во все еще грядущем JDK 9, направленные на оптимизацию строк: Compact Strings, сжимающие строки с однобайтовыми символами, что улучшает футпринт и даже общую производительность; и Indify String Concat, использующий магию invokedynamic для конкатенации строк, позволяющий подкручивать реализацию конкатенации без рекомпиляции программ.
Тагир Валеев
Stream API: рекомендации лучших собаководов
Тагир начал свое победное шествие еще на Joker 2015, закрепив в Новосибирске звание одного из лучших Java-спикеров в России.
В докладе вместе с Тагиром вы познакомитесь со всеми возможностями Stream API, сможете понять для каких операций в стандартной библиотеке не хватает инструментов и как их заменить собственными элегантными решениями. А если к концу доклада вы поймете, велосипеды строить не хочется, в докладе вам предложат пару библиотек, которые облегчат жизнь.
Много хардкора, много юмора. Must see, как говорится:
Александр Маторин, СберТех
Неочевидные Дженерики<?>();
Доклад от разработчика Сбербанк-Технологии, получивший высокие оценки не только в Новосибирке, но в Москве, посвящен подводным камням и удивительным особенностям поведения дженериков в JDK, тому во что они компилируются (когда компилируются) и почему дженерики в Java такие странные.
В докладе много кода, загадок и крутейших примеров.
Michal Kordas
Groovier BDD with Spock
Доклад на английском языке, посвященный Behavior Driven Development и инструментам, позволяющим довести его до совершенства. Сочетание Groovy и Spock позволяет писать тесты и спецификации к вашему коду почти на чистом английском языке, так что даже ваш ПМ.который уже пять лет IDE не открывал, сможет их прочитать:
![](https://habrastorage.org/r/w1560/files/b6d/99f/8d9/b6d99f8d96d146829237bddb8061a531.png)
Выглядит свежо и впечатляюще, смотрите сами:
Алексей Шипилёв, Oracle
Сжимай меня полностью
В этом докладе Алексей прилюдно копается в кишках JVM и JDK, в поисках того, как сама платформа пытается сэкономить на памяти. Посмотрим на упаковку заголовков и полей объектов, сжатие указателей, учёт ссылок между поколениями в куче, трюки в сгенерированном коде, кэш автобоксинга и т.п.
Хотите поломать голову над хитрыми вопросами от Алексея? Тогда вам сюда:
Олег m0nstermind Анастасьев, Одноклассники
Распределенные системы в Одноклассниках
Доклад о том, как работает одна из наиболее высконагруженных систем в России, обрабатывающая до 500 000 (полумиллиона, да) запросов в секунду на 8000 серверов в трех датацентрах, вошедший в список лучших докладов на наших Java-конференциях в Москве, Петербурге и, как видите, Новосибирске.
Речь в докладе пойдет совсем не о том, как «собрать классы»: здесь вы найдете пример построения отказоустойчивой распределенной системы на Java, основанный на ошибках и отказах, приемах их тестирования и диагностики. Также речь пойдет и об авариях в распределенных системах и методах их предупреждения. Смотрите, если интересуетесь distributed-архитектурами:
Роман Артемьев, Сергей Андреенко
Особенности реализации Java на процессоре Эльбрус
Доклад о том, как два студента пилили свою Javaс блэкджеком и ... под экзотическую VLIW-архитектуру Эльбруса. Вместе с докладчиками вы пройдете весь путь от выбора JDK и компилятора до «ручной» сборки мусора и решения проблем с обработкой исключений.
В конце вы узнаете про подходы и нетривиальные решения, которые были применены при портировании JVM, про то, каким образом использование, казалось бы, незначительных особенностей архитектуры может дать куда большее ускорение, нежели различные классические оптимизации, а также почему все говорят, что Эльбрус медленный, и насколько это является правдой:
Два доклада Владимира Красильщика, Luxoft
Vert.x: руководство по эксплуатации
Технократическая пьеса от прагматичного Java-программиста, посвященная Vert.x – современному полиглотному toolkit для создания реактивных веб- и не только приложений.
Vert.x — это своеобразная методология и инструментарий к построению масштабируемого и высокопроизводительного сервер-сайда, которые однако не накладывают никаких ограничений на фреймворки и инструменты, с которыми Вам и так привычно работать.
Если Вам знакомы или близки по духу такие термины как Node.js, Actors Model, Erlang, Akka и микросервисы Вам однозначно будет интересно познакомиться с Vert.x поближе, чтобы писать очень быстрый код под JVM на любом языке, будь то Java, Javascript, Scala, Groovy или Ruby.
Что надо знать о логировании прагматичному Java‑программисту
Доклад основан на проекте, состоящем из 40 микросервисов, которые (не все, но некоторые) на протяжении 6 лет мэйнтейнятся командой из 20 разработчиков. В работе профессиональных Java‑программистов такой аспект как логирование не представляется чем-то важным, значимым, вот только когда приложение начинает жить своей жизнью, переходить из рук в руки программистов и тестеров, ломаться, чиниться, всячески падать и поддерживаться, а тем более когда оно начинает интегрироваться с другими подсистемами или апгрейдиться на новые версии библиотек, вот тут логирование и показывает своё истинное лицо и весело спрашивает: «Ну что, @#$%, не ждали?».
Из доклада вы узнаете, как сочетаются современные библиотеки логирования, как можно и нужно использовать логи, а также про возможные «нежданчики», которые могут случаться, например, в простейшей строке:
Никита pjBooms Липский, Excelsior
Поддержка Java 8 в Excelsior JET
Доклад Никиты Липского, JVM-разработчика, который не пишет на «плюсах» – АОТ Excelsior JET написан на Scala, а рантайм – на Java, в котором рассматривается реализация Excelsior JET новых возможностей, добавленных в Java 8.
В итоге, после доклада вы освежите в памяти, что появилось в Java 8, как это повлияло на спецификацию JVM, во что превращаются лямбда-выражения в Java байт-коде, как их можно статически оптимизировать, а также получите некоторое представление о внутреннем устройстве еще одной JVM.
Как видите, топ прошлой конференции почти полностью оккупировали хардкорщики с докладами о кишочках JVM. В 2017 году ставки не снизятся, у нас уже есть 7 докладчиков, четверо из которых и по сей день работают с внутренностями платформы – неплохое начало:
![](https://habrastorage.org/r/w1560/files/3b8/0a6/5e9/3b80a65e96844fef8727b69659a2fc9f.png)
Из новичков JBreak (каждый из которых на самом деле является проверенным ветераном Java-мира) у нас будут:
Впрочем, вы найдете в 2017 году и лучших спикеров прошлой конференции:
В общем, как видите, уже за три с половиной месяца до конференции состав спикеров такой, что можно бежать регистрироваться, однако помните – у нас будет как минимум три трека, – а это значит, что спикеров будет более 20. Следите за обновлениями на сайте конференции.
Во время церемонии закрытия JBreak 2016 Алексей 23derevo Фёдоров отметил: случившийся в этот день в Технопарке аншлаг означает, во-первых, что через год не обойтись без JBreak 2017, и, во-вторых, что для него придётся искать площадку вместительнее, – так и вышло JBreak 2017 состоится в Новосибирск Экспоцентр.
P.S.
Кстати, у нас были люди, которые жаловались на то, что о конференции не было ни слуху, ни духу. Можете посоветовать, куда писать, чтобы как больше Новосибирских Java-разработчиков узнали о JBreak?
![](https://habrastorage.org/files/7c5/649/e20/7c5649e20cb54b87af5cc7af9e045fef.png)
В этом посте вы найдете:
- Лучшие доклады JBreak 2016;
- Ссылку на вообще все доклады JBreak 2016;
- Анонс, кто будет выступать в этот раз;
- Объяснение, почему конференция съедет из Академгородка.
Лучшие доклады 2016
Доклады JBreak 2016 мы выложили давно, однако я обнаружил, что мы не сделали отдельного хабропоста об этом. Пользуясь случаем, исправляю ситуацию: все представленные ниже доклады получили рейтинг участников 4.5+ (из пяти). Все видео даны в плейлисте, в котором вы найдете доклады JBreak 2016, не вошедшие в топ-10.
Алексей Шипилёв, Oracle
The Lord of the Strings: Two Scours
Лучший доклад Joker/JPoint, порвавший зал и в Новосибе, который помогает понять, насколько сильно отличается разработка JDK от обычных проектов. В этом докладе рассматриваются две фичи во все еще грядущем JDK 9, направленные на оптимизацию строк: Compact Strings, сжимающие строки с однобайтовыми символами, что улучшает футпринт и даже общую производительность; и Indify String Concat, использующий магию invokedynamic для конкатенации строк, позволяющий подкручивать реализацию конкатенации без рекомпиляции программ.
Тагир Валеев
Stream API: рекомендации лучших собаководов
Тагир начал свое победное шествие еще на Joker 2015, закрепив в Новосибирске звание одного из лучших Java-спикеров в России.
В докладе вместе с Тагиром вы познакомитесь со всеми возможностями Stream API, сможете понять для каких операций в стандартной библиотеке не хватает инструментов и как их заменить собственными элегантными решениями. А если к концу доклада вы поймете, велосипеды строить не хочется, в докладе вам предложат пару библиотек, которые облегчат жизнь.
Много хардкора, много юмора. Must see, как говорится:
Александр Маторин, СберТех
Неочевидные Дженерики<?>();
Доклад от разработчика Сбербанк-Технологии, получивший высокие оценки не только в Новосибирке, но в Москве, посвящен подводным камням и удивительным особенностям поведения дженериков в JDK, тому во что они компилируются (когда компилируются) и почему дженерики в Java такие странные.
В докладе много кода, загадок и крутейших примеров.
Michal Kordas
Groovier BDD with Spock
Доклад на английском языке, посвященный Behavior Driven Development и инструментам, позволяющим довести его до совершенства. Сочетание Groovy и Spock позволяет писать тесты и спецификации к вашему коду почти на чистом английском языке, так что даже ваш ПМ.
![](https://habrastorage.org/files/b6d/99f/8d9/b6d99f8d96d146829237bddb8061a531.png)
Выглядит свежо и впечатляюще, смотрите сами:
Алексей Шипилёв, Oracle
Сжимай меня полностью
В этом докладе Алексей прилюдно копается в кишках JVM и JDK, в поисках того, как сама платформа пытается сэкономить на памяти. Посмотрим на упаковку заголовков и полей объектов, сжатие указателей, учёт ссылок между поколениями в куче, трюки в сгенерированном коде, кэш автобоксинга и т.п.
Хотите поломать голову над хитрыми вопросами от Алексея? Тогда вам сюда:
Олег m0nstermind Анастасьев, Одноклассники
Распределенные системы в Одноклассниках
Доклад о том, как работает одна из наиболее высконагруженных систем в России, обрабатывающая до 500 000 (полумиллиона, да) запросов в секунду на 8000 серверов в трех датацентрах, вошедший в список лучших докладов на наших Java-конференциях в Москве, Петербурге и, как видите, Новосибирске.
Речь в докладе пойдет совсем не о том, как «собрать классы»: здесь вы найдете пример построения отказоустойчивой распределенной системы на Java, основанный на ошибках и отказах, приемах их тестирования и диагностики. Также речь пойдет и об авариях в распределенных системах и методах их предупреждения. Смотрите, если интересуетесь distributed-архитектурами:
Роман Артемьев, Сергей Андреенко
Особенности реализации Java на процессоре Эльбрус
Доклад о том, как два студента пилили свою Java
В конце вы узнаете про подходы и нетривиальные решения, которые были применены при портировании JVM, про то, каким образом использование, казалось бы, незначительных особенностей архитектуры может дать куда большее ускорение, нежели различные классические оптимизации, а также почему все говорят, что Эльбрус медленный, и насколько это является правдой:
Два доклада Владимира Красильщика, Luxoft
Vert.x: руководство по эксплуатации
Технократическая пьеса от прагматичного Java-программиста, посвященная Vert.x – современному полиглотному toolkit для создания реактивных веб- и не только приложений.
Vert.x — это своеобразная методология и инструментарий к построению масштабируемого и высокопроизводительного сервер-сайда, которые однако не накладывают никаких ограничений на фреймворки и инструменты, с которыми Вам и так привычно работать.
Если Вам знакомы или близки по духу такие термины как Node.js, Actors Model, Erlang, Akka и микросервисы Вам однозначно будет интересно познакомиться с Vert.x поближе, чтобы писать очень быстрый код под JVM на любом языке, будь то Java, Javascript, Scala, Groovy или Ruby.
Что надо знать о логировании прагматичному Java‑программисту
Доклад основан на проекте, состоящем из 40 микросервисов, которые (не все, но некоторые) на протяжении 6 лет мэйнтейнятся командой из 20 разработчиков. В работе профессиональных Java‑программистов такой аспект как логирование не представляется чем-то важным, значимым, вот только когда приложение начинает жить своей жизнью, переходить из рук в руки программистов и тестеров, ломаться, чиниться, всячески падать и поддерживаться, а тем более когда оно начинает интегрироваться с другими подсистемами или апгрейдиться на новые версии библиотек, вот тут логирование и показывает своё истинное лицо и весело спрашивает: «Ну что, @#$%, не ждали?».
Из доклада вы узнаете, как сочетаются современные библиотеки логирования, как можно и нужно использовать логи, а также про возможные «нежданчики», которые могут случаться, например, в простейшей строке:
log.info("personalId="+id)
Никита pjBooms Липский, Excelsior
Поддержка Java 8 в Excelsior JET
Доклад Никиты Липского, JVM-разработчика, который не пишет на «плюсах» – АОТ Excelsior JET написан на Scala, а рантайм – на Java, в котором рассматривается реализация Excelsior JET новых возможностей, добавленных в Java 8.
В итоге, после доклада вы освежите в памяти, что появилось в Java 8, как это повлияло на спецификацию JVM, во что превращаются лямбда-выражения в Java байт-коде, как их можно статически оптимизировать, а также получите некоторое представление о внутреннем устройстве еще одной JVM.
Больше хардкора
Как видите, топ прошлой конференции почти полностью оккупировали хардкорщики с докладами о кишочках JVM. В 2017 году ставки не снизятся, у нас уже есть 7 докладчиков, четверо из которых и по сей день работают с внутренностями платформы – неплохое начало:
![](https://habrastorage.org/files/3b8/0a6/5e9/3b80a65e96844fef8727b69659a2fc9f.png)
Из новичков JBreak (каждый из которых на самом деле является проверенным ветераном Java-мира) у нас будут:
- Charles Nutter, Разработчик JVM в Red Hat, мейнтейнер проекта JRuby.
- Владимир @iwan0www Иванов, инженер команды HotSpot JVM.
- Виктор gAmUssA Гамов, Senior Solution Architect в Hazelcast, эксперт в области распределенных систем, сооснователь подкаста "Разбор полетов".
- Егор yegor256 Бугаенко, CTO в Teamed.io, основоположник движения trueOOP и идейный вдохновитель JVM-языка EO.
Впрочем, вы найдете в 2017 году и лучших спикеров прошлой конференции:
- Алексей Дживиэмович Шипилёв, JVM-разработчик в Red Hat, перфоманс-инженер с более чем 10-летним опытом,
богэксперт в области бенчмаркинга. - Тагир lany Валеев, Инженер в новосибирском офисе JetBrains, занимается статическим анализатором кода IntelliJ IDE(A), инспекциями и квик-фиксами. Контрибьютор OpenJDK, автор опенсорсной библиотеки StreamEx и анализатора байткода Java HuntBugs.
- Никита pjBooms Липский, Один из инициаторов и руководителей проекта Excelsior JET, сертифицированной реализации Java SE, разрабатываемой компанией Excelsior. Тоже, кстати, сибиряк:)
В общем, как видите, уже за три с половиной месяца до конференции состав спикеров такой, что можно бежать регистрироваться, однако помните – у нас будет как минимум три трека, – а это значит, что спикеров будет более 20. Следите за обновлениями на сайте конференции.
Во время церемонии закрытия JBreak 2016 Алексей 23derevo Фёдоров отметил: случившийся в этот день в Технопарке аншлаг означает, во-первых, что через год не обойтись без JBreak 2017, и, во-вторых, что для него придётся искать площадку вместительнее, – так и вышло JBreak 2017 состоится в Новосибирск Экспоцентр.
P.S.
Кстати, у нас были люди, которые жаловались на то, что о конференции не было ни слуху, ни духу. Можете посоветовать, куда писать, чтобы как больше Новосибирских Java-разработчиков узнали о JBreak?