So we started shipping WebRender in Firefox a few weeks ago. Completely new rendering engine written in rust, big departure from how we approached rendering before. We are gradually enabling it for different hardware/OS configurations and a couple of million users have it now.

What's kind of blowing my mind, having worked on 3 large-ish rewrites, is that since WebRender shipped, telemetry has reported less crashes per user with WebRender than without.

This is *not* how big rewrites usually go.

If anything, this is a testimony of how rust can help with writing reliable software. There is no way things would have been that smooth from the beginning had we written it in C++.

@nical rust seems to help in stability, indeed...

on related : any info on when we could expect WebVR to work on headsets on linux ? (OpenVR/OpenXR ... ? ) (as it seems related)

@Olm_e I have no idea about the status of WebVR related stuff.

@nical ho, ok... thanks, sorry for poking ... was probably misled by one of the last comments there...
we are waiting for so long for this to work on linux while seeing other fancy toy worked on, that it's a bit disapointing ...
(hope things move on at some point)

@Olm_e no worries it's just happening in another team and far from my time zone so I haven't kept track of where they are at

@nical One of my favorite overlooked features of Rust is how you typically have to say the magic "please crash" words to make it crash. I mean in most situations it's pretty much explicitly laid out whether or not a function will panic. Rust actually helped me understand an important concept of computing: software always crashes because we programmed it to crash and not keep on going when something unexpected happens.

@nical plot twist: crash-reporting telemetry is what's crashing. 🙃

On the for real though, kudos, y'all!

@nical @akien Awesome. Great work, Nicolas. Now if only Firefox could move *away* from anything related Chrome.

Sign in to participate in the conversation
Gamedev Mastodon

Mastodon server focused on game development and related topics.