Hacker News new | past | comments | ask | show | jobs | submit login

What’s the status of the Rust project after recent Mozilla layoffs? How much does Rust depend on Mozilla?

Mozilla employs a small number of people to work on Rust fulltime, and many of the Servo people contributed to Rust too, even if it wasn't their job. They also pay for the hosting bill for crates.io. They also own a trademark on Rust, Cargo, and the logos of both.

Two people from the Rust team have posted about their situation, one was laid off and one was not. Unsure about the others. Many of the Servo folks (and possibly all, it's not 100% clear yet but it doesn't look good) have been laid off.

The vast majority of contributors and team members are non-Mozilla, though the Mozilla folk are very important. Rust will survive. This situation is very painful, and it has the possibility of being more so, but (thanks to a lot of work from people (not speaking of myself here) who used to be at Mozilla!) Rust is bigger than Mozilla, and has been on a long road towards diversification. Some other companies have stepped up to pay a bunch of the bills that Mozilla used to pay, namely Amazon and Microsoft. Here's hoping that we get even more involvement in the future.

If Servo is a dead end (by the sound of it), what is the new "halo project" that showcases Rust's use in something non-trivial and widely-used/public? (Not trying to rub salt in the wound, geniunly interested.)

Tons of stuff. We've got everyone in FAANG but Netflix, Microsoft, Cloudflare... different people have different definitions of "widely-used/public."

Anyway, two big projects in a similar space to QEMU are Firecracker (the underlying virtualization tech for AWS Lambda + Fargate), and Crostini (the underlying virtualization tech for ChromeOS). Firecracker started life as a fork of Crostini and now there's a rich ecosystem going on in this space.

Don't forget the Rust code from Servo that lives in Firefox, too.

Thanks. With "widely-used/public" I was hoping for something open source that runs on many people's machines (like a web browser) or at least on many company's servers (like qemu) as opposed to running on a single company's servers in a controlled and uniform environment.

Both of those things are open source, incidentally :)

Yeah, it's tough to get the combo of all of those things, for other reasons too. I would probably want to first reach for VS: Code, which uses ripgrep for search. But that's a "important component written in Rust", rather than a whole-Rust project. There's tons of tools like ripgrep, which is the most well-known, but it's hard to say how popular they are. And there are things like 1password, which do run on people's machines, but aren't open source.

I actually have recently seen a bug report that implies something really, really huge in this space, but I don't want to jinx it, so I'm not gonna link just yet. We'll see :)

The crosvm project which powers crostini is both open source ( https://chromium.googlesource.com/chromiumos/platform/crosvm... ) and on many people's machine (most Chromebooks) which might fit some definition of not controlled and not uniform.

Firecracker is fantastic, but it's also --- to its great credit --- substantially smaller than Servo.

100%. I picked it because we're in a thread about QEMU, and it's an important part of a well-known product. I am also glad that it's a lot smaller, as it should be. I figured that, when discussing a "halo project," popularity is more important than sheer size.

A lot of the code from Servo is now in Firefox, and will live on.

If widely-used doesn't imply open source then there's a lot of options. Dropbox use Rust in their sync client, as well as in their storage backend. Cloudflare are using it for their VPN. Microsoft are rewriting parts of windows in it. Amazon are using it for their Firecracker micro-vms that power lambda.

To be clear here, while Servo is a wonderful project and was definitely pivotal in making sure that Rust was useful for building real-world software, calling it "widely-used" is a bit of a stretch. The individual crates that were written to implement pieces of Servo have found widespread adoption, but Servo itself was not something that had millions of users. (n.b.: we did ship Servo's style engine in Firefox as part of Quantum, but that was just one piece of Servo.)

I imagine AWS wouldn’t abandon Rust after the investments they’ve made in using it to speed up their VMs/Lambda. And they are a sponsor.


Also Microsoft/GitHub are sponsoring their build servers, so that's not a cost for Mozilla https://blog.rust-lang.org/inside-rust/2020/07/23/rust-ci-is...

There were talks about creating Rust's own Foundation, to secure financing independent of the mess that Mozilla has become. Not sure if that went anywhere.

We’ve been working on it, and be “we” I mean “not me personally but the core team generally.”

It’s not so much about finance as it is holding the trademark, imho.

Cool, hope it works out and soon, I have little trust left for Mozilla under current management. Wish you all the best (and by "you" I mean you and also the entire Rust team!)

The message in Mozilla laying off the Servo team, for me, isn't so much that Rust is dying as it's about a team making their programming language a priority can't at the same time focus on their actual task ie developing a browser. What a missed opportunity to specify web layout in a constraint formalism (and I hate to always be right).

The Servo team and Rust team were two different teams, so this doesn’t follow.

Evidently they can. The Servo parts are the only things that are fast in Firefox.

The Servo parts in FF is a CSS "engine" right? My expectation is that at some point it gets rewritten to C++ like the rest (layout, RT, API, fonts, parsing, JS, UI) because having a minor part written in Rust (with an extra build system, test framework, API bindings to maintain) is only a hindrance to building a team able to pickup work of other members. Especially when that other language has failed to deliver, and not even demonstrated the feasibility to develop a competitive JS VM, nor fast-enough binding to eg FreeType.

Stylo, the component you're talking about, was written in Rust after multiple attempts to write it in C++, which all failed. So, I would hope that that isn't what happens. It sounds like a waste of time.

> having a minor part written in Rust

"every single CSS bit touches this code" isn't a minor part, and it's not the only part. https://4e6.github.io/firefox-lang-stats/ is a sorta flawed metric but it reports nearly 10% being Rust.

WebRender is the biggest part in FF.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact