[НСК, 4 марта] JBreak

Пришло время анонсировать новосибирскую конференцию JBreak 2018! Самую актуальную версию программы всегда можно будет увидеть на официальном сайте, а здесь представим доклады, уже известные на момент анонса.

Программа

Simon Ritter (Azul Systems) — JDK 9, Mission Accomplished: What next for Java?

Саймон — заместитель генерального директора Azul, занимающийся бизнесом в IT, начиная с 1984 года (когда многие из нас и вас ещё и не родились-то). В 1996 году Саймон начал работать над JDK 1.0 в Sun Microsystems, потом стал евангелистом в Oracle, а сейчас работает в Azul, представляет Azul в JCP и продолжает помогать людям разбираться с Java и другими JVM-технологиями. Он является Java Champion, дважды Java Rockstar по версии JavaOne и так далее и тому подобное.

Его доклад начнется с краткого обзора того, что было включено в Java 9 и как это поможет Java-разработчикам (а возможно — бросит им серьезный вызов). JDK 9, включая Java Platform Module System (JPMS), наконец-то вышел, и с этим что-то нужно делать.

Oracle сделал несколько важных заявлений о будущем JDK и Java EE. Мы узнаем о предполагаемых изменениях в частоте релизов JDK, схеме нумерации и выпуске бинарников под GPL. Также мы рассмотрим модель долгосрочной поддержки (LTS) и что это означает для разработчиков и администраторов. 

Наконец, мы заглянем в будущее платформы. Существует множество предложений по улучшению JDK (JEPs) и проектов OpenJDK вроде Valhalla, Amber, Metropolis и Loom. Обсудим, что это такое и какое имеет значение для разработчиков. 

Никита Липский (Excelsior) — Верификация Java-байткода: когда, как, а может отключить?

Никита — один из инициаторов и руководителей проекта Excelsior JET, сертифицированной реализации Java SE, разрабатываемой компанией Excelsior. Работая над проектом с 1997 года, поучаствовал в исследовании и разработке практически всех компонентов продукта от ядра до продуктовых свойств. В частности, является одним из авторов поддержки OSGI на уровне JVM в Excelsior JET, технологии Java Runtime Slim Down (модуляризация Java SE, реализованная в Excelsior JET с 2007 года), обоих верификаторов Java-байткода в Excelsior JET и многого другого.

В этом докладе Никита расскажет о верификаторе байткода. Сегодня Java-разработчики все чаще используют библиотеки для порождения Java-байткода в рантайме для эффективной реализации различных трюков, которые сложно или невозможно выразить на языке Javа. Но если используя язык Java, компилятор javac гарантирует, что на выходе получится корректный Java-байткод, то спускаясь на уровень непосредственно байткода, вам нужно часто самостоятельно следить за его корректностью. Иначе вы будете получать j.l.VerifyError при загрузке порожденных вами классов, потому что JVM строго следит за корректностью байткода, который она загружает, посредством верификатора Java-байткода. Таким образом, порождая байткод, вам часто недостаточно просто знать семантику байткодных инструкций, вам также нужно знать, как работает Java bytecode-верификатор, какой байткод он считает корректным, а какой — нет. 

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

Алексей Зиновьев (EPAM) — Смузи ML вместе со Spark MLlib

Алексей представляет собой воплощение Харона. В греческой мифологии Харон занимался перевозкой душ умерших через реку Стикс, а Алексей возит из Java в Big Data. Если говорить проще, то он — практикующий тренер в компании EPAM Systems. С Hadoop/Spark и прочей бигдатой дружит с 2012 года, форкается и пуллреквестит с 2014, рассказывает с 2015. Особенно любит текстовые данные и большие графы.

В направлении BigData требуются не только data scientist-ы, тюнящие параметры моделей из пакетов на R/Python, но и джависты, которые способны понять построенные модели, воплотив их на Java/Scala, в том числе при помощи Spark MLlib. С помощью Алексея, мы начнем знакомство с этой самой мощной библиотекой распределенного машинного обучения, заодно обсудив особенности использования стандартных алгоритмов машинного обучения и структур данных в Spark. 

Дмитрий Бугайченко (Mail.ru) — ML Pipelines в Одноклассниках

