• Доклад

    Нас Spring Boot, а мы крепчаем: невыносимая легкость AOT-компиляции Spring-приложений

    На примере поддержки Spring Boot-приложений в AOT-центричной JVM Excelsior JET Никита покажет, как динамические свойства Java, используемые в Spring Framework, могут работать совместно с AOT-порожденным машинным кодом.

  • Доклад

    The Proxy fairy and the magic of Spring

    Come and learn from a hands-on practitioner real-world best practices of using Aspects, design hints, under-the-hood implementation details, debugging tips, performance impact of aspects, all in an interactive, entertaining and extremely dynamic session.

  • Доклад

    Performance aspects of Axon-based CQRS/ES systems

    The Axon platform offers an unique, scalable way to build microservices. We'll talk about the main concepts behind Axon, focusing on how it addresses performance-related aspects of CQRS and event sourcing.

  • Доклад

    Эффективная работа с файлами для Java-разработчиков

    Дмитрий расскажет про личный опыт разработки disk intensive applications и грабли, собранные в процессе разработки Apache Ignite Native Store. Доклад ориентирован на опытных разработчиков, которым важна производительность при работе с диском.

  • Доклад

    JVM TI: как сделать «плагин» для виртуальной машины

    Разберём, в каких случаях JVM TI может пригодиться разработчику, в том числе в обычных Java-приложениях. Познакомимся с возможностями интерфейса, включая нововведения из Java 9 и 11, и напишем собственный инструмент. На реальных примерах из практики увидим, с какими проблемами JVM TI сталкиваются программисты и как эти проблемы решить.

  • Доклад

    Do it yourself: Collections

    The talk will walk the audience through the basics of creating a new collection, adding new collection-specific API, the salient aspects of the new collection, lastly, the various knobs and controls which are required to make it safe and usable.

  • Доклад

    JDK 12: Pitfalls for the unwary

    We'll look at all the areas of JDK 9, 10, 11 and 12 that may impact application migration and also how the new JDK release cadence will impact Java support and the choices of which Java versions to use in production.

  • Доклад

    Java 11 reactive HTTP Client

    This session will first provide the background to the new HTTP Client API, its history and evolution through JDK 9 and JDK 10, then moving on to the specifics of what has been standardized in Java SE 11. The audience will learn how to use the API to perform common tasks.

  • Доклад

    The world needs full-stack craftsmen

    Настоящий software craftsman на порядок эффективнее узкоспециализированного разработчика: он не только пишет код, но и решает проблемы. Хотите так же? Давайте разберемся, что это за принцип и почему он работает.

  • Доклад

    Атомарный рефакторинг в IntelliJ IDEA: прогибаем IDE под себя

    Рефакторинг можно разбить на набор атомарных шагов-транзакций, после каждого из которых семантика сохраняется. Чем меньше эти шаги, чем короче «разломанное состояние программы», тем меньше вероятность ошибки. Мы посмотрим на примерах, как этого добиться при рефакторинге Java-кода в среде IntelliJ IDEA и как заставить среду рефакторить атомарно, если она сопротивляется.

  • Доклад

    Pushing a big project forward: the Jenkins story

    Kohsuke, the creator of Jenkins and CTO of CloudBees, will walk you through what exciting new Jenkins projects are aiming for, how they work together to make you even more productive.

  • Доклад

    Гибкий веб-сервис API с Mu

    Ольга представит библиотеку Mu, позволяющую решить ряд проблем, связанных с разработкой веб-сервисов на Scala в функциональном стиле.

  • Доклад

    Decomposing Java applications

    We'll look at the process of decomposing a Java application into reusable components, ending up with application design that has good chance to evolve over the years without introducing additional accidental complexity.

  • Доклад

    Сказ о том, как мы алгоритм каналов в Kotlin Coroutines делали

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

  • Доклад

    Просчеты тестирования

    Ни один программный пакет нельзя полностью очистить от багов — тогда как понять, что хватит тестировать продукт и пора его выпускать?

  • Доклад

    Cloud native, service-meshed Java Enterprise with Istio

    This sessions shows how to implement service-meshed applications using Java EE 8 and MicroProfile. It also includes how to integrate the required cross-cutting concerns, such as monitoring, tracing, or resiliency into our applications, where developers have to actively integrate technology themselves and where the platform support us.

  • Доклад

    Improve Java build performance with Gradle 5

    Recent Gradle releases give you new capabilities to greatly improve the speed of your Java project build. We will discuss and use real builds to demo how you can identify performance bottlenecks, reduce build configuration time dramatically, take advantage of advanced features, and track build performance over time for your whole team.

  • Доклад

    Kafka Streams API: шаг за рамки Hello World

    Тем, кто решит попробовать создать рабочее приложение при помощи Kafka Streams API, предстоит освоить немало новых вещей. Мы постараемся ответить на возникающие вопросы, по пути рассмотрев несколько демо-примеров с использованием Spring.

  • Доклад

    Local variable type inference: Friend or foe?

    We'll explain the fundamentals of local variable type inference and then take a series of examples of the use of var and discuss the technical merits of each case.

  • Доклад

    Суперкомпиляция, partial evaluation, проекции Футамуры и как GraalVM спасет мир

    Поговорим про Truffle — фреймворк для создания языков программирования на основе GraalVM. Детали его работы помогут лучше понять, как работают языки, поддерживаемые GraalVM — JavaScript, Ruby, R, Python — и как лучше их применять.

  • Доклад

    Kotlin: как работают привычные конструкции

    Это доклад о том, как Павел исследовал внутренности Котлина и того, во что он компилирует сделанный нами код. Чего нам стоят конструкции, которые мы привыкли использовать? А какие опасности они таят? Часть ответов можно найти в этом докладе.

  • Доклад

    Не будь Гомером Симпсоном для своего Reactor-а!

    Никогда не слышали о BlockHound? Или слышали о backpressure, но не уверены, работает ли оно в вашем коде? Может быть, вы хотите подготовить ваш код заранее на случай, если что-то пойдёт не так в проде? Ну или просто посмотреть, как с Reactor работают его разработчики, и подцепить пару прикольных трюков? Тогда этот доклад для вас!

  • Доклад

    Java тормозит: CodeCache edition

    Никогда такого не было, и вот опять упал продакшн! Или не упал, а начал тормозить. Проблема может быть в работе JIT-компилятора. Разберём, как управлять его работой и как анализировать случаи, когда что-то пошло не так.

  • Доклад

    Reactive или не reactive, вот в чем вопрос

    Рассмотрим пример системы, в которой есть проблемы, и, конечно же, попробуем отрефакторить её в реактивном стиле. Рассмотрим преимущества и недостатки не только подхода, но и API конкретных реализаций. Оценим сложность, которая была до рефакторинга, и ту сложность, которую мы привнесли после. Постараемся разобраться, что игрушки, а что нет.

  • Доклад

    Fast & functional

    We are going to create a functional and blazingly fast microservice, using functional programming abstractions to quickly mix & match different HTTP libraries, state implementations and concurrency configurations.