Talks
Welcome to my page dedicated to my conference talks! As a passionate Java developer, author, and blogger, I am committed to not only sharing my knowledge and insights on Java through my writing but also in person through my engaging and informative talks. I truly enjoy connecting with attendees and sharing my passion for Java with others in the community. Here, you will find a comprehensive list of all the talks I have given at various conferences, covering a range of topics related to Java and its ecosystem. Whether you are an experienced developer or just starting out, I am confident you will find something of value here. So, dive in and discover my passion for Java in action!
If you have any questions after watching one of my talks, feel free to reach out to me and I will do my best to answer any question you have.
Introduction and pitfalls of Java's new concurrency model
Java 21 releases one of the most anticipated features, virtual threads, and previews structured concurrency. It rethinks the way multithreading works in Java. It was born out of the idea that reactive Java is too complicated and blocking threads has to be cheap. Resulting in the new virtual threads that we run thousands of!
The aim of virtual threads and structured concurrency is to have high-throughput lightweight threads and new programming models on the Java platform. In this talk, I will demonstrate virtual threads and how to create and manage them using structured concurrency. Furthermore, I'll provide some practical advice to avoid pitfalls when you start using virtual threads in your application.
You can find the slides here.
Conference | Date | Video |
---|---|---|
DEVWorld | 2024 | Youtube |
W-JAX Munich | 2023 | |
University of Bergen | 2023 | |
GeeCon | 2023 | Youtube |
JAX London | 2023 | |
WeAreDevelopers Live | 2023 | wearedevelopers |
Copenhagen Developers Festival | 2023 | Youtube |
JavaZone | 2023 | Vimeo |
Voxxed days luxembourg | 2023 | YouTube |
JCON EUROPE | 2023 | Youtube |
JCON OpenBlend Slovenia | 2023 | |
JPrime | 2023 | YouTube |
Voxxed days Brussel | 2023 | YouTube |
GeeCON Kraków | 2023 | YouTube |
JavaLand | 2023 | |
GeeCON Prague | 2022 | YouTube |
Workshop: Build a web scraper based on virtual threads
Java 21 releases virtual threads into the wild! During this lab, you are going to build a web scraper that shows you the power of these new threads!
You will be guided through the step-by-step process of developing a web scraper that uses virtual threads, structured concurrency, and scoped values. You will learn how to leverage the advantages of virtual threads to efficiently retrieve and process data from lots of web pages simultaneously.
During the workshop, you may also be led astray so that you can also see when virtual threads don't work and how you can configure and debug them.
Conference | Date |
---|---|
JNation | 2024 |
JPrime | 2024 |
JFokus | 2024 |
JFall | 2023 |
Project Panama in Action: Building a File System
Discover the potential of Project Panama as we explore building custom file systems entirely in Java. This hands-on session will guide you through creating a filesystem from scratch. Learn how to leverage native interoperability to interact with the operating system without sacrificing Java's elegance and productivity. By the end of this session, you'll have a solid understanding of Project Panama's capabilities and be equipped to build your own tailored file system.
Conference | Date | |
---|---|---|
Devoxx BE | 2024 | YouTube |
JFall (ignite) | 2024 | |
JavaLand | 2025 |
Virtual Threads: Taming the Wild Multithreading Beast
Virtual threads are a game-changer, but real-world use can be tricky. In this session, I will tell you about my experience of using Virtual threads in real-world applications and the challenges I faced like performance issues, out-of-memory exceptions, and deadlocks. More importantly, you'll learn how Project Loom's features, such as scoped values and structured concurrency, can help you navigate these challenges and build robust, efficient multithreaded applications.
Conference | Date | Video |
---|---|---|
JNation | 2024 | Youtube |
Writing clean tests
How am I ever going to test this method? If you are like me, you probably asked yourself this question far too often. Because a method forces you to create an enormous test case, have lots of setup code, or worse, change production code to facilitate testing.
So, what if we could write loosely coupled tests? What if our tests are clear, show intent and are fun to write? With Junit5 and Mockito you can write those tests. These tools offer many features that help you write tests but are rarely used. In this talk, I will demonstrate how to test an application with zero test coverage, hard-to-test production code, and lots of edge cases. Furthermore, I'll provide some practical advice to improve your tests and make them easier and more fun.
Conference | Date | Video |
---|
Scoped Values in Java 20
My colleague Ron Veen and I co-presented a talk that he created. He is a great java developer with over 20 years of experience.
Together we gave a talk about Scoped values and virtual threads for the Polish Java user group.
Conference | Date | Video |
---|---|---|
Polish Java user group | 2023 |