Дмитрий закончил Санкт-Петербургский Государственный Университет в 2004 году, там же защитил кандидатскую по формально-логическим методам в 2007. Почти 9 лет проработал в аутсорсинге, не теряя контакта с университетом и научной средой. Анализ больших данных в Одноклассниках стал для Дмитрия уникальным шансом совместить теоретическую подготовку и научный фундамент с разработкой реальных, востребованных продуктов. И этим шансом он с радостью воспользовался, придя туда пять лет назад.

В рамках доклада Дмитрия мы рассмотрим основную архитектуру библиотеки машинного обучения Spark ML, а также особенности ее использования для решения реальных задач с обработкой больших объемов данных. Особое внимание уделим ряду ограничений, усложняющих применение библиотеки, и узнаем о том, какие расширения для стандартных элементов пришлось разработать, чтобы эти ограничения обойти и полноценно раскрыть потенциал массивного распределенного машинного обучения. Работа стандартной библиотеки и ее расширений будет продемонстрирована на примере задачи ранжирования новостной ленты в социальной сети Одноклассники. Доклад будет полезен разработчикам, инженерам данных и аналитикам, использующим методы машинного обучения и платформы распределенной обработки информации.

Sebastian Daschner — Effective enterprise testing

Себастиан работает Java-консультантом, является автором книг и тренером, кроме всего прочего занимающимся программированием с использованием Java (EE). Например, вы можете знать его книгу «Architecting Modern Java EE Applications». Себастиан участвует в JCP и помогает формировать стандарты Java EE, участвуя в группах типа JAX-RS и JSON-P. За все это ему присвоили звания Java Champion, Oracle Developer Champion, JavaOne Rockstar и т.п. Кроме Java, Себастиан занимается технологиями контейнеризации в Linux, например, Docker.

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

В данном докладе мы рассмотрим, что необходимо для эффективного, прагматичного и автоматического тестирования Java EE-приложений. Увидим, как сохранять быстрый фидбэк, существенное покрытие и постоянную скорость разработки. Большая часть времени будет посвящена лайв-кодингу тестов разного масштаба с использованием различных технологий. Покажем, как контейнеры и фреймворки оркестрации поддерживают эффективное энтерпрайз-тестирование. И в особенности сфокусируемся на разработке поддерживаемого и высококачественного кода тестов, требующего владения основами мастерского написания ПО.

Дискуссионные зоны

Наверняка тебе знакомо чувство, когда поднимаешь руку, чтобы задать вопрос, а ведущий вдруг объявляет: «Осталось время для одного вопроса», — и конечно, выбор падает не на тебя, а в перерыве спикер скрывается за дверьми спикерских комнат.

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

Именно дискуссионные зоны отвечают на вопрос «зачем ходить на конференции, когда можно и в интернете все узнать». Все просто: чтобы лично задать твой конкретный вопрос. Что ж, на JBreak 2018 для этого созданы все условия: в длительных перерывах трек-оунеры приведут спикера в выделенное пространство с доской для иллюстраций, сидячими местами и возможностью схватить чашку кофе. Теперь ни один вопрос не утонет в тайминге.

Особенности online-трансляции

  • Видео в разрешении 2560×1440. В таком разрешении Java-конференции снимает только JUG.ru Group;
  • Возможность смотреть доклады из любого зала, у вас столько же возможностей, что и у участников, приехавших лично!
  • К тому же, если у тебя возникнет вопрос, можно задать его докладчику через Telegram-чат конференции и сразу же получить на него ответ;
  • Улучшенное качество звука, серьезно переработана система звукозаписи;
  • В перерывах между докладами, когда спикеры и участники на площадке удаляются в дискуссионные зоны, зрителям онлайн-трансляции мы показываем репортажи и интервью со спикерами и спонсорами. Ведут их Евгений Трифонов и Олег Чирухин. Как это происходит — можно посмотреть на примере Joker 2017;
  • Решено много мелких технических проблем, которые большинство даже не заметило, но они там были. В целом, ощущение от просмотра трансляции должно быть лучше.

Заключение

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

Встретимся на JBreak 2018!

Tags from the story