Rust Belt Rust 2019
2019-10-18..2019-10-19
Dayton, United States
[Rust Belt Rust 2016, Rust Belt Rust 2017, Rust Belt Rust 2018, Rust Belt Rust 2019]
who it's for
Rust developers, compiler engineers, embedded engineers, IDE and tooling developers, documentation and site maintainers, testing and QA engineers, community and workshop organisers
topics
Unicode string handling in Rust; CJK and Han unification history; web server architecture with Postgres; Diesel versus raw SQL; structured logging with slog; Polonius borrow checker model; type-level length proofs in Rust; integrating Rust into legacy embedded; docs.rs build and infra migration; metamorphic testing harness (monarch); bitvec guided compiler tour
| title | author | length |
|---|---|---|
| Unicode in Rust - Illustrated by Kanji | Jenny Manning | 21m |
Rust claims strings are UTF-8 and therefore cannot be indexed as characters; attempting to slice by bytes can panic because code points span 1–4 bytes… | ||
| Tips for Writing a Web Server and Beyond | Apoorv Kothari | 23m |
Fin is a working non‑trivial web server implemented for Rust that demonstrates concrete decisions: Postgres for storage, Diesel tradeoffs vs raw SQL, and a… | ||
| Are we *actually* IDE yet? A look on the Rust IDE Story | Igor Matuszewski | 25m |
Compares two concrete implementations: RLS that shells out to rustc and emits save-analysis JSON with noticeable latency and weak completion, and rust-analyzer… | ||
| Polonius: Either Borrower or Lender Be, but Responsibly | Niko Matsakis | 35m |
Polonius implements a concrete alternative to NLL by modeling where references originate rather than where they might be used, so it actually accepts the extra… | ||
| Introducing Rust into a Legacy Embedded System | Steven Walter | 26m |
Company printers run Linux and teams introduce Rust into legacy C/C++ firmware using meta rust and cargo-bitbake to cross‑compile and integrate with bitbake… | ||
| Type Theory for the Working Rustacean | Dan Pittman | 19m |
Shows exactly how Rust’s type system is used to mimic dependent types: defines a type-level natural via a gnat trait, implements a size-proof Vec that carries… | ||
| The Death and Rebirth of Docs.rs | Quiet Misdreavus | 18m |
Origins as crates.fyi originate as a first Rust program that uses about 4 MB of memory versus the original Perl script’s 800 MB, grows into docs.rs, and… | ||
| How to Organize a Workshop Across Continents | Phil Fried, Daan van Berkel | 04m |
Five minutes of high‑level claims about running a cross‑continental workshop but the upload contains only a machine‑caption mess and a short uploader note… | ||
| Metamorphic testing | Zach Mitchell | 05m |
A Rust implementation called monarch applies metamorphic testing by taking an initial input, applying every combination of N transformations to produce 2^N-1… | ||
| Oracle bone script | Jenny Manning | 05m |
Asserts that oracle scripts are symbols carved into ox shoulder or turtle shell and used by Shang priests for divination with cracks made by a hot implement… | ||
| Writing Hello World in 0x A Presses | Cassie Jones | 04m |
Claims a Rust binary can print Hello World without ever typing the letter A by using shell tricks and entrypoint hacks, and demonstrates the concrete sequence… | ||
| What happens when you give blood | Jess Sacksteder | 05m |
About 40–60 donations totaling roughly two gallons lead into a routine: stop taking aspirin 48 hours before, make an appointment or walk in, show photo ID, and… | ||
| How to run a RustBridge event | Jonathan Knapp | 05m |
Step‑by‑step playbook for running a one‑day RustBridge workshop: recruit co‑organizers and meet weekly, use Trello and Google Forms for logistics, lock a venue… | ||
| Why maintaining winit is hard | Holden Marcsisin | 05m |
winit maintenance is about grappling with platform quirks not abstractions: Windows and macOS start inner event loops during resize, iOS only offers a run that… | ||
| A tour of the compiler guided by bitvec | Alexander Payne | 06m |
bitvec implements a pointer-to-bit-slice that packs a byte address and a three‑bit offset into a larger slice pointer so it can be transmute‑returned as a… | ||
| nothing matches | ||