hard to define what rust is for, as you can use it for everything
it’s the foundation other things are built on
rust is for “foundational software”
foundational software is not inaccessible
Amazon dsql was built in kotlin, performance in data layer wasn’t good enough so rebuilt in rust. Then didn’t work with control plane well, so also rebuilt that in rust
historical takeaway
Amazon bet on java and it paid off
allows them to get juniors in and not mess up the system with memory bugs
rust has that similar property
risks
well maintained is not a single maintainer
are security fixes backported to version 0.0.2 crates
rust upgrades make me nervous
Julius Gustavsson - Rust at Volvo Cars
intro
“for decades we have been trying keep rust out of cars, now we are trying to get it back in” ace opening joke
low power processor team
first automotive to have ECU in rust
previous setup was basically raspberry pi 4 with infotainment system
first VHAL in Rust → when it compiled it worked
core computer low power component
always powered on, needs low power consumption
Team
team of 4, engineers
embedded engineer with curiosity mindset
external help with drivers and issues
ci
new platform was stackable
stack of boards runs all of the patches
stats proeict
170kloc
70 3rd party libraries
experiences like Google survey
2-4x productivity
high confidence in correctness
code easier to review
100x less bugs per developer per year
safety critical space
“compliance by construction”
90% if effort is spent on verification
2% of revenue spent on warranty costs
safety vs security
safe to use → avoid modifications
safe from hacking → keep it up to date
these are fundamentally opposing forces, but rust can be solution
mark Janssen - Rust at the Dutch Electoral Council
Kiesraad software tools
calculated totals get computed
data is input twice
air gapped software
backend written in rust
why rust
open source
run on open source
easy to deploy
libraries
sqlx
typst for pdf
experiences
helped to attract senior developers
medior developers were able to learn
Jeffrey Vander Stoep - Transitioning to memory safety: lessons from the Android project
can we make fewer tradeoffs with better tools, like rust?
exponential decay pattern in vulnerabilities → young code has the most vulnerabilities
the best thing we can do is work on prevention
Google Development
started in q3 in 2020
In q4 2024 more rust going in than c/c++
exponential transitioning feels very slow at the beginning
published results
new memory unsafe code correlates highly to the amount of vulnerabilities, and have both been decreasing rapidly
security improved while security costs went down
reviewers are spending less time ok reviews, and the code is better
introduction is non trivial
stage 0: customer focused rust team: assemble team that make sure that rust teams are successful