For comparison, there are 1.9 million tests
Chrome passes 97.14%
Edge passes 96.98
Firefox passes 95.96
Safari passes 95.22
I wonder where Ladybird stands in thisLadybird isn't that bad in comparison.
If the development work went into debating, specifying and expressing required behavior as a written spec more exactly (beyond w3c specs and towards the more pragmatic reality of what current browsers actually do) then very long term we can probably have engines that are AI built [or just more easily developed by humans] from a combination of the written specs and the set of tests they need to pass.
Using AI for adversarial development (e.g. one group tries to break and hack it, the other group defends and refines) could get interesting and wasn't really an option before. Anything that's now available to reduce the human resource cost of development could make a big difference.
Mozilla spent millions, Andreas got 2 hundreds thousand dollars to pay him and 2 other devs
Working on something is not the same thing as building the same thing from scratch on your own time and resources.
Of all the people who worked at Google, none of them rebuilt Google, right?
Also: Apple spent billions and employed several developers.
Who said "no experience"? (except you, of course)
I've said, an I repeat myself so maybe this time it'll work, Andreas had no money whatsoever, while Servo was developed inside Mozilla that poured millions of dollars on it and created a dedicated team to build it.
It makes all the difference in the World, the actual experience on building a web browser is irrelevant, given the initial disparity of time, money and resources available.
It makes all the difference between a random guy building a working twitter clone and Meta building a working twitter clone.
The first one is an amazing accomplishment, the second one is a mehhh at best.
Ladybird is a miracle compared to Servo.
it has been underway for much longer and was built with people with actual browser engine experience
The key point is that Ladybird was developed by one person (not people) with some browser engine experience over a realtively short period, using only personal resources. While Andreas Kling worked on WebKit, his experience wasn't at the level of building an entire engine, which is evident from his videos. Experience alone isn't enough; he learned much of what he needed while developing Ladybird. While Andreas Kling is talented, many other developers on his team were equally skilled and yet he's the only WebKit developer I am aware of who built a browser on his own.
A task that not long ago was considered too hard to tackle, he proved it can be done even by people with relatively modest experience on building a browser.
It should be highlighted that Andreas main skills are his tremendous communication skills and the way he builds a mental model of the problem he's trying to solve, not his past WebKit experience (he wrote an entire OS, before building a browser for the OS he built, as a side project)
I don't know enough about browsers to know how vital those tests are, but it is important to note that they are still a ways off of 97.
Edit (with Firefox): the above text is from Verso. Logging in works (though the session is not stored across restarts), as does both commenting and editing comments. Since space can't seem to be entered, word wrapping doesn't work with text entered in Verso, though it does seem to work when there is text with spaces (eg, this edit). A cursor also doesn't appear for me, making editing a challenge.
At least on mobile.
Reddit: Wait no.
This is most likely a server “feature” and thus a rewrite of the frontend won’t fix it but it seems like at very least the frontend could display a sane error message (assuming the backend forwards some information about the cause of the error).
And Rust can still have unsafe code so it can crash in memory unsafe ways too (though it is very unlikely unless you're doing things very wrong).
From when I grokked the code a bit (back in 2017) there was a non trivial amount of unsafe code, especially related to integration with SpiderMonkey (the js engine) so it wouldn't even be particularly surprising to see segfaults in servo, unlike most rust projects.
There are two window title bars, one by the OS and one from the application. The text in the URL bar is misaligned and is shifted down by half its height. There's a black bar between the browser chrome and the web view. Entering a domain name without http or https and hitting enter crashes the entire application.
Clicking refresh spawns a new window that sort-of-but-not-really shares the same website being rendered.
Very few websites work. Anything with a cookie banner just plain breaks. I can't tell how to edit the URL bar after failing to load/loading a page. Google.com is very wonky. The search box on Google doesn't seem to take space bar for some reason.
For the websites that do work, rendering is very fast and scrolling is pretty smooth. I can see the potential, but there's a lot of work to be done.