Joker 2020 (25.11.2020 — 28.11.2020)

img Interview and Q&A: Java and Kotlin evolution. What awaits us?

img Spring: Your next Java microframework

img img Architecting and delivering Java applications in the cloud era

img img Workshop: GraalVM (part 1)

img Pitfalls of Java classloaders and how they can affect work performance with XML

img How to tell "no" to an architect? Tips for sizing a microservice

img img RSocket + Spring: A full throttle introduction

img How we did SQL in Hazelcast

img To make JVM profiler win_able

img img Workshop: GraalVM (part 2)

img Java Licensing Tips

img img img img Panel discussion: Present and future of Java

img Spring Boot "fat" JAR: Thin parts of a thick artifact

img Change data capture pipelines with Debezium and Kafka Streams

img Aeron. High performance transport for low latency microservices

img It's time to try machine learning in Java

img Interview: It's time to try machine learning in Java

img img Thread Safety with Phaser, StampedLock and VarHandle

img Working with in-memory data sharding with a flavor of Spring Data

img img Writing test driven apps with http4k

img Java in Serverless — to be or not to be?

img Project loom: Modern scalable concurrency for the Java platform

img Kotlin Compiler in past, 1.4 and beyond

img Hidden pearls for high-performance-persistence in Java

img Workshop: Stop writing tests, write specs instead! (part 1)

img img Why do you need knowledge of concurrent development in an enterprise

img Rewriting Apache Maven to make it fast as Gradle

img Novel but practical uses of Java

img Microservices design philosophy with

img Have you really taken the time to know me: A G1 GC saga

img Workshop: Stop writing tests, write specs instead! (part 2)

img Spring Patterns for adults

img img Kafka streams testing: A deep dive

img Docker Who: Small containers through time and space

img Keeping growing software projects under control with Gradle

img img Kogito: Cloud-native business automation

img Hell's kitchen: How to prepare a new version of Java and not poison the users of LTS releases?

img Will robots replace programmers?

img The path towards Spring Boot native applications

img Coordinated Restore at Checkpoint: Quick start for the OpenJDK

img Back from the 70s — the Concurnas concurrency model!

Joker 2019 (25.10.2019 — 26.10.2019)

img img Reactive Spring revisited

img How does multithreading in Hazelcast work

img Maximizing performance with GraalVM

img Not dead yet — Java on desktop

img Keeping up with Java: Look at all these new features!

img Tuning performance of your reactive app

img Java scaled to zero

img The Sea of Nodes and the HotSpot JIT

img Bootiful testing

img Striving towards more productive development workflows

img IntelliJ IDEA Plugin DevKit Crash Course

img GraalVM and MicroProfile: A polyglot microservices solution

img Testing concurrent algorithms with Lincheck

img Spring Security for N00bz: A quick introduction for the terminally insecure

img Migrating beyond Java 8

img TeaVM: Difficulties of compilation from Java to JavaScript

img Spring Framework 5.2: Core container revisited

img Feature evolution in Java 13 and beyond

img Cassandra — stories from the life of performance engineer

img A race of two compilers: GraalVM JIT versus HotSpot JIT C2. Which one offers better runtime performance?

img DevOps for developers (or maybe against them?!)

img img Spring Reactive Ripper

img Microservices: Single digit microseconds latency — friends and foes

img Practical change data streaming use cases with Apache Kafka and Debezium

img The sinuous path toward Valhalla

img Java 9-14: Small Optimizations

img Application streaming is not only a code, but 3-4 years of support in production

img Armeria: A microservice framework well-suited everywhere

img TornadoVM: A virtual machine for exploiting high performance heterogeneous hardware of Java programs

img Efficient and reliable microservices

img Condy? NestMates? Constable? Understanding JDK 11 & 12's JVM features

img Testcontainers: Year later

img ScalaTest: You're asserting it wrong

img Does Java need "inline" types? What project Valhalla can bring to Java from a narrow view of performance engineer

img Concurrent Garbage collectors: ZGC & Shenandoah

img Java 11 support in Jenkins. Our war story

img Glimpse into Alibaba Dragonwell: Towards a Java runtime for cloud computing

