• Watch recording

    Talk type: Talk

    Restoring lost expertise of service

    Anna will tell about the approaches to restoring the expertise of systems using the example of fictional system written on Java and supporting technologies.

  • Watch recording

    Talk type: Talk

    Performance: Nuances vs obviousness

    The talk about performance, or rather evidence and nuances around it, and about the code behaving unexpectedly and hidden gotchas behind very simple things.

  • Watch recording

    Talk type: Talk

    Dismantling technical debt and hubris

    A story about reducing roll-your-own solutions, choosing existing open source tools, and being humble in environments that often favor self-promotion over doing the right thing.

  • Watch recording

    Talk type: Talk

    R2DBC. Is it worth it?

    During this session, we will try to figure out whether everything is smooth with R2DBC, and what pitfalls may await us in the transition to this specification.

  • Watch recording

    Talk type: Talk

    CRIU and Java opportunities and challenges

    Checkpointing in Java can help both legacy and cloud users. Christine will show you how to checkpoint a simple application and then restore it to one or several different machines.

  • Watch recording

    Talk type: Talk

    Jakarta EE 9 and beyond

    In this session, Ivar and Tanja will go through what Jakarta EE 9 brings to the table and how this release lowers the barriers of entry, eases migration, and lays the foundation for a platform for future innovation.

  • Watch recording

    Talk type: Talk

    I am a developer. I don't write tests

    The developers are always told to write texts and to be responsible for the quality. But is that true? During this session, we will try to dismember the testing pyramid, dig into the code and see where it takes us.

  • Watch recording

    Talk type: Talk

    Secret ingredient: How to triple your user base in a year

    BellSoft has integrated the new JEP into JDK16, added the Apple Silicon M1 Liberica JDK to the supported platforms, and released the new Liberica Native Image Kit product. Aleksandr Belokrylov will tell you how and by whom these products are created and what processes allow the company to remain open to the world community.

  • Watch recording

    Talk type: Talk

    Babashka: A native Clojure interpreter for scripting

    Babashka is a native Clojure interpreter for scripting. It is compiled to native using GraalVM native-image. In this talk, we will see how Babashka works internally through a live coding session.

  • Watch recording

    Talk type: Talk

    Benefits of pair programming

    Let's have a look at the benefits of pair programming in teams. Dmitry will show cases where you can use pair programming and what tasks it solves.

  • Watch recording

    Talk type: Talk

    Type inference: Friend or foe?

    This presentation includes the details of Java 10 type inference but certainly will not limit to it. We will step back and discuss type inference from the programmer's point of view and work through the benefits and caveats.

  • Watch recording

    Talk type: Talk

    Reactive Spring

    Join your guide, Spring developer advocate Josh Long, to explore the wacky, wonderful world of Reactive Spring together.

  • Watch recording

    Talk type: Talk

    What is a Working Product and how to make it

    In this talk, we will discuss topics such as developer usability, unit testing, and popular anti-patterns. Anton wants to draw your attention to how to make products maintainable.

  • Watch recording

    Talk type: Workshop

    Workshop: Pair programming (part 2)

    During this workshop, Andrei and Anton will demonstrate pair programming in action and write with you a simple app using TDD (so-called "ping-pong programming").

  • Watch recording

    Talk type: Talk

    IntelliJ productivity tips — The secrets of the fastest developers on Earth

    The purpose of this presentation is to showcase some tricks that will improve your code writing speed. Victor wants to help you to become faster to feel less guilty when you throw away some experiment, so you can then find the most simple design to solve your problem.

  • Watch recording

    Talk type: Talk

    Spring Data Postroitel' (Spark it!)

    Do you want to understand how Spring Data works? Evgeny Borisov suggests writing analog to understand how Spring Data works.

  • Watch recording

    Talk type: Talk

    What languages are IDE-friendly?

    We'll see how some language (and framework) design choices affect IDE features and performance.

  • Watch recording

    Talk type: Talk

    You can go your way: Kafka without Zookeeper

    In this talk, Viktor will provide a brief overview of what limitations Zookeeper imposed on Kafka architecture, what will be changed, and the current status of Zookeeper removal.

  • Watch recording

    Talk type: Workshop

    Workshop: Pair programming

    During this workshop, Andrei and Anton will demonstrate pair programming in action and write with you a simple app using TDD (so-called "ping-pong programming").

  • Watch recording

    Talk type: Talk

    Enum in API — The deceit of illusory simplicity

    Every software developer knows, that you should use all static type system features in your API. Sometimes, though, you need to make an exception. But developers stumble on a mental block when such a case occurs. To avoid becoming a victim of such a situation, please listen to how enum is going to make your life miserable if used carelessly.

  • Watch recording

    Talk type: Talk

    Java Records for the intrigued

    Java 14 brought Records as one of the preview features, and in Java 16 they're a standard feature. Is that the case? What one can do with records and what can't? What about reflection and serializations? You will learn in this session.

  • Watch recording

    Talk type: Talk

    Getting the most from modern Java

    This session will cover all of the new language features in Java since the last Long-Term Support release. We'll also cover the main new library APIs from small changes like the teeing collector to whole new libraries like the Foreign Function Interface.

  • Watch recording

    Talk type: Talk

    Code With Me — new platform for remote collaborative development

    Компания JetBrains выпускает этой весной прицнипиально новую функциональность для всех своих продуктов — Code With Me. Это платформа для коллаборативной работы — неважно, парное ли это программирование, обучение классов, воркшопы, или mob-программирование. Какое значение это имеет для рядовых разработчиков и для IT-организаций? Как эта штука устроена внутри? Какая история и какое будущее у Code With Me? Обо всех этих вещах расскажет лид проекта, Кирилл Скрыган.

  • Watch recording

    Talk type: Talk

    GC optimizations you never knew existed

    You're probably familiar with the well-known Garbage Collection policies such as CMS, G1, Shenandoah, ZGC, gencon, balanced, etc. This talk is meant to demystify some of these optimizations that even though might be transparent to a JVM user, makes a tremendous performance impact.

  • Watch recording

    Talk type: Talk

    +10 to Java code safety in 10 minutes

    Alexey will tell you what you need to pay special attention to when writing code and developing your applications so that they become more secure and inaccessible to cyber villains.

  • Watch recording

    Talk type: Talk

    Reading from Cassandra — internals and performance

    This talk is about the detailed analysis of how the process of reading from the Apache Cassandra database takes place in terms of performance, what are the stages of processing requests, how long they take, which threads are responsible for what.

  • Watch recording

    Talk type: Talk

    Spring Cloud in Kubernetes era

    Alexey will show what Spring Cloud components may be used in Kubernetes, how these projects complement each other, what they have in common. And finally, he will try to answer the question — what's the value of Spring in Kubernetes era?

  • Watch recording

    Talk type: Talk

    Why you should upgrade your Java for containers

    This session is a no-nonsense journey through the main reasons why Java 8 is no longer an acceptable solution — primarily for container deployments but the lessons are applicable more generally.

  • Watch recording

    Talk type: Talk

    Migrating Java backend to Kotlin

    Alexander will talk about how and why Kotlin has been added to an enterprise project written in Java. This talk will explore technical problems encountered during the migration and the process of adoption of the new language by developers and managers.

  • Watch recording

    Talk type: Talk

    Adding generational support to Shenandoah GC

    This talk describes some of the workloads that have motivated the generational Shenandoah effort, provides an overview of the algorithms and heuristics that are being implemented and offers a summary overview of the work plan, including the most recent experimental results.

  • Watch recording

    Talk type: Talk

    Inner loop development with Spring Boot on Kubernetes

    In this talk, we will explore tooling and configuration options that get you to the fastest iteration in development (the "inner loop"), making use of all the newest features of Spring Boot, but also of the various tools from the Kubernetes community.