Backend engineer at trivago, open-source maintainer, speaker. About me.

My Talks

Good talks are fun and educational. Here's a list of previous events where I spoke. I try to make every talk and every workshop as unique as possible. If you would like me to speak at your event, let's get connected!

Workshop: Rust Embedded

Me speaking at RustFest in November 2019

  • Event: RustFest, November 2019
  • Location: Barcelona, Spain
  • In collaboration with Hanno Braun
  • Slides
Rust is a great choice for embedded development! It combines high-level abstractions with low-level control, safety with performance. In this workshop, you will learn embedded development on a microcontroller, using Rust.

We’ll teach the basics, talk about pitfalls, and provide an environment for experimentation. Experience with embedded development is not required, but basic Rust experience would be helpful. Every participant will be provided with a LPC845-BRK development board, free of charge and for them to keep.

Wonderful WebAssembly

Me speaking at Bristech in November 2019

  • Event: Bristech, November 2019
  • Location: Bristol, England
  • Recording
  • Slides
Our world is controlled by software. As with everything that is created by humans, software is error-prone. Everyone got annoyed by bugs and UI/UX issues before, but what exactly does "broken" really mean and are there different kinds of brokenness? Let's explore the fun, enthralling, and quirky state of our (digital) world and see what we can do to make it better.

Everything is Broken (And That's Okay!)

Me speaking at localhost conference in October 2019

  • Event: localhost conference, October 2019
  • Location: Düsseldorf, Germany
  • Recording
  • Slides
WebAssembly is neither "web" nor "assembly" - but 100% amazing. It is our one chance to build a fast, safe, and universal compilation target for all languages and all platforms.

Let me show you why this is cool and how to get started with WebAssembly in Go, C, and Rust.

We will also learn about up and coming features of WebAssembly (like WASI) that will make it even faster and more versatile.
Let's change the way we write software forever!

How Does Async Work?

Me speaking at Web Meetup Cologne in September 2019

  • Event: Web Meetup Cologne, September 2019
  • Location: Cologne, Germany
  • Slides
If you work with Node.js or Python you might have heard of asynchronous programming a.k.a. async/await. It lets you do something else while you wait on some work to be done in the background - like reading a file or sending some data over the network. But what is it, really? And are there differences between the programming languages? Let's go on a trip through async-land and discover callbacks, event loops, and state machines. We will look at Node's, Python's, and Rust's async features and how they work under the hood.

What is Rust Doing Behind the Curtains?

Me speaking at FOSDEM in February 2019

  • Event: FOSDEM, February 2019
  • Location: Brussels, Belgium
  • Recording
  • Slides
Rust allows for a lot of syntactic sugar, that makes it a pleasure to write. It is sometimes hard, however, to look behind the curtain and see what the compiler is really doing with our code. "It is good to know what these conveniences are, to avoid being mystified by what's going on under the hood... the less magical thinking we have of the world, the better." (Tshepang Lekhonkhobe). In this hands-on talk, we will go from code with a lot of syntactic sugar to extremely verbose Rust code.

We will use a little tool called cargo-inspect, which was built for teaching Rust internals. The goal is to make the compiler more approachable to mere mortals.

Workshop: Write Your Own Shell in Rust

Me speaking at RustBeltRust in October 2019

One of the things developers use every day is a shell. It comes in many flavors, like bash, fish or zsh. Depending on your background, writing your own shell from scratch might either sound intimidating or pointless. We like to believe that it can be a fun way to gain more hands-on Rust experience. If you want to play with concepts like I/O, error handling, and syscalls, we invite you to participate in this workshop. Who knows, it could also be an opportunity to start your first mid-size Rust project!

Hyperjson — The Journey Towards Faster Safer JSON Parsing in Python Using Rust

Me speaking at Rust Cologne in August 2018

  • Event: Rust Cologne, August 2018
  • Location: Chaos Computer Club, Cologne, Germany
  • Recording
  • Slides
During a recent Python Hackathon in Düsseldorf, Matthias somehow managed to sneak in some Rust code while writing a fast, safe Python module for encoding and decoding JSON. It passes (most of) the Python test suite for the JSON module and was unreasonably pleasant to write. Listen carefully as he tells the story of a little side-project that got out of hand and how Rust can help speed up even the most boring, highly-optimized tasks like parsing file formats in the future.

Idiomatic Rust — Writing Concise and Elegant Rust Code

Me speaking at FOSDEM in February 2018

  • Event: FOSDEM, February 2018
  • Location: Brussels, Belgium
  • Recording
  • Slides
Rust is a big language and it gets bigger every day. Many beginners ask: "What is idiomatic Rust?". This talk will highlight simple tips to make your Rust code more elegant and concise, and introduce you to my peer-reviewed collection of articles/talks/repos for writing idiomatic Rust code.

Workshop: Live Coding Like No One's Watching!

Me speaking at RustBeltRust in October 2017

  • Event: RustBeltRust, October 2017
  • Location: Columbus, OH, USA
So, you’ve heard of this “Rust” last year. Still it feels a bit like self-assembly furniture: you don’t know how all the parts fit together. Watch me make a fool of myself by trying to solve some common programming tasks in Rust. Highlights: Nervous laughter, self-demeaning humor, browsing the Rust documentation for clues. I might explain a little Rust along the way.

My Good Friend Rust - An Introduction

Me speaking at Topconf in October 2017

  • Event: Topconf, October 2017
  • Location: Düsseldorf, Germany
  • Slides
Rust is more than a Systems Programming language; it's a new way of thinking about low-level code. It has strong safety and concurrency guarantees without sacrificing performance. It provides powerful abstractions that make Systems Programming both, easier and more fun. Let me show you what's in for you and why you should learn Rust, even though you might be a Web-Developer.

What's So Hard About Writing a Slack Client in Rust?

Me speaking at Rust Cologne in March 2017

  • Event: Rust Cologne, March 2017
  • Location: Chaos Computer Club, Cologne, Germany
  • Recording
  • Slides
  • Code
"I'll just write a simple API wrapper for that. Give me two hours." Does that sound oddly familiar? Don't be fooled: writing an easy to use, idiomatic abstraction layer is a lot of work - in any language. I want to tell you my story about writing a Slack client in Rust. From documentation to testing and error handling there's a lot of pitfalls to avoid and laughs to share.

Why Rust?

Me speaking at Codemotion in May 2016

  • Event: Codemotion, May 2016
  • Location: Amsterdam, Netherlands
  • Recording
  • Slides
Rust is the new kid on the block. It's a system programming language that is blazingly fast and offers powerful high-level abstractions better known from dynamic languages like Ruby or Python. Rust offers memory safety without a Garbage Collector and makes low-level programming easier and more secure. I will give an introductory talk about Rust and show some of its nicest features.

Rust Tooling

Me speaking at Rust Cologne in October 2015

  • Event: Rust Cologne, October 2015
  • Location: Chaos Computer Club, Cologne, Germany
  • Slides
What tools are available for Rust development? This talk gives you an overview of ways to help you write better Rust code.

The State of PyPy

Me speaking at Python Usergroup in April 2015

  • Event: Python Usergroup, April 2015
  • Location: Düsseldorf, Germany
  • Recording
  • Slides
PyPy is a relatively new implementation of Python with a focus on performance. In this talk I give an overview of PyPy and how it works internally. Also I talk a bit about PyPy STM, a new approach for parallel code execution that can take advantage of modern multi-core hardware.

This is just an excerpt. You can find all my other talks on Speakerdeck.
Page view statistics