Readit News logoReadit News
lastontheboat · 5 years ago
We've been cagey about this over the months since the Servo team at Mozilla was disbanded, since there were various moving pieces that needed to fall into place. We're excited about the possibility for Servo to continue growing and evolving in its new home, though!
simias · 5 years ago
What's the plan exactly? Will there be a Servo browser that integrates the servo rendering engine with some open source components (for instance from Firefox, WebKit or Chromium) that will let us use the engine stand-alone, or is it "just" going to be an engine for embedding in third-party programs?

The former seems like it would be a huge amount of work, but if it's the latter I fear for the long term survival of the project because it's going to be hard to build a community around such a project IMO.

Or is there a possibility that Firefox will try to integrate Servo even if it's developed outside of Mozilla? Seems unlikely to me.

nvrspyx · 5 years ago
A third-option that I would like to see is extending the latter to an Electron alternative (aka using Servo as a cross-platform GUI). There's definitely positives to Electron, but it would be nice to see a more performant, less memory hungry, and more battery friendly alternative.
sergiomattei · 5 years ago
This is also my concern. Everyone's cheering on, but I'm just thinking... What's the mission and end goal now?

Previously it was doing research, with the possibility of landing in Firefox. Now that's highly unlikely.

throwaway894345 · 5 years ago
With respect to the latter, I agree that it seems unlikely that the project would attract users. Maybe it’s my own ignorance, but I don’t know what kind of apps (besides web browsers) would want just the web rendering engine and not various other components in a web browser. What are the responsibilities of a “web rendering engine” anyway? How tightly coupled is it to the DOM? Does it “own” the DOM, or is that owned by some other component in the browser? In the latter case, how are the relevant aspects of the DOM communicated to servo? And does the rest of the web engine query servo for things (e.g., “what are the exact coordinates of this <div>?”)? If this engine ends up not being so web-specific, then maybe it could be used as a replacement for Skia, more or less.
LockAndLol · 5 years ago
The latter would be better, imo.

Chromium won because it introduced a sane API before Mozilla's Gecko. That's why you see so many Electron apps. Seriously, we don't need to wrap a whole browser. Just the engine and a debugger would've been fine.

The engine could be distributed as a lib and other frameworks could just bind it. Apps could be distributed without an 150MB behemoth just to have a chat client.

Making the engine also mobile compatible would mean Android and iOS could maybe have the same base. I also look forward to what this means for Linux phones. Custom browsers could be written for those that don't have to use WebKit or try to launch Chromium or Firefox on a mobile device.

Not only for mobile devices, but also displaying things in VR can be made significantly easier if you don't have to write all the UI yourself. Give it an opengl rectangular surface (or vulkan?) and you can then use web technologies to make UIs in VR.

All in all, I'm very for an engine. It would definitely allow a competitor with a good name to enter the market. Developer should be able to reach for something else than WebKit because nobody in their right mind is going to reach for Gecko.

an_opabinia · 5 years ago
It’s tough. People really do want Flash, it’s just Google Chrome now.

The bigger question is when will Mobile Safari retire its WebKit fork? What role will Servo play in that inevitable end point?

wiz21c · 5 years ago
Hmmm Well, I'm not in the business, but if the team was disbanded, then where's the knowledge gone and who will be the next paid team ? I ask because I guess Servo is not the kind of project you just commit some patch over the weekend...
barkingcat · 5 years ago
Well, it could be. Almost all open source projects are like this. If you find a typo in a readme file, put in a pull request.

Do 10 of those, and you'll probably have enough understanding to fix one off errors in the documentation.

Do 10 more of those, and you might start answering questions from other people re: how to help the servo project.

Answer 10 of those questions, and you might go, oh hell, I'm already answering questions, why don't I write a blog post introducing people to the servo project so you aren't repeating the same thing over and over again.

write 10 of those kinds of articles, and you'll be ready to be mentored by the great servo and rust community and start making larger code changes, algorithm changes, implementing a feature that you really wanted,

and so on.

You gotta start small!

lastontheboat · 5 years ago
Honestly the project has had >1000 contributors over the past 8 years and a lot of them did just that.
networkimprov · 5 years ago
I looked for a list of projects currently embedding Servo, or planning to, but didn't find one.

Is any software embedding it now?

kbumsik · 5 years ago
Servo is not production ready yet. We don't even know how may years it will take for 1.0. So no software would use it for now.
andrewmcwatters · 5 years ago
Kinda hard when they don't even tell you how.
erickt · 5 years ago
This is great news! I'm glad Servo found a place to land. Are you planning on sticking with the MPL-2.0 license, or are you also considering relicensing as well?
lastontheboat · 5 years ago
There is no plan to relicense at this time.

Deleted Comment