img Decrypting tech hype for the busy coder

Joker 2018 (19.10.2018 — 20.10.2018)

img Don't walk away from complexity, run

img Java 11 is here!

img Production time profiling and diagnostics on the JVM

img img Should we try ARM, honey? Theory, applications and workloads

img Postgres-10k: Scaling Postgres for several thousands of active clients

img Transaction cascades, or how to build a transactional microservice architecture

img Correctness / performance / complexity: Is functional programming worth it?

img How to save yourself from Jar Hell with the help of Jigsaw Layers

img Java 4..11, Kotlin, Code Coverage and their best friend — bytecode: scandals, intrigues, investigations

img Sorting out memory of a Java process

img Spring Boot 2: what they do not write in release notes

img Jlink and Custom Runtime Image — Frankenstein's workshop

img Building an effective identity and access management architecture with Keycloak

img Pattern matching and its imaginary friends

img Not by Spring alone

img Public API infrastructure evolution

img Multiagent transportation model for the 2018 FIFA World Cup in Russia on Java in 4 months, with blackjack and evolutionary algorithms

img img The adventures of Senior Holmes and Junior Watson in the world of software development [Joker Edition]

img Profiling a black swan using Intel Processor Trace, or what to do when your code takes 20 ms to run instead of 2 ms

img Multi Device Controls — a different approach to UX with Gluon, JavaFX and Polymer

img img img img img Round table with Joker organizers

img Reactive hardcore: how to implement own Publisher<?>

img Machine learning in Java from nothing to production in one hour

img Compiling Java ahead-of-time with GraalVM

img Reactive config

img img Micronaut vs Spring Boot, or who's the smallest here?

img Apache Maven supports ALL Java

img Channels in Kotlin coroutines

img How to tune Spark performance for ML needs

img img Java Puzzlers NG S04: Ha, it seems that with this release cycle puzzlers came here to stay!

img Reactive streamer

img Lambda compilation and other gimmicks of modern JDKs

img Attribute-based authorization: How we stopped distributing roles and started on policies

img Reactive Spring

img Walking dead objects, or GC is always right

img Don't aim for quality, aim for speed

img Fuzzing for JVM testing: how and why

img Applying (D)DDD and CQ®S to cloud architectures with Spring Boot and Docker

img Kotlin — 2 years in production without breaks

img Integrating .NET and Java virtual machines

img Modern FP using Tagless Final

img New reality of digital civilization

Joker 2017 (03.11.2017 — 04.11.2017)

img Java 9: the good parts (not modules)

img Twitter’s quest for a Wholly Graal runtime

img GraphQL — APIs in a new way

img Event sourcing, event-driven architectures and CQRS

img img Java Puzzlers NG S03 — What? Where those came from?!

img Understanding How Graal Works — a Java JIT Compiler Written in Java

img Java 9 Modules. Why not OSGi?

img Logging in the age of Microservices and the Cloud

img Java and GPU, where are we now?

img Profilers are lying hobbitses

img Concurrency For Humans

img RESTful Data Services with LinkRest : From fixed resources to dynamic graphs

img Text editors are not Further Maths, you've got to use your head

img img Groovy DSL. Examining Gradle

img Shenandoah: the garbage collector that could (part 2)

img Cloud native Java EE

img Using Kubernetes for Continuous Integration and Continuous Delivery

img Building a Smart Security Camera with Raspberry Pi Zero, Java and AWS

img Patterns and Аnti-patterns in Java 8

img One-cloud DC/OS on Java and for Java

img Big Data Science in Scala

img img Boot yourself, Spring is coming (Part 1)

img Runtime vs. compile time (JIT vs. AOT) optimizations in Java and C++

img img Ceylon in production

img img Amazon Alexa Skills vs Google Home Actions, the Big Java VUI Faceoff

img img Boot yourself, Spring is coming (Part 2)

img Lock-free algorithms testing

img img Java Code Coverage mechanics

img JUnit 5 extensions: from conditional test execution to test templates

img Enabling Google microservices with gRPC

img Falcon — new JIT-compiler in Zing JVM

img Spring 5. Reactor inside

img TestContainers — integration testing with Docker

