Talks 2024

Here are my plans for 2024 so far. Hope to see you at one of this conferences.

JavaLand 2024

Let’s meet at JavaLand 2024 from 9 April to 11 April 2024 at the Nürburgring, Germany. "Guter Code - Eine Motivation" (Good Code - A Motivation) will be my topic this time. Because I got 100 min, you will see an extended and further polished version of my JUG Saxony talk. Looking forward to meet you there.

DevDays Dresden

If you missed my MICROBENCHMARKING - The Art of Realizing One is Wrong talk at the JUGSaxony in 2023, you can join me for devday.24 in Dresden, Germany on 16 April 2024.

LTB 2024

If you are into load testing, you can join me for a talk about load and performance testing in practise and the challenges of numbers at the The Twelfth International Workshop on Load Testing and Benchmarking of Software Systems (LTB 2024) on 7 May 2024 South Kensington, London, UK.

JPrime 2024

This year, I will present at jPrime 24 Sofia Bulgaria on 28 and 29 May 2024. The topic will be "GCs - Real Life Latency and Overhead". It is a first for that one. Brand new content for you!

Devoxx PL 2024

Also Devoxx Poland accepted my proposal and so we will hopefully meet at Devoxx Poland in Krakow, Poland on 19 to 21 June 2024. The topic will be "The First 80% of Reading One Billion Rows Really Fast". This one is brand new content as well and will talk about the low handing fruits of tuning for speed by using the 1BRC example by Gunnar Morling from January 2024.

Talks 2023

JUG Workshops Bern and Zurich 2023

In November 2023 (13-14th), I was giving two workshops in Bern and Zurich, Switzerland. These were the extended versions of my DevoxxPL MICROBENCHMARKING - The Art of Realizing One is Wrong talk.

Zurich was a hands-on workshop and therefore featured more content, more discussions, and more trial-and-error. You can find the extended slide deck here. The deck also features a link to the GIT repo with all examples used.

Accento Java/Web/Dev 2023

You might have joined me for Parallel Programming is Hard talk (in German this time, slides in English) at Accento 2023 in Karlsruhe, Germany on 24th October 2023. Accento was a fun event and I am grateful for all feedback and great discussion before, during, and after the conference.

JUG Saxony Day 2023

I hope we had the opportunity to meet at JUG Saxony Day 2023 in Dresden on 29 September 2023. My presentation talked about good and hopefully high quality code (not clean code, that is a different story). I presented simple ideas to motivate you to think about your very own code. In addition, we talked about APIs, style, tests, and of course, about the longevity of code.

Because a few speakers got sick, I got a second slot and presented my microbenchmark challenges talk. It was similar to the Devoxx Poland 2023 version but saw some minor updates.

Devoxx Poland 2023

I was an honor to be invited to speak at Devoxx Poland 2023. It was a really fun conference and I am grateful to have met so many wonderful people, speakers and regular attendees alike.

My first talk was about the right approach to microbenchmarking and the mistakes you can make if you try it a little too naively - MICROBENCHMARKING - The Art of Realizing One is Wrong. About 60 people attended and I was rated with 4.5 of 5 stars. I tried to put too much into the presentation so I had to rush towards the end. Sorry about that, but take as much time as you need to go through the slides.

René Schwietzke presenting at Devoxx Poland 2023
Figure 1. René Schwietzke presentating at Devoxx Poland 2023
René Schwietzke presenting at Devoxx Poland 2023
Figure 2. Microbenchmarking - The Art of Realizing One is Wrong on YouTube

Friday’s was all about parallel programming and why it is so important to know at least some details about the internals of the JVM in order to programm correctly. PARALLEL PROGRAMMING IS HARD - Why you really need synchronization and it is not what you think. 350 people showed interest and attended my session. It was rated 4.35 out of 5 stars. Many thanks to Douglas Q Hawkins and his 2017 Devoxx talk on Concurrency Concepts in Java. It was both an inspiration and a foundation for my talk.

René Schwietzke presenting at Devoxx Poland 2023
Figure 3. René Schwietzke, Devoxx Poland 2023, Parallel Programming is Hard
René Schwietzke presenting at Devoxx Poland 2023
Figure 4. Parallel Programming is Hard on YouTube

Talks 2022

JUG Saxony Day 2022

This talk is about the Java Memory Model and what you should know to write correct multi-threaded code or at least know that you might not have to care about. It shows some of the details that modern languages and frameworks typically fully hide but Java partially still exposes due to its history. When you write a library for multi-threaded use, make sure you understand what you do. If you consume such a library, you hopefully can really on the quality and consistency provided. If the performance of your application is mediocre, maybe you find a possible reason here.

Cover of the Java Memory Model Presentation

Data Science Day 2022

When load and performance testing, a lot of data is captured. This presentation talks about the sheer amount (293,084 data points per second) and how this data is later condensed down to a few meaningful metrics. All of this, hopefully, without losing too much information and still transporting the most important facts.

Cover of the Presentation for the Data Science Day 2022

This talk has been recorded as well and it was given in English.

CinJUG 2022

A newer version of my High Performance Java talk was given at a CinJUG meetup in 2022.

CinJUG 2022

During the pandemic, I gave a remote presentation to the Cincinnati Java User Group about the Java Memory Model.

Talks 2020 and Before

JavaLand 2020 (canceled)

This is my presentation that was scheduled for JavaLand 2020 but the entire conference got canceled due to the pandemic (in case you read that sometime in future, that was the Covid-19 pandemic). This talk is about all the tricks the JVM applies to get your code executed as quickly as possible. That includes compiler and optimization stages, dropping of code, and more. Also, it is about the modern CPUs and how they optimize code execution. Your code runs in parts concurrently on the CPU without you even knowing that.

Cover of the Slidedeck

DevTest Leeds 2019

When testing load and performance, one always faces the problem how to communicate the state and results. Not every stakeholder understands numbers as well as the load testers do, therefore communication might raise more questions than it answers. This talk suggests a simple rating system to convey a test result to many different people in a consitent manner.

Cover of the DevTest Leeds Presentation 2019

JUG Saxony Day 2019

The Javaland 2020 presentation, with marginal changes, was also given at the JUG Saxony Day 2019 in Dresden.

Please note, I was horribly overrunning and so I continued into the lunch break. This part has not been recorded.

Presentations

This section shows my presentations given, often not any different from a talk. Typically, the crowd is smaller and it was given to a more uniform audience, such as a company department or a group of students.

Publications

Tooling

All my presentations, some limitations apply, typically use Reveal.JS and my very own Less-based theme. Please note, the version that is used in these presentations is way older than the latest Reveal.JS version you find on GitHub. My theme might not fit anymore.

Feel free to use my theme or the Less approach for your own work and just feel inspired to use Reveal.JS. Especially, when you want a very uniform styling that can be easily adjusted (just a little bit of CSS and all presentations are updated) or you have to display source code a lot.