webmaven · 5 years ago
I don't imagine this is news to you, but just in case, the 'Contributing' link 404s.
vanderZwan · 5 years ago
Tangent: is your username in combination with that comment a reference to the Mozilla Lifeboat?
lastontheboat · 5 years ago
No, it was a name I took when joining a bunch of social sites back in 2012 and feeling like I was the last person in my circles to do so.

Deleted Comment

codys · 5 years ago
Can you talk a bit about the "moving pieces" and/or the process here? Interested in the process of doing this type of migration.
SimonSapin · 5 years ago
There’s things like finding an agreement over https://uspto.report/TM/87796973 and setting up everything in https://servo.org/governance/. And on the technical side, although it’s not a blocker for announcing: https://github.com/servo/project/issues/25

Dead Comment

hobofan · 5 years ago
Pretty good news day for Rust between this, min_const_generics stabilizing[0], and CXX 1.0 (including a nice "book")[1] being released.

EDIT: Oh, and the Rust performance book[2].

[0]: https://github.com/rust-lang/rust/pull/79135

[1]: https://cxx.rs

[2]: https://nnethercote.github.io/perf-book/

black_puppydog · 5 years ago
I'm happy to hear servo is going to continue to exist.

Please forgive the beginner's question: my understanding is that servo is "just" an engine, which needs to be wrapped into a browser to really become usable. I've just tried (not for the first time, btw) your tech demo, which I think illustrates this perfectly. The rendering was lightning fast, but it's not a full browser.

You state that your goals are "to provide a high-performance, safe rendering engine for embedding in other applications."

Given that browsers are notoriously big software projects, do you think it will be an obstacle that servo is no longer tightly integrated with any sizeable browser project?

Of course, I'm asking because I'm really afraid that the amazing effort that is servo might dwindle into irrelevance simply because there is no "killer app" for it, and embedding it into several small/niche products simply doesn't generate the same involvement as a web browser.

Manishearth · 5 years ago
Servo was never tightly integrated with a sizeable browser project. It shared some components with Firefox, but the only time Servo itself was inside an actual browser release was Firefox Reality for AR. Which still exists, though I'm not sure what the future of development for it will look like.
dralley · 5 years ago
I was holding out some hope that maybe Valve or Microsoft would consider it a worthwhile project to invest in.
Finnucane · 5 years ago
Presumably any app that wants this kind of rendering could make use of it, not just browsers--consider all the apps that now use Electron for this.
coddle-hark · 5 years ago
Electron (WebKit) is much more than a rendering engine though. Sure, you could use Servo in a desktop app, but you’d have to also bundle all the other browser components (a JS engine, for example) individually. You’re basically building a browser at that point.
baq · 5 years ago
With the growing concern about browser monopoly and engine monopoly going against everything the web was intended to be, are you planning on acquiring funding from government grants? EU at least used to give out money to interesting projects, is there hope for servo to get some?
smarx007 · 5 years ago
Quite possible. But you need an EU entity for that and it's likely why Eclipse Foundation (Eclipse Foundation != Eclipse IDE for those who are not aware but rather a competitor to Apache and Linux foundations) has moved to Europe: https://newsroom.eclipse.org/news/announcements/open-source-...
caniszczyk · 5 years ago
Indeed, as an FYI the LF is truly "Foundation as a Service" and has entities in the US, EU, Japan and China. The RISC-V Foundation (hosted by the LF) is even based out of Switzerland.
arendtio · 5 years ago
I am confused. I thought it is the raison d'être of Mozilla to develop a browser. So how does it come that the brand new browser engine they developed is being given away?

I mean, even if they need to cut costs, isn't Servo part of the team they should keep until the end?

phonon · 5 years ago
Because they wanted to "put a crisper focus on new product development and go to market activities."[1] I'm sure that explains it well...

[1] https://blog.mozilla.org/wp-content/uploads/2020/08/Message-...

stuaxo · 5 years ago
I'm guessing that the "new products" are not the browser.
konjin · 5 years ago
>I am confused. I thought it is the raison d'être of Mozilla to develop a browser.

To put it bluntly: Mozilla is no longer a browser company. It is a patsy for google to point to and say "See we're not a monopoly.". Secondary goals are increasing the supply of devs for big tech and lowering wages.

account42 · 5 years ago
> lowering wages

Except for the leadership.

NetOpWibby · 5 years ago
oof
tyre · 5 years ago
There is some cost/effort to building a better browser engine. They might believe that the same cost/effort would better benefit the business if put elsewhere.

You see this at companies when engineering teams get it into their heads that they need to rewrite in a new framework. There's a trade-off between that work and building new features for customers. The benefits might be worth it in the long term! They also might not be.

That seems to be the call Mozilla made. I don't know if it's the right one, but it seems to be what they did.

coldtea · 5 years ago
>There is some cost/effort to building a better browser engine. They might believe that the same cost/effort would better benefit the business if put elsewhere.

Yes, because all those years the Mozilla executive team has proved that they have a good grasp of where the cost/effort optimum lies... /s

