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

There are some questions around Servo as a result of the announcement, so I just wanted to jump in and talk a bit more about what’s going on. tl;dr - Servo is Mozilla’s vehicle for web engine research, and continues to be a major source of new tech for Firefox. But we’re also adding a more direct path to product for Mixed Reality.

Servo has produced lots of great browser tech. We're seeing that tech make its way into Firefox with Stylo and the Quantum release, and there's on-going work to bring even more tech into Firefox, like the WebRender work that you can try out in the latest nighlies. Servo's goal is to create the best technology for working with both current and upcoming web standards, which means collaborating with multiple product teams, from Firefox to Mixed Reality to other, future explorations.

There’s still a long road to full compatibility with the existing web in all of Servo’s components, and it will take time to get there. In the meantime, though, there are emerging technologies where Mozilla believes it is vital for the open web to play a central role. One of these is Mixed Reality (which refers to both Virtual and Augmented Reality), a space that’s getting a ton of attention from all of today’s tech giants.

Mixed Reality is interesting for Servo in two different respects. First, it’s a huge opportunity: it’s early days and content is brand new, so there’s no long tail of web compat to worry about; we can get products built on Servo to market relatively quickly. By putting open web tech on the cutting edge, Mozilla can help ensure that Mixed Reality doesn’t become yet another siloed technology.

But second, the constraints of Mixed Reality will help us push Servo technology to the limit: we need to achieve 75 or 90 frames per second per eye to make a workable product. The research advances here will pay huge dividends back in traditional browser engines like Firefox.

In short, this is a “yes, and” shift. Servo continues to be about building the best browser tech, period, for use across Mozilla’s products. The increased emphasis on Mixed Reality represents an opportunity to push that tech further, sooner. And the organizational change within Mozilla Research reflects a closer collaboration between the teams needed to make that happen.

I distinctly recall Servo presentation in 2012. It started: "web browsers are written in C++. It is bad for humanity."

Web browsers are still written in C++. It is still bad for humanity.

Emphasis on mixred reality may or may not solve that problem sooner. Sometimes the quickest way can seem roundabout. But I am skeptical.

The OP blog entry is so inundated with PR speak it is hard to read the actual message from it.

What I'm reading from the top comment here is that the actual point is to focus Servo on VR and Mixed Reality, because it will pull Servo even more in the direction it was always supposed to go in. That is to create a browser that outperforms everything else by leaps and bound by being able to more easily take advantage of multicore processors. VR and Mixed Reality require 90 fps in order to work properly for users, so this is a very high and a completely hard baseline for Servo to have to hit. So it's about setting a loftier goal and a higher bar to meet in order to make sure Servo reaches it's original goal of great performance by way of parallelism.

I think, that does actually work out.

The problem for humanity is not that browsers are written in C++, it's that browsers have lots of security vulnerabilities.

Being written in C++ is not helpful with that, but it's not integral to the problem. It's not impossible to produce C++-code that doesn't have vulnerabilities, it just requires a lot of effort and often years of battle-testing to close all of them.

But Firefox's source code has for the most part had those years of battle-testing. It's probably safer than if you'd completely rewrite it in Rust, at least in the short term.

Where the use of Rust can deflect most vulnerabilities is in new code. And that's what Mixed Reality is. It's gonna need to be in the browser at some point in the near future and it is a big chunk of new code. It also has harsh performance requirements, meaning they'll have to work with parallelism, which is where C++ is particularly error prone.

So we continue to play wack-a-mole with the C++ codebase rather than develop in a language that makes whole classes of exploits impossible?

Firefox is not safe. It’s been routinely exploited by law enforcement and hackers alike.

Trust me, if Mozilla actually had a choice in the matter, they would opt for just having it all in Rust, too.

But there is no choice. Rewriting Firefox from scratch is going to take decades. Firefox has to continue to function in the meantime. They do occasionally replace components with equivalent Rust components from Servo, and that's so far been a great success, but it's still scary as all heck to take a software that millions of people depend on in their daily life and wholesale replacing the CSS engine, URL parser or media decoder in it.

Besides that, it's not like Chrome/Opera, IE/Edge or Safari are bastions of security. Users can't go anywhere that's decisively safer.

It was wrong then, it remains wrong now.

Plenty of warts in C++, but at the end of the day, along with C, it is the systems language that powers 99% of the world's computing infrastructure at any level that's not a CRUD app or a throwaway script.

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