img Graal, Value Types, Loom and other perks: what it is and why you need it

img Birth, life and death of a class

img ToroDB internals: open source Java database middleware under the hood

img Event Sourcing and CQRS by example

img img img img img Panel Discussion - Profiling and optimization

img Project Amber: news from the front

img Serialization: making it fast, concise, cross-platform

img Petabytes of video and photo storage in Odnoklassniki: make it cheaper, simpler and more reliable

img How we have widened the bottleneck of development

Joker 2016 Student Edition (15.10.2016)

img Polyglot on the JVM with Graal

img Anti-introduction to Big Data

img Bytecode for the curious

img Trie: an unfamiliar tree

img Java libraries you can't afford to miss

img Microservices: first blood

img img Evolutionary design

img Introduction to distributed systems for a very busy Java programmer

Joker 2016 (14.10.2016 — 15.10.2016)

img Myths and facts about Java Performance

img From CRUD to Hypermedia APIs with Spring

img img Groovy Puzzlers S03 — The Unstoppable Puzzlers Hit Again!

img How to calculate the CTR of 100M objects in real-time and not to die

img Tracing distributed (micro-)service calls

img Native Code, Off-heap Data, and Java

img Working effectively with IDE(A)

img Release management with Gradle

img Spring RabbitMQ

img No container: a Modern Java Stack with

img Understanding Hardware Transactional Memory

img img Maven vs Gradle: Dawn of Project Automation

img Weird Stream API

img Asynchronous, but readable: coroutines in Kotlin

img JBatch or not such a big data

img Java on Elbrus

img Griffon: what's new and what's coming

img Breaking logs

img Riding the Jet Streams

img Databases: individual tailoring and fitting on

img Let's Talk About Invokedynamic

img Deadlocks in enterprise systems: sources, impact, tackling

img SpringCloud Service Discovery Internals

img Beating Threads — live coding music

img From Java to Assembly: Down the Rabbit Hole

img Close Encounters of Java Memory Model Kind

img Low Latency & Mechanical Sympathy : issues and solutions

img Advanced search for your legacy application

img Why functional programming matters (for data scientist)?

img Be prepared to G1 GC, or Evolution of the G1 GC

img HotSpot Internals: Safepoints, NullPointers and StackOverflows

img What does Spark prepare?

img To be reactive…​ or not to be

img Java 9 Modularity in Action

img Apache Cayenne: a Java ORM Alternative

img Vert.x: Beauty and the Beast

img Computer Science is not dead yet

img That is how we built our highly-available platform or how to solve real-life problems with in-memory grids

img Making Java more dynamic

img An overview of Gradle 3.0 and its new features.

img Pragmatic Performance

img Performance: What's In It For You?

img Myths about Spark, or the possibility of using Spark by an ordinary Java developer

Joker 2015 University Day (18.10.2015)

img Student syndrome: why do we do everything at the last moment?

img Performance Optimization 101

img img Microservices: Blood, Sex and Violence

img Master Class: Strength of the first step or group deprocrastination session

img Highload. Java. Odnoklassniki.

img Multithreaded programming is DIFFICULT!

img Java BigData Full Stack Development - is there life for a math student in the icy world of Java?

img Workdays of a productivity engineer

img Kotlin: what is meant by a modern programming language

img The Bootiful Microservice

img Poor code, or How to deal with the seven deadly sins of the developer

img Everything that you wanted to know about the Legacy code, but were embarrassed to ask

img img JVM: a short course in general anatomy

img Dining philosophers strike back!

img Hibernate introduction: what, why, and where are the standard traps

Joker 2015 (16.10.2015 — 17.10.2015)

img Practicing at the Cutting Edge

img Distributed systems in

img Spring Puzzlers

img Using Java Microbenchmark Harness (JMH) in a real world project

img Interaction performance tuning

img The Lord of the Strings: Two Scours

img How to tame a violent patient: Java straitjackets for MongoDB

img Java(Script) on JVM

img img Improve Testing Code Quality with Mutation Testing

img CompletableFuture in Java 8, asynchronous processing done right

img What should every Java developer know about networks?

img Refactoring in functional style

