Speaker: Lily Mara

(She / her / hers)

Engineering Manager @OneSignal

Lily Mara is an Engineering Manager at OneSignal in San Mateo, CA. She manages the Infrastructure Services team, which is responsible for in-house services used by other OneSignal engineering teams. Previously she was a software engineer at OneSignal, leading the efforts to create OneSignal's integration with Mixpanel, develop the outcomes system, and improving performance and code simplicity through refactoring efforts. Lily also worked as a software developer at Kroger, working on Kroger’s online grocery ordering system as well as internal development tools to aid other teams in deployments, monitoring, and local development environments.

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. They turn into seemingly never-ending projects due to bugs reemerging - bugs the old system contorted itself into to fix. In pursuit of improving performance, we can 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
  • Write a Rust reimplementation of existing behavior
  • Cross-language regression testing
  • Performance benchmarking of the new code

Date

Wednesday Apr 6 / 11:50AM BST (50 minutes)

Location

Mountbatten, 6th flr.

Track

WebAssembly & Modern Systems Programming Languages

Topics

Rust

Add to Calendar

Add to calendar

Share

Session + Live Q&A

What's Next for Rust and WebAssembly

Most people have heard of Rust, due to the vibrant and happ[y community around the language, exemplified by it having held the top spot as the 'most loved' language in the Stack Overflow developer survey for the past six years. However, few of us get the chance to use this delightful language in our day-to-day work.

WebAssembly is a new runtime, born in the browser, yet making a significant impact as a versatile runtime for a wide range of applications (FaaS, blockchain, plug-in). 

There is a close synergy between WebAssembly and Rust - Rust is both an ideal language for writing WebAssembly applications and for creating WebAssembly runtimes. In this panel we'll explore this synergy, and see where the combined might of WebAssembly and Rust might take us.

Date

Wednesday Apr 6 / 01:40PM BST (50 minutes)

Location

Windsor, 5th flr.

Track

WebAssembly & Modern Systems Programming Languages

Topics

WebAssembly

Add to Calendar

Add to calendar

Share

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.