Tim te Beek

From boy scouting to redrawing the landscape

The 'boy scouting rule' says to leave code cleaner than you found it. But what happens when the entire landscape needs redrawing?

From boy scouting to redrawing the landscape
#1about 3 minutes

The "boy scouting rule" for incremental code cleanup

The common practice of making small, localized improvements to code has limitations when dealing with large-scale technical debt.

#2about 2 minutes

Introducing OpenRewrite for automated code transformations

OpenRewrite is an open-source framework that provides safe, automated code transformations to address technical debt at scale.

#3about 1 minute

Using a Lossless Semantic Tree for accurate changes

OpenRewrite builds a Lossless Semantic Tree (LST) of your code to make precise changes while preserving formatting, style, and comments.

#4about 2 minutes

Three ways to write your own custom recipes

You can define custom code transformations using simple YAML files, declarative Java with annotations, or the imperative visitor pattern for complex logic.

#5about 2 minutes

Composing recipes for large framework migrations

Complex upgrades, like moving to a new Spring Boot version, are achieved by composing thousands of smaller, targeted recipes together.

#6about 8 minutes

Demo of modernizing a legacy app in IntelliJ

A live demonstration shows how to use the OpenRewrite IntelliJ plugin to automatically upgrade a project from JUnit 3 to JUnit 5 and adopt modern Java features.

#7about 3 minutes

Demo of scaling changes across repositories with a CLI

The Moderne CLI enables running recipes across hundreds of repositories locally, using pre-serialized LSTs for fast execution and generating patch files.

#8about 4 minutes

Demo of the Moderne platform for enterprise-wide insights

The Moderne platform provides a web UI to visualize tech debt, run migrations across thousands of projects, and create pull requests in bulk.

#9about 1 minute

Preventing tech debt with automated pull request checks

Integrate OpenRewrite into your CI/CD pipeline to provide automated suggestions on pull requests, preventing old code patterns from being reintroduced.

#10about 2 minutes

Understanding OpenRewrite vs the Moderne platform

OpenRewrite is the open-source engine and recipe collection, while Moderne is the commercial platform that provides speed and scale through serialized LSTs.

Related jobs
Jobs that call for the skills explored in this talk.

Software Engineer

tree-IT GmbH
Bad Neustadt an der Saale, Germany

Remote
Intermediate
Senior

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.

Rust and GoLang

Rust and GoLang

NHe4a GmbH
Karlsruhe, Germany

Remote
55-65K
Intermediate
Senior
Go
Rust