img Digital signature in Java, Russia vs. Estonia

img Adventures with concurrent programming in Java: A quest for predictable latency

img Legacy: How to win the race

img img Ping-pong programming

img Hystrix – managing failures in distributed systems

img The Macro of Microservices

img Get Past the Syntax, the Real Scare's in the Semantics

img Do we need Unsafe in Java?

img img WILD microSERVICES

img How «final» is final?

img img Things on the Internet: we drag cloud services to «brainless pieces of iron»

img What to expect from Java 9?

img Busy Developer’s Guide to Amazon Web Services

img Vert.x manual

img The experience of using Kotlin in JetBrains

img Modern approach to implementation of classic design patterns in Java

img Reactive Programming: creating highly responsive applications

img What do we measure?

img Spring Boot loves DevOps

img Analysis of difficult cases of OutOfMemoryError

img The Bootiful Application

img 50 Shades of Play!

img Client-side Java outside the browser: making native Java clients

img Iconoclasm

Joker 2014 (20.10.2014 — 21.10.2014)

img The Illusion of Execution

img img Power plant in one programming power with a heart from Raspberry Pi and a brain on Java Embedded

img Java as the main Data Scientist work tool

img Best DIY debugger

img Open Heart Surgery: HotSpot Debugging at the OS Level

img Writing code faster, making mistakes less often: is this possible?

img Java Benchmarking: how to read two timestamps!

img img Unsafe Java World — Crossing the Borderline

img Optimizing the presentation of complex Java objects: ObjectLayout project

img Hotspot, what are you doing ?! Ahaha, stop it!

img Beyond NoSQL: NewSQL on Cassandra

img Integration Testing from the Trenches

img img img Why does Spring have so many configurations? Conspiracy? And you, Spring Boot?!

img Low level Java coding with examples from OpenHFT

img Profiler for every home

img Iron meters to guard performance

img JavaScript in the Enterprise

img From Disk Architecture to In-Memory

img Viral effect

img 50 Best Features of Java EE 7

img img Groovy Puzzlers - Strange, Incomprehensible and Mom-a-this-what-what?!

img Optimization of work of JVM in a cloud - a myth or a reality?

img OS/JVM dialectic – ending the struggle through unity

img Monitoring a Java Application with multiprocess architecture

img In simple words about type inference

img Applied multithreading

img Java data structures, reinventing

img Approaches to solving performance problems of highly loaded services

img Is Your Code Parallel-Ready?

img USS "Enterprise" - through the black security holes of Java Web containers

img Ahead-of-time compilation

img Spring Data? Da, ta!

img Future of Java: 9 and beyond

img So you want to write another JVM language?

img java.lang.String Catechism

img Why does the GC eat up all of my CPU?

img Clojure: interactive development for interactive web

Joker 2013 (15.10.2013)

img Facts and misconceptions about Java serialization

img Groovy DSL for plugins: Human language extensions

img How I created a Java desktop application downloaded 9,000,000 times

img Frankenstein Voldemort or key-value data in Odnoklassniki

img OOP paradigms, the basics of robust design and Java application architecture

img Crash dump - black box of fallen JVM

img Clean Tests: how to structure your tests, so that they serve you well

img Spring 4.0: new generation

img Understanding Java Garbage Collection and what you can do about it

img Trade-offs, or How programming languages are designed

img What the profiler is silent about

img Java mapping for pragmatic programmers

img Project Jigsaw. Take 2

img JBoss Drools Expert against dirt

img Quarterly Video platform

img The (not so) dark art of Performance Tuning

img Mutation testing, or What Code Coverage is silent about

img img Entertaining JVM technical support life stories

img Windows Azure + Java = (Open) Integration

img API development in a Java project: how to influence people and not gain enemies

img Scala for professionals

img Java certification. What is and why is it needed

img img Java Embedded at your home!

img Bet you have a memory leak in your application?

img JDK8: Stream style

img Load testing for video distribution server

img In-Memory Accelerator for MongoDB

img What the Heap Dumps are silent about

img Finding Tommy Hilfiger

img Invokedynamic: Luxury or necessity?

img UrsaJ: HTTP File Storage