JS Conf JP

Irina Shestak

Irina is a Berlin-via-Londong-via-Vancouver engineer writing JavaScript and Rust over at MongoDB. Irina has given talks at conferences around the world about her various adventures in the world of programming, including JSConfAU, NodeFest Tokyo, NordicJS and BrazilJS.

Outside of writing code in the code editor™, she makes zines (such as Data Ownership in Rust, Traits Traits Traits, A Smol Zine on HTTP/2), pets her cats Chashu and Nori, and maintains (give or take) 40 house plants.

JavaScript, Rust and Wasm Walk into a Ramen Shop ...

12/01/2019, 13:30 - 14:00
Room: A
Spoken language: en

So you heard you can run WebAssembly in the browser, but what does this look like IRL? Seeking the much talked about performance benefits of running Wasm in the browser, Compass (GUI for MongoDB) took the great leap forward and rewrote part of the application -- a schema parser responsible for document analysis -- in Rust. As it turns out, the rumours are true, I repeat the rumours are true: offloading parts of your application to Rust makes it fast, and in some of our cases, heaps fast.

In this talk I will cover converting a part of an codebase from JavaScript to Rust, bringing it to Electron, adding Wasm to an existing React app, and deploying this whole lot to production. As Compass still talks to MongoDB via Node.js, I will also cover how we used Rust to improve performance without losing data integrity. This talk is about a success story, but also about a bunch of smol mishaps, fun woopses and lil' dead ends we encountered and how we managed to overcome along the way.