35 comments

[ 4.7 ms ] story [ 77.2 ms ] thread
I am excited for any path that gets us toward a faster, leaner, cleaner web browser. It is insane that we have to dedicate multiple gigabytes of RAM, have CPUs 1000x faster than we had back with Netscape Navigator, and still the browser performs poorly, and constantly has security vulnerabilities.

I hope Ladybird and Servo succeed. I tried Servo a couple of years ago and it was quite useless, unable to do anything, so I'll have to check back and see how it's doing sometime and see if it's improved.

UPDATE: just tried the latest Servo build on macOS. About 100 MB download, not bad. Started fast. Kind of works. Fast but not very smooth, lots of repaint flashing etc. And text fields and text selection on the web page work poorly or not at all.

I guess they're focusing on interesting internal stuff rather than the basics of loading a webpage and allow you to highlight text and copy it, or click in a text field and edit the text. I wonder whether it will graduate to a real browser sometime.

> It is insane that we have to dedicate multiple gigabytes of RAM, have CPUs 1000x faster than we had back with Netscape Navigator

Webpages are applications. Browsers are application runtimes. The main culprit driving high memory usage is not the runtime, but the application.

That's not really correct. Compare the basic interactive page resource usage to a similar interface made with qt or even .net - it's the runtime that makes the massive difference.
I think it's just progression of tech. Today's web pages aren't the same as the ones on netscape. Same with a flagship phone from 10 years ago with 1GB of RAM pales in comparison.

I did see a Macintosh load up Google one time, that was surreal, anachronistic, it took a long time it was a video on YT.

>I wonder whether it will graduate to a real browser sometime.

It won't. Someone will have to build a browser around it as Servo itself is not a browser.

What you downloaded from their page is "just" a thin wrapper around Servo. Only serves demo purposes.

If you want a lightweight web browser, try: Pale Moon, Basilisk or SeaMonkey.
Feels like the author is biased towards Servo...

To say "one is a browser engine and the other is browser" and then explain engine advantage as "embedability" without explaining browser advantage as "whole ready product" is unfair, imo

The engine approach seems like a solid advantage to me given that at least one decent browser has been built around it. Servo can ultimately support end users who just want a browser built off of it, and developers who want to build a browser with it. Ladybird can only support the former.
(comment deleted)
The author points out the strengths and weaknesses of both browsers. Ladybird is better in some regards, Servo in others. Seemed v. fair.
you don't point out strengths of both browsers by pointing out strengths of only one of them
The article has a whole section about how Ladybird scores better on several web benchmarks. Even if you don't read the article it's right there under the title:

"I believe that Ladybird has more funding and better support for the web, but Servo wins in performance. Though, they're hard to compare directly!"

Sounds pretty balanced to me.

I don't understand the use of JS benchmarks to compare Servo to Ladybird.

Ladybird indeed has its own JS engine, and it's very young and still interpreted.

On the other hand, Servo uses SpiderMonkey (i.e. shipping C++ code from Mozilla) as its JS engine.

So a Servo vs Ladybird comparison using JS benchmarks is really a comparison of Mozilla's shipping JS engine to Ladybird's from-scratch JS engine. And they're both written in C++.

I don't think there are any plans for Ladybird to have a JIT compiler (they used to have one but decided to remove it) [1, 2], so it's not clear to me that this performance gap will be improved anytime soon (if ever).

[1]: https://youtu.be/dKHopzDtElY?si=jc3ho2NT4vPTbXBz&t=14

[2]: See FAQ here https://awesomekling.github.io/Ladybird-a-new-cross-platform...

I read here recently that Ladybird is prepared to switch to Swift rather than C++. I can't seem to find the relevant sources; can anyone confirm?
Yes, here[0]. Although, it's not anywhere close to being used for everyday things. There are blockers listed in their GitHub issues and various issues posted to the Swift forums.

[0]: https://xcancel.com/awesomekling/status/1822236888188498031

Thank you! I'd imagine performance-sensitive components in the engine need to remain in C++ (or a similar systems language) right? However, I'm not privy to Swift's runtime benchmarks.
> imagine performance-sensitive components in the engine need to remain in C++

I'd imagine so, yes. I think the vision is to use Swift in "risky" areas like parsing data for example. Probably much more too, but the big hitters would be safety critical areas I think.

Swift has been adding support for things like non-copyable types that should help with writing performance sensitive parts.
> I don't think there are any plans for Ladybird to have a JIT compiler (they used to have one but decided to remove it) [1, 2], so it's not clear to me that this performance gap will be improved anytime soon (if ever).

How does that make this comparison make any sense?

Point is, this isn't a Servo vs Ladybird comparison. It's a Mozilla vs Ladybird comparison.

Two comments -

The article makes it sound like Kling just took an existing product (LibWeb) and renamed it, without making it clear that Kling started/developed LibWeb also.

Secondly, Kling has stated repeatedly that he's focused right now on compatibility, and spending next to no time on optimization, so speed results are as expected. He just posted on X recently his excitement of being able to order Uber Eats from Ladybird now, so I'm inclined to believe that.

I think both browsers are measuring progress by different but equally important metrics and that's OK.
> In 2020, the entire Servo team was fired from Mozilla, amongst others. This was done by the then-CEO Mitchell Baker, who said that Mozilla had to "adapt its finances to a post-COVID-19 world and re-focus the organization on new commercial services".

https://en.wikipedia.org/wiki/Mitchell_Baker says:

> In 2020, after returning to the position of CEO, Baker's salary was more than $3 million.

Isn't that enough to pay for an aligned public-interest CEO and several aligned public-interest developers on Servo -- who, together with the rest of the organization, could allow them to actually deliver a privacy&security-respecting Web browser, which is the main thing anyone wants from the organization?

You're making way too much sense. Watch it or you'll get Eiched.
What if I specifically do not want all of these functions of CSS and of JavaScript and other stuff? I do want TLS 1.3 and some other things, but not all of that other stuff (and also do not want HSTS). (I also don't like that some features are removed in the newer version, even though those things will still be good and I will often use them.)
Then you take the open source software and fork it and tailor it to your specific needs. If you can't do it yourself then you can always pay someone to do it for you. There's a remote possibility that threats of violence could work to make the developers bend to your will, maybe by kidnapping their kids or something like that.
The more browser alternatives we have the better, since it is such an expensive and underserved area compared to how much we use them.
" the estimated annual budget of the project is $61k, which - according to the project itself - should be able to cover six full-time developers."

Full-time devs only get $10k p.a. now? And these are Rust devs I think, for Servo?

The market really is bad.

It's 61K per month iirc. If it wasn't clear from the video.

It might be sarcasm but I can't quite understand if that's what your comment was. :)

no sarcasm, the article clearly says the "estimated ANNUAL budget" ...

I admit I did not watch a video.

Some countries are very less well paid than others, so ...

I've tried the Ladybird browser and... it is definitely not ready for daily use.

Downloading, compiling and running it took me ~6 hours (granted, my hardware sucks), though I appreciate that it worked without errors. That said, the browser was painfully slow

I haven't tried Servo yet, but my expectations are pretty low.