Photo

Finally, we can simplify our code with Java Virtual Threads and do away with Kotlin Coroutines! ...

João Esperancinha

from Vereniging COIN (The Netherlands)

About speaker

João is a 10+ years experienced Software Developer, Studied Telecom Engineering at ISEL Lisboa, and worked in different companies in Portugal, Spain, and The Netherlands. He is a certified Kong Champion, a certified Java Developer (OCP11) and is a Certified Spring Professional 2021.

About speakers company

We work with landlines and network and internet providers also known as service providers. We are responsible for bundle-switching and contract termination between our clients.

Abstracts

specific

Java 21 and the long-awaited production-ready Java Virtual Threads that Project Loom promised us a long time ago are here. Why is this important? Like Kotlin Coroutines, they make better use of threads by multiplexing different instructions into different Threads and optimizing runtime in a non-blocking fashion resulting in faster and more resilient services capable of processing larger amounts of data. Kotlin coroutines used to be the only way to do this in the JVM, but with Virtual Threads, the code seems simpler, and where in Kotlin Coroutines we would need to define scopes and sometimes create complex nested code, with Java Virtual Threads, all of that complexity is gone. But there are caveats to this and maybe Kotlin Coroutines still have a specific purpose when developing performant and maintainable code especially when talking about structured concurrency.

With my examples similar to real-life scenarios from my experience, you'll see where and how one usage can be beneficial to the detriment of the other. When you leave this session you'll have learned where are the differences between Java Virtual Threads and Kotlin Coroutines and how to correctly and efficiently apply them.

The Program Committee has not yet taken a decision on this talk

other talks of this topic

Photo
Path to Golden Path

Daniel Drack

FullStackS GmbH

broad
Photo
How we elevated tracking data accuracy from ~60% to ~80%

Alina Krasavina

Delivery hero

broad
Photo
JavaScript is weird. MythBusters special.

Małgorzata Janeczek

Sector Alarm Tech

broad
Photo
You don't need to implement GraphQL

Sefi Ninio

Tikal Knowledge

specific
Photo
Go performance profiling in theory and practice

Alexey Palazhchenko

FerretDB Inc.

broad
Photo
Sculpting Data for Machine Learning: Generative AI edition

Rishabh Misra

Attentive Mobile Inc

broad
Photo
An Efficient Git Workflow For High-Stakes Projects

Vladislav Shpilevoy

VirtualMinds

specific
Photo
Deep dive into the postgres index types

Jesús Espino

Mattermost Inc.

specific
Photo
How Unit Testing Saved My Career

Annelore Egger

OpenValue Switzerland

broad
Photo
C# 13 Unleashed: Live Demos of my Top 10 Cutting-Edge Features!

Ambesh Singh

Visionet Systems Deutschland

broad
Photo
Collaborative applications and how to make them fast

Bartosz Sypytkowski

appflowy.io

specific
Photo
Why You Ignore Best Practices and How You Can Fix It

Annelore Egger

OpenValue Switzerland

broad
Photo
Taking Shortcuts Beyond Your IDE

Annelore Egger

OpenValue Switzerland

broad
Photo
Algorithm Of Massively Parallel Networking In C++

Vladislav Shpilevoy

VirtualMinds

specific
Photo
Simple and stable UI tests with Ultron

Aleksei Tiurin

Exness

specific
Photo
What the @#!? is Auth

Warren Parad

Authress

specific
Photo
UX at the centre of system development and design

Anesu Makwasha

Tose Technologies

specific
Photo
Throw exceptions... out of your codebase

Guillaume Faas

Vonage

specific
Photo
Crafting the Ultimate Docker Image for Spring Applications

Pasha Finkelshteyn

BellSoft

specific
Photo
Putting the asm in Wasm: from bytecode to native

Edoardo Vacchi

Tetrate

specific
Photo
Continuous Profiling on K8s - why, when and how

Ant(on) Weiss

PerfectScale

specific
Photo
From Server to Serverless - A story of saving Cost

Yoav Nordmann

Tikal Knowledge

specific
Photo
Workshop: Master Anti-Ban & Web Scraping Techniques (2h)

Fabien Vauchelles

Scrapoxy

specific
Photo
Become a Gen AI Bot Master in Just 50 Minutes – No Kidding!!

Ambesh Singh

Visionet Systems Deutschland

broad
Photo
Pros and Cons of Jetpack Compose Toolkit

Stevan Milovanovic

InterVenture

specific
Photo
From null to applications on Kubernetes

Roberth Strand

Sopra Steria

specific
Photo
Three Flavors of Pokémon - Framework Agnostic UI Testing

Shelly Goldblit

Dell Technologies

broad