Live data from Hacker News

The Ladybird browser project

ladybird.dev

231–240 of 293 posts

Re: The Ladybird browser project

#231

Earlier quoted context omitted.

Wow - that article was a tough read. I like a LOT of what Drew has to say, but this seems over the top. He claims that authors promoting their open source software on channels like Twitter, Hacker news, LinkedIn or even Github is "selfish and unethical outright": > Many projects choose to prioritize access to the established audience that large commercial platforms provide, in order to maximize their odds of becoming…

> you may have different ethical standards Isn't this the exact opposite of zealotry? Zealotry is imposing your ethical standards on others.

It's at least a form of _casual_ zealotry. "You may have different ethical standards" is clearly the author's passive-aggressive way of saying "your ethics might not be as righteous as mine", as opposed to "reasonable minds may disagree".

Re: The Ladybird browser project

#232
A thought experiment. What about a new kind of browser for a new kind of web? Much of CSS is obsolete. So doing a "modern" version (I'm thinking css grid and flex in particular) would provide the same functionality without the cruft. All that old stuff about the holy grail three columns layout.

And for me there is the question of canvas, threejs, react-three-fiber and react-drei. Is it possible that - especially with mobile - that canvas could be used to provide a better user experience? Who writes games for mobile with a HTML and CSS? Not saying it can't be done, but I wonder how many web sites require HTML & CSS instead of canvas?

A big barrier to browser competition is needing to implement obsolete and outdated technology. Why not just a minimum set of html and canvas.

Just thinking. Your thoughts?

Re: The Ladybird browser project

#233
post #68

Earlier quoted context omitted.

He is a world expert on Web rendering, and an extremely capable C++ developer. One of their success recipes is to code up the various specifications directly, which is - today - the best way to go about this. They are also heavily test-driven. He did not even use the C++ standard library, when he says "from scratch" it includes his own string class, for better or worse, which is fine since it's "just for fun", "to le…

I think their C++ library is one of the reasons they can create capable software so quickly actually. They have jetisoned just a tonne of C++ nonesense and added some really nice modern features such as how they handle memory and errors. Also, you would think that having to implement EVERYTHING themselves ( they are making their own image decoders as an example -- inclding SVG ) would slow them down. However, as it i…

I think you misconceive how open source projects need to work. Some projects (especially those in the web-dev niche) might view their relationship with upstream the way you do. But others do not.

For Ardour, we feel entirely free to just bring an upstream library into our source tree if we need to. And we also have our dependency stack builder that configures and occasionally patches upstream libraries to be just the way we need them. We do not wait for upstream adoption of our patches.

Most recently, for example, we became aware of impending moves by various Linux distros to remove GTK2, which we rely on. Even though we don't support distro builds, we want Linux maintainers to still be able to build the software, so we just merged GTK2 into our source tree.

This idea that using a 3rd party library becomes some sort of constraint is very, very far from reflecting universal truth. If we need to hack a 3rd party lib to make it do what we need, we just do it. Meanwhile, we get all the benefits of that lib. Ardour depends on about 86 libraries - we would be insane to rewrite all that functionality from scratch.

Re: The Ladybird browser project

#234

A thought experiment. What about a new kind of browser for a new kind of web? Much of CSS is obsolete. So doing a "modern" version (I'm thinking css grid and flex in particular) would provide the same functionality without the cruft. All that old stuff about the holy grail three columns layout. And for me there is the question of canvas, threejs, react-three-fiber and react-drei. Is it possible that - especially with…

I've worked a bit on browser engines, although it was quite some time ago.

I don't think it'd help much.

- There's been a Cambrian Explosion in the web API surface era. The modern stuff dwarfs the old stuff. Dropping support for older/less frequently used mechanisms does not shed as much code and complexity as you might think.

- Beyond mere surface area, the level of engineering required to implement a sort of "Restricted Core Profile" to a competitive degree (e.g. performance) is quite high, if you're talking true blank-canvas development.

- There's a long tail effect in full force, where even mostly-modern websites will use and rely on some cruft here and there, making very few pages work in your supposed browser.

That is to say, it's still a very large, tough project. But the FOSS community has achieved quite a few large, tough projects; it's not the same as saying that it's not possible, of course.

Re: The Ladybird browser project

#235

A thought experiment. What about a new kind of browser for a new kind of web? Much of CSS is obsolete. So doing a "modern" version (I'm thinking css grid and flex in particular) would provide the same functionality without the cruft. All that old stuff about the holy grail three columns layout. And for me there is the question of canvas, threejs, react-three-fiber and react-drei. Is it possible that - especially with…

I think there are modern frameworks which render everything in webgl/webgpu with the canvas

Re: The Ladybird browser project

#236
Related ongoing thread:

Interview with Andreas Kling of Serenity OS (2022) - https://news.ycombinator.com/item?id=39286638 - Feb 2024 (134 comments)

Related to OP:

Ladybird browser update (July 2023) [video] - https://news.ycombinator.com/item?id=36939402 - July 2023 (1 comment)

Chat with Andreas Kling about Ladybird and developing a browser engine - https://news.ycombinator.com/item?id=36620450 - July 2023 (65 comments)

Shopify Sponsored Ladybird Browser - https://news.ycombinator.com/item?id=36502583 - June 2023 (1 comment)

I have received a $100k sponsorship for Ladybird browser - https://news.ycombinator.com/item?id=36377805 - June 2023 (166 comments)

Early stages of Google Docs support in the Ladybird browser - https://news.ycombinator.com/item?id=33511831 - Nov 2022 (84 comments)

Github.com on Ladybird, new browser with JavaScript/CSS/SVG engines from scratch - https://news.ycombinator.com/item?id=33273785 - Oct 2022 (1 comment)

Ladybird: A new cross-platform browser project - https://news.ycombinator.com/item?id=32809126 - Sept 2022 (473 comments)

Ladybird: A truly new Web Browser comes to Linux - https://news.ycombinator.com/item?id=32014061 - July 2022 (8 comments)

Ladybird Web Browser - https://news.ycombinator.com/item?id=31987506 - July 2022 (2 comments)

Ladybird Web Browser – SerenityOS LibWeb Engine on Linux - https://news.ycombinator.com/item?id=31976579 - July 2022 (2 comments)

Re: The Ladybird browser project

#237

A thought experiment. What about a new kind of browser for a new kind of web? Much of CSS is obsolete. So doing a "modern" version (I'm thinking css grid and flex in particular) would provide the same functionality without the cruft. All that old stuff about the holy grail three columns layout. And for me there is the question of canvas, threejs, react-three-fiber and react-drei. Is it possible that - especially with…

What exactly is obsolete about css? There are still valid use cases for float and inline block. border-box also fixes most of the teeth-gnashing from the 00s. I think it's a nice idea but I don't see what would get cut. Tables are still best for actual tables of data, too.

Re: The Ladybird browser project

#240
post #102

Earlier quoted context omitted.

> they are making their own image decoders as an example -- inclding SVG Considering the vast amount of exploits that continually comes out of media decoders everywhere, this basically guarantees I will never ever use this browser.

Have you looked at how it's implemented? The image decoder is completely separate from the main browser and is in a sandboxed process (with restricted syscall and filesystem access). If the image decoder is exploited, there's nothing the attacker can do.

Where can I find more details on how this sandboxing works?

Edit: Seems like it's using OpenBSD's pledge API? https://www.youtube.com/watch?v=bpRw6KQnY0k&t=8107s

Post reply on HN