Shared404 · 5 years ago
My understanding is that Servo was more experimental research, with an eye towards possibly being integrated at some point.
gilrain · 5 years ago
Except multiple parts of it had already been integrated into Firefox, providing its most recent performance gains (Webrender, Stylo).
brabel · 5 years ago
Does Firefox have any Rust component at all if Servo is not apparently used at all by it, currently?

People have been claiming Firefox components were written in Rust for ages, usually meaning Servo, but it seems now that those claims were just misleading.

mlindner · 5 years ago
A lot of people misunderstand what Servo was. It was for developing components that could be integrated into a browser. Firefox integrated most of those and continues to develop more code in Rust. Servo lost it's use.
mariusor · 5 years ago
From an outsider point of view, I feel like Mozilla really missed the opportunity to invest in servo as a real world renderer and build a community around it. In this day and age is a shame that various out-of-date versions of webkit are the only things that you can build a niche browser on.

By niche I mean the myriad of keyboard driven browsers. kiosks, QML, electron, etc.

NetOpWibby · 5 years ago
Damn, so Mozilla just threw away Servo.
JohnBooty · 5 years ago
I most definitely agree.

All I can think is that they took a look at Servo and decided it was cool tech but was really nowhere near delivering things they needed for Firefox aside from Stylo which it had already delivered.

stuaxo · 5 years ago
But the things being delivered by it were mostly being developed by Mozilla devs.
gilrain · 5 years ago
And Webrender.
bytematic · 5 years ago
That seems to be what everyone was wondering about when they laid off a large portion of their web teams
CodesInChaos · 5 years ago
How many paid developers will it have now, and how many did it have at Mozilla?
paulrouget · 5 years ago
None at the moment. Help is welcome: https://servo.org/#support-and-donations :)
CodesInChaos · 5 years ago
I have a hard time believing that a project as ambitious as servo can survive without several paid core developers.
geogra4 · 5 years ago
Right - unfortunately I feel like this is the most important question. I would have loved for someone with deep pockets like MS to take over servo. (Or even like Alibaba or Tencent)
exikyut · 5 years ago
Wow, this is awesome.

- Mozilla engineering finally gets the green light to beat Chrome through a from-scratch rendering stack

- This skunkworks initative popularizes the world's first viable C++ contender and interesting "mainstreamable" programming language

- Manglement suddenly lays off the teams responsible for both projects (Rust and Servo)

- Some awesome person from the trenches convinces said manglement to release governance of the rendering engine so it can be developed independently ((of said manglement))...

- ???

- Profit...?

This is real engineering and strategic problem solving. It's inspiring to see.

What is very annoying is that a Mozilla-branded web browser already took the "Phoenix" product name. :(

pqoek · 5 years ago
Why is Mozilla not betting on Rust anymore?
vorpalhex · 5 years ago
Mozilla has decided to move to a different mission less about improving the web and more about enacting things that make them money, so they can continue to pay a large CEO salary and push policy objectives against free speech.

Unfortunately Mozilla seemed to go from "awesome" to really disappointing in a very short time window.

simias · 5 years ago
What even is Mozilla betting on at this point?
untog · 5 years ago
It seems like they're just not placing big bets now. Creating an entire new programming language is a big bet, one that I'd argue already looks like it's paid off, but Mozilla has decided their future is as a much leaner company that does fewer experiments. It really is a shame.
est31 · 5 years ago
IDK they put a lot of resources into the quantum project and it didn't really increase their market share, in fact in Germany it dwindled more quickly. Now it's stabilized again IIRC but which signal does that send to management? The market didn't reward Rust adoption, as successful as the language is outside of the browser.
baq · 5 years ago
the CEO needs a new house.
webmaven · 5 years ago
This is encouraging. An Electron competitor would be really nice.

I'd be especially interested in an Electron-but-for-Python, along the lines of PythonWebkit: https://www.gnu.org/software/pythonwebkit/

olah_1 · 5 years ago
The rust electron competitor is already here https://tauri.studio/en/
Nkuna · 5 years ago
Interesting project as they seem to be tackling the same problem as the Flutter team whom started with mobile and are steadily working their way up the stack.

Though it should be said repurposing a desktop first framework for a mobile paradigm is much harder than the inverse.

Cheers for this. Definitely keeping tabs on the project.

webmaven · 5 years ago
Nice!

Okay, so now I want Tauri-but-for-Python.

pjmlp · 5 years ago
The Electron competitor is called the Web platform.

Just write your application in Django and start the local browser. Use Web APIs to trigger interactions with native APIs from Python code.

webmaven · 5 years ago
Okay, so I'm curious as to why you think desktop applications are ever built as Electron apps rather than just as a local web app server that opens the desktop browser?

After all, that approach was pioneered by Dave Winer around 2000 or so, and never really caught on. On the other hand, Electron has exploded as a platform.