
Speaker: Lily Mara
(She / her / hers)
Engineering Manager @OneSignal
Lily is the author of Refactoring to Rust, an early-access book by Manning Publications about improving the performance of existing software systems through the gradual addition of Rust code.
Session + Live Q&A
Blazing Fast, Minimal Change - Speed Up Your Code by Refactoring to Rust
In order to improve the performance of existing applications and services, we can identify the most performance-critical pieces and reimplement them in Rust as opposed to completely rewriting the applications from scratch.
It’s tempting when we hear about a new technology or language to want to rewrite everything using that technology. Start over with a clean slate and fix all the problems of the old system. The new shiny system will surely be better than the last one! The constraints of reality often encroach on this fantasy as rewrite projects stretch to infinite timelines as bugs that the old system contorted itself to fix years ago reemerge. In pursuit of improving performance, we can instead rewrite only those pieces of an application that are truly important to performance and use cross-language bindings in order to link existing code bases with code written in Rust.
In this talk, we will take an existing codebase and rewrite part of it in Rust. We will focus on:
- Determining the feasibility of this type of refactor
- Identifying the pieces of the application most in need of performance improvement
- Write a Rust reimplementation of existing behavior
- Cross-language regression testing
- Performance benchmarking of the new code