June 28th, 2019
Conference introduction: birth of RustLab
Develer's CTO, Giovanni Bajo, illustrates the birth of RustLab.
Open Sesame! A simple majordomo system built with Rust
A Rocket backend at the center of a coworking entrance management. Points the talk could touch: - project overview - armv6 xcompiling (issues) - how to (partially) mitigate slow compile times - leveraging Rust strong typing and crates to deserialize data - cargo-deb to deploy and run cargo-free.
From C to Rust and back
Rust provides a seamless way to consume and provide a C-compatible ABI.
We’ll explore the tools available and the best practices to integrate rust-components in a larger C projects, C/assembly components in a Rust projects and expose a Rust crate as a normal C library.
Coffee break
An unfair battle
This is the story of how I started optimizing a python microservice at work, while learning Rust at home. After having read “The Rust book” I tried to reimplement the algorithm in Rust as an exercise, and the results were astonishing.
Lunch
Machine Learning is changing - is Rust the right tool for the job?
ML is eating the world but it has just started to grow out of its engineering infancy.
New patterns and processes are emerging to build ML products while existing tools are showing their limits. New directions are being explored and Rust can play a major role in the future of the ML industry.
Neobuffer: Safe, Lock Free, Cross-Process Channels in Rust
Neobuffer allows us to perform cross-process communications with extreme performance (upward of 12310MB/s) in safe Rust. It is an extensible framework for writing custom channels in Rust as well. In this talk we’ll discuss the motivations behind Neobuffer and it’s current implementation.
Coffee break
How to write Rust instead of C, and get away with it
Ever tried optimizing a slow Python application and thought: “Oh! I wish I could just write this bit it in Rust”? Well, turns out you can! Let’s discuss why Rust is a better choice than C, how to use Rust to make your apps lightning fast and how to get away with it; without your users even noticing.
Asynchronous networking
This talk will basically explain how mio, futures and tokio work together, which mistakes we made in our code base, what the challenging parts were, what the challenging parts still are, how we plan to make our asynchronous stack compile for WASM to run in the browser, and how we envision the future.
Rust Cocktail
June 29th, 2019
Making life easier with Derive and other tools
I’ve been working on Servo since 2016 and have accumulated quite a few interesting stories to tell, I’ll be talking about how we use derive and other kinds of procedural macros to avoid repetitive error-prone code and even increase the global safety of the code base.
Writing modern command-line applications in Rust
---
Writing a Nintendo 64 emulator in Rust
Giovanni has a solid experience in Open Source and developing emulators for many HW platforms. In this talk he tells us about this experience from the early stages as a MAME contributor and what lies behind a videogame architecture, focusing on how he laid the groundwork for his Nintendo 64 emulator in Rust project.
Coffee break
Fearless Security with Rust
Safety! Concurrency! Fearlessness! Rewrite it in Rust!
But what actually happens when you rewrite code in Rust? This talk will examine how Rust achieves memory and thread safety, then look at the security implications of rewriting a browser component in Rust.
Safe and Simple Rust Smart Contracts in NEAR
We will start by explaining why Rust is one of the best languages for smart contracts.
We will explore the technology stack that implements Rust smart contracts.
Lunch
Deliveroo: Ruby to Rust
This talk will describe how we rebuilt our Ruby application in Rust, piece-by-piece: a class at a time! The talk will discuss the problems we faced with our Ruby code-base, how Rust would help us solve them(!), and then how we went about performing the migration in just a few months.
Writing web services with Rust
---
Syscalls for Rustaceans
Even if you haven’t used Rust’s nix package, and have just written println!(“Hello, World!”), you have most certainly used syscalls. In this talk, you will learn what syscalls are, how they work, how you can track them using strace and how you can write your own syscall tracer (strace) in Rust!
Adopting Rust by gracefully oxidising web applications
I explore how I migrated some of my web services to Rust, and my experiences.