I wouldn't be surprised if 80% of the work spent on current webbrowsers is spent on maintaining compatiblity and edge cases.
I wouldn't be surprised if 80% of the work spent on current webbrowsers is spent on maintaining compatiblity and edge cases.
I don't really see anything wrong with a browser that doesn't fully support every website and every weird example of HTML and CSS that a developer decided to hack together. If a browser supports the standards well and does a pretty good job of rendering modern websites then I'd happily trade failing to render some ancient HTML for a web browser that was truly open and free and doesn't send swathes of data about me back to some corporation.
Web browsers are compatible with old HTML because we choose to make them that way. That is a choice. If the cost of having a free and open browser is a requirement to drop some backwards compatibility with old HTML then I think that's actually quite a simple choice. After all, if people want to view an old website then they can still use Chromium or something. It's not like people have to pick a single browser and stick with it.
Consider from the perspective of the user. They're using chrome and browsing the web - all their favorite sites work. They switch to a new browser and some of the sites stop working correctly. Is it the fault of the browser? or is it the fault of the site?
For most users, if site X works using browser A and breaks using browser B - then it is browser B that is at fault.
This is a lesson that Microsoft learned. https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost... There's no refund involved, but switching back to the old browser is certainly possible.
> This is a system by us, for us, based on the things we like.
Nowadays it runs in almost every home at least in the developed world.
New browser is not inevitable, as the need for free-ish browser is already satisfied.
> They're written from the perspective of the developers
And I get it. A few years back I had an open-source project [1] get users and it was terrible. What had previously been a fun technical exercise became a pain in the ass that felt a lot like actual work. I was relieved when my hardware broke and I had an excuse to archive the project.
But that does create a huge gap that mostly gets filled by commercial interests.
There are a couple of implicit assumptions here that I think should be unpacked;
First, you're assuming that users have favorite websites, and that those sites wouldn't work. As I said in my post, so long as the browser worked with standards compliant modern websites I think that would be fine ... and that would cover 99.9% of user's favorite websites. People don't carry on using old, unmaintained (or even maintained) sites for a particularly long time. I don't believe people return to old websites that haven't been maintained very much. I don't think many users would even notice if their browser stopped supporting things that browser developers consider edge cases that eat up dev time.
Secondly, you're assuming that users who choose a browser like Ladybird wouldn't understand the choice they're making. Of course they would. They could still make that choice though. The idea of trading out-of-standards compatibility for increased privacy is actually really appealing to a lot of people. Hell, a lot of people see out-of-standards compatibility as a bug rather than a feature.
I wonder then why developers test on multiple browsers... Is it because website developers code not to standards per se, but rather how their top two browsers behave?
That being said, I think this is a cool project and since the goal is personal satisfaction and usability, there isn't the pull to satisfy hundreds of thousands of users.
Do they still? I find myself using only Firefox and I haven't had a Chrome-related bug for a loooong time. I do however avoid using latest features and wait until the support is good enough.
I agree with GP, seeing a new hobbyist browser enter the arena is awesome, I need to check it out. I for one don't care if some pages don't display, I can still open them in FF. I just hope that corporation doesn't "happen to it" too soon...
Define which subset of standards would qualify for "standards compliant". Don't forget that quite a few of standards (for example, HN's darlings like bluetooth) are barely drafts.
Both are true almost in my case. Browsers based on older Firefox versions such as Palemoon and Seamonkey don't work with GitLab and Github - which are not my "favorite" websites but rather, are hard to avoid.
> I don't think many users would even notice if their browser stopped supporting things that browser developers consider edge cases that eat up dev time
That's not the issue. The issue is that some websites use the shiny new features - probably through some new shiny framework - that older browsers don't support.
And this is a loser's game for browsers done from scratch, because by the time they implement one missing features, two others have been standardized. That will probably kill Firefox too.
There are also the "Mom's cooking blog" that is running an ancient copy of Wordpress and mom still doesn't understand that <b><i>This is important</b></i> is not formatted correctly. Some browsers are able to handle this, but if you browse it with a "this browser only follows standard compliant html" you may get the entire page in italics or bold.
The article even acknowledges this - https://awesomekling.github.io/Ladybird-a-new-cross-platform...
> Fidelity of modern websites in Ladybird is steadily improving, but you’ll often see lots of layout and compatibility issues. For example, here’s Reddit right now:
> (mangled layout)
We could put Reddit in that list of favorite sites that need to work. And so, is it the fault of reddit or the browser that the page isn't rendering right? As reddit works on other browsers, surely its the browser's fault and not something janky that reddit is doing that the other browsers happen to work with.
And thus my post - if a page works correctly in a different browser but incorrectly on Ladybird, to a user it is always the browser's fault.
If the average user wants to lean to a corporation and use its product because on the reliability it offers then that's fine. While the privacy concerns are there, I don't think it's wrong for a consumer to reach to a company to fulfill their needs.
Product mentality can be a problem on FOSS software. People forget that all of this started as a project made by volunteers because it was fun to them.
Google Chrome is a product. But a new browser doesn't have to be a product. And doesn't have to compete with Chrome.
Linux as a project wasn't created to compete with other Unixes. And it wasn't deemed a failure when it lacked features compared to them 20 years ago
more than that, i don't think this framing does you any good with the segment this browser is targeting, as developers still want others to recognize their (good) work. but that's fine, as there's plenty of time to develop the brand (and yes, brand also exists outside of being a formal product).
If the goal is to have something that's usable in limited cases for a self-selected set technically competent enthusiasts, then this is well within reason and not without value.
What I find particularly interesting is that there's an intent to support WebAssembly. That may turn out to be overly ambitious, but if they succeed there's a lot of potential upside to having another WebAssembly engine that's independent from the major browsers.
Also, lightweight browsers have been a dying breed for a while, if ladybird ends up as a more modern alternative to surf and Dillo, I'm already satisfied.
[1] https://surf.suckless.org [2] http://www.netsurf-browser.org
Something that will work reliably on every site and support the gazillions of APIs that Chrome provides? Hell no. Even Microsoft threw in the towel on that. Mozilla barely manages it.
You can make a browser that people can use if they really really want to make a point of using your browser. You can't make one that the average person would choose.
What we do need is to make one that you may choose if you want to be able to fully control the system (with fine customization, and interaction with other programs including native codes in C), and is designed for advanced users who have read all of the documents, rather than trying to hide things from the user or believe they know better than what the end user specified, and also it must be one that avoids all of the bad stuff that Google put in.
I don't even have it installed and yet I'm typing this into a website.
It's usually "ok" and I can deal with performance issues; but these little niggles just makes you want to not deal with it.
OTOH, if the page is black and not repainting, that might be a graphics issue (in Firefox or the GPU driver). Firefox uses the GPU more than Chrome for rendering and video decoding, which can be great for performance but unfortunately means users can be exposed to GPU driver bugs.
How can you possibly use any web browser without an ad blocker installed?
There are still loads of cross compatibility issues and performance differences based on certain features of course! But I would say the set of "sites that require weirdness" is going down, not up, every day
I think that's the irony here, the standards are pretty much set in stone and just incrementally grow. Some old cruft is beyond obsolete though. On the other hand nobody uses most of the bleeding edge APIs. But JS (and the part that is actually in use) is indeed growing at a solid pace.
This is all true.
On the other hand, operating systems are huge, complicated beasts, hardware compatibility is a constant moving target, and manufacturers won’t uphold compatibility guarantees.
So, the project does _not_ cover rendering web pages and tracking the HTML, CSS and JS standards. Those are separate projects.
What remains, then? I guess that would be the user interface and user experience.
> What remains, then? I guess that would be the user interface and user experience.
To be clear it uses a novel rendering engine (libweb) that the creators of LadyBird develop, it's just that that rendering engine has its own name and exists as a separate library.
This is not just another skin around webkit or chromium.