The website makes it sound like all of the code being bespoke and "based on standards" is some kind of huge advantage but all I see is a Herculean undertaking with too few engineers and too many standards.
W3C lists 1138 separate standards currently, so if each of their three engineers implements one discrete standard every day, with no breaks/weekends/holidays, then having an alpha available that adheres to all 2024 web standards should be possible by 2026?
This is obviously also without testing but these guys are serious, senior engineers, so their code will be perfect on the first try, right?
Love the passion though, can't wait to see how this project plays out.
W3C lists 1138 separate standards currently, so if each of their three engineers implements one discrete standard every day, with no breaks/weekends/holidays, then having an alpha available that adheres to all 2024 web standards should be possible by 2026?
Yes, that is exactly the plan: "We are targeting Summer 2026 for a first Alpha version"
a Herculean undertaking with too few engineers and too many standards
Yeah, as a layperson this is my take. If mozilla is struggling to stay in the game then I just don't really see how an unfinanced indie team has a shot.
Exactly. They have been working on Ladybird Browser for few years already, before it was announced as standalone product (It was a part of SerenityOS).
Sure, but an individual website may use only a few of those standards. Ladybird devs will pick a website they like to use - Reddit, Twitter, Twinings tea, etc. and improve adherence to X or Y standards to make that one website look better. In turn, thousands of websites suddenly work perfectly, and many others work better than before.
Ladybird is largely conformant to the majority of HTML standards now. It's about the edge cases (and where standards aren't followed by websites) and performance. This isn't a new project.
Software nowadays is a lot more complex. You'd get nowhere using assembly. Are you also gonna call me lazy if I say making a smartphone from scratch is complicated?
"But the Nokia 1234 only had 4kb of memory" Is what you will probably say.
I mean if they're gonna give money without demanding anything I'm sure no complaints from the devs.
Shopify or an exec there might find some value in avoiding Google owning the web, could maybe bring goodwill for the company, or they could just be looking for a write off.
I'm curious what issue you see with that? It seems like the project is only accepting unrestricted donations, but is there something suspicious about shopify that makes it's involvement concerning (I don't know much about them)?
It'll be interesting to see how this plays out. I've had more than a handful of people bitching at me that it's impossible to make a new, open web browser in this day.
I think it's less that it's "impossible" but rather that it's expensive.
Honestly we've in general shoved too much shit into the browser that's not strictly related to just browsing web sites.
And you "have to" support all the layers and layers and layers of added stuff, or you can't "compete".
But, at the same time, the goals of making a good-enough browser that mostly works and isn't completely enshittified and captured by corpo big tech interests is a very worthy project and 100% support what they're doing.
Nah nah fuck that noise. 'Jack of all trades but ace of none' or however the saying goes, is a shitty way to go about things. I don't have the biggest dick but I know my way around around the block, and I know I'm good at it. More specialized > the catch-all bitches.
Let the fucks with their special engine requirements eat shit. Standardize or write a fucking proper program (miss me with that "app" bullshit) or fuck right off. "everyone is special... exactly like you" now fuck off web dev. Your shit doesn't get a permit.
.....
I may have some... disputes with the way the web is done nowadays.
Their rendering engine is already pretty solide (see penultimate video in their channel). Now that their "no third party code" restriction is lifted, they can actually focus on building a browser engine instead of recreating 30 years worth of technologies from scratch.
He says "powered by or funded by Google". Firefox depends on Google financially, most of the income of Mozilla comes from Google paying for being the default search engine.
They try to diversify their income (Firefox VPN, email alias service, etc.), but anything they try gets a huge backlash from the community, and still small compared to the the money from google.
Firefox gets tons of funding from Google, and their code is quite frankly humongous. From what I understand, it's extremely hard to get the gecko web view engine to work. In another browser, unless it's a fork of Firefox, unlike Chromium where you can just redesign an entire browser around it.
Yes, that's what I'm referring to. They could build on that, or they could write something their own in Rust. But I'd think building on Servo would be fantastic.
I know about servo. It was pretty much a dead project until they joined the Linux fondation last year and started getting some sponsorship. Since then, they being doing pretty good on there own with personal donations rising by around 20% each month, reaching more than 2000$ monthly. Wish them all the best!
They’re making a new browser engine from scratch in an open way, absolutely amazing!
I do have several questions:
Why would they use BSD instead of GPL? If you care about open-source so much, why would you make it possible for a company to run away with your fancy new engine?
Why are they creating a new browser, when even firefox has to struggle to keep some semblance of market share? I get that not every project needs to aim to be “the biggest”, and that even a smaller project (in terms of users), can be fun. It’s just that writing a browser engine that can handle the modern web seems like an almost Sisyphean task; which makes me wonder what their motivation(?) is.
Why the FLOSS are they using closed-source proprietary discord as their main communication channel?
(BSD vs GPL) Andreas stated on twitter that he wanted to give devs total freedom to use his work because when he worked at Apple he felt frustrated he couldn't incorporate some code/software into his work because of GPL.
(Why?) The aim is not to create a chrome competitor, but to make a good enough, truly free browser that isn't either chrome or funded by chrome. A browser made for and by its user's.
As someone who uses BSD licensed modified code at work and relies on it quite a lot, it's crucial to me choosing which projects I'm able to use in the first place.
Personally, I prefer a license that allows for commercial use in the way that companies need them to, and if my own work ever can provide a patch back upstream I'd be happy to do so, but most of what I do is just tweaking things that exist to suit my purposes which doesn't really help anyone but my business rivals which I personally am not interested in doing if I don't have to.
I prefer to have the freedom to do as I wish with the code, as compared to being bound to do as the author wishes and essentially just not using that code in the first place because I can't. I'm not in a position to change what I can and can't do because of the requirements of the business I work for, and I'm grateful to those that choose licenses that allow me to use their work.
They're creating a new browser because they want to. It started as an OS building project that the lead dev did to help stay sober.
They use discord because it's popular. Insert Ouroborus argument here, and at the end of the day it's still the most popular app.
I do not understand the urge to start from scratch instead of forking an existing, mature codebase. This is typically a rookie instinct, but they aren't rookie so there's perhaps an alternative motive of some sort.
Because there are only like 3 browser engines: Chrome’s Blink, Firefox’s Gecko and Apple‘s WebKit. And while they are all open source, KHTML, the last independent browser engine got discontinued last year and hasn’t been actively developed since 2016.
There’s need in the space for an unaffiliated engine. Google’s share is far too high for a healthy market (roughly 75%), WebKit never got big outside of Safari (although there are a few like Gnome Web, there’s no up to date WebKit based browser on Windows) and Gecko has its own problems (like lack of HEVC support).
So, in my book, this is exciting news. Sure it‘ll take a while to mature and it is up against software giants but it‘s something because Mozilla doesn’t seem to have a working strategy to fight against Google‘s monopoly and Apple doesn’t have to.
Also Gecko's development is led by people thinking that it being usable outside of Firefox\Thunderbird is a bad thing. There was a time when Gnome's browser was based on Gecko, not WebKit. And in general it's influenced by bad practices.
SerenityOS is an amazing project, of course. To do so much work for something completely disconnected from the wider FOSS ecosystem, and with such results.
So it's cool that they've decided to split off the browser as its own project.
Guess they couldn't replicate the "own everything that people use to get stuff on the internet and make secret breaking changes to constantly mess up other browsers" strategy.
Because software monocultures are bad. The vast majority of browsers are Chromium based. Since Google de-facto decides what gets in Chromium, sooner or later the downstream forks are forced to adopt their changes. Manifest V3 is a great example of this. You can only backport for so long, especially when upstream is being adversarial to your changes. We need an unaffiliated engine that corrects the mistakes we made with KHTML/Webkit.
Why are open source software monocultures bad? The vast majority of non-Windows OSes are Linux based. Teams who don't like certain decisions of the mainline Linux team maintain their forks with the needed changes.
Manifest V3 is a great example of this. You can only backport for so long, especially when upstream is being adversarial to your changes. We need an unaffiliated engine that corrects the mistakes we made with KHTML/Webkit.
And we could get a functional one today by forking Chromium and never accepting a single upstream patch thereafter. I find it really hard to believe that starting a browser engine from scratch would require less labor. This is why I'm looking for an alternative motive. Someone mentioned licensing.
Perhaps some folks just want to do more work to write a new browser engine. After all Linus did just that, instead of forking the BSD kernel.
There is currently no implementation of web standards that is under a more permissive license than LGPL or MPL. I think that is a gap worth filling and if I recall that is what Ladybird is doing.
I guess Chromium isn't fully BSD. This could be the reason. Although I'd think reimplementing the non-BSD bits in Chromium would be less work than reimplementing all the bits, including the BSD ones.
Why is that a gap worth filling? There is no benefit to users as long as its free of a EULA they don't have to care either way. For those wanting to produce open source software based on same they already have all the rights they could need. The only party clamoring for permissively licensed software are companies intending to close off the source and sell other people's work.
I understand why they would want to do that I don't understand why anyone would feel the need to work for free for something someone else closes off.
It's easy to understand when you think most comments are similar to yours and don't provide any insight as to why this might be a problem.
Maybe you could update your post and share your knowledge and experience with others, so that there are less people in the world who don't see the problem.
Ladybird was born from SerenityOS, which is a hobbyist unix-like (or POSIX compliant?) OS that simply aimed to do things "from the ground up". It just happened that they needed to make a browser, and the response was to make one from scratch.
From there it seemed to have brought a lot of attention organically to the point where it can stand on its own, but originally it was never intended to be a "third browser engine" from its inception.
Best of luck, I guess, but seems like a doomed project to me. Forking WebKit, Gecko, or even Servo would seem much more reasonable, and even that is a huge undertaking.
Hmm. I just read the github thread that this is about. The devs made a mistake on this; but it seems to me that there is a bit of an over-reaction here. The people in the thread seem to be discussing it calmly and politely; and the issue (i.e. use of pronouns in the build instructions) ends up being resolved. By contrast, the reaction outside of the actual thread... is extreme.
Like I said, this seems like an overreaction to someone making a mistake of ignorance & indifference. It wasn't an act of malice.
Please describe to me how someone who offered up changes to change “he” to “they” for them, and then the contributor getting pissy about “politics” is denying work.
All this because they won't change a "he" into "they" ?
Who gives a fuck about such rampant whiteknightism ?
Why does a browser even need to know your gender ?
In what context even is there a pronoun in the user interface ?
You could find out the context by reading the title of the thread, but then you'd have less to bitch about, so I can understand why you chose ignorance.
i like how they're like this isnt the place for personal politics while ignoring the fact that gendered readme files are patently stupid in the first place.
Kudos to them. Opera gave up on this dream being unable to accommodate all the nuances of web standards and accounting for out of conformance behaviours that many websites rely on the daily.
I reckon this browser will need to be at least on par with reasonably recent version of Firefox to see significant adoption.
I do too. What a joke the browser became after moving to Chromium... I remember it didn't even have bookmarks in the first version.
On the flip side I kind of understand the decision to pull the plug - if you've looked at Browser.js and think that potentially any site might need a fix to work properly...
It would be nice if people read the post and the project before randomly making assumptions such as implying the project started from scratch yesterday or its run by some amateurs, this is a 4 year old project! It's founded by a former KHTML/Webkit developer for Apple!
In this case having more browser engines not under Google's control is probably a good thing. Although this effort might've been better spent working on Servo.
There are a lot of downsides of C++ compared to more modern languages that make it not a great choice if you're starting a web browser from scratch
Complexity of the language leading to increased bugs and slower development
Manual memory management is error-prone and leads to issues like memory leaks or segmentation faults. Modern browsers need to handle large amounts of dynamic content, making memory management complicated
C++ lacks some of the built-in safety features of more modern languages, which has led to the majority of security vulnerabilities found in major browsers. It's so bad that Mozilla invented an entirely new programming language just to deal with this
Compared to higher-level languages, C++ can be slower to develop in, which may impact the ability to quickly implement new web standards or features unless you have a massive team
While C++ is cross-platform, ensuring consistent behavior across different operating systems can be more challenging than with some other languages.
Newer languages often provide built-in support for concurrent programming, garbage collection, and other features useful for browser development, which C++ lacks.
So tl;dr: a browser but in C++ will take much longer to develop, have fewer features, more bugs, less concurrency and and more security vulnerabilities
The language choice was because Ladybird started as a component of SerenityOS, which is also written in C++. With this separation, they are free to gradually introduce other language(s) into the codebase, and maybe eventually replace C++ entirely, piece by piece.
In Hackernews thread about this, the head maintainer mentioned that they have been evaluating several languages already, so we'll see what the future brings.
In the meantime, let's try to be mature about it, what do you say?
The dev has 30 years of experience with c++ and a lot of it was on browsers.
He tried to incorporate rust with the help of "JT", one of the original rust designers/devs and according to Andreas it didn't work that well due to the web being too objet oriented or something like that. They both worked together (well, mostly "JT") to create a new safe programming language called "yakt" that transpile to c++, but the project is currently pretty much dead because nobody is really working on it anymore.
The web being too object oriented for rust? Assuming that made sense, who wrote the dang language? If that's true I'm even less confident they know what they're doing then I was before.
The project management may have some obvious problems (jOin dIsc0Rd sErVEr; w0rD "thEy" t0o p0liTicAl). But we really need an alternative to browsers funded by Google (Chrome and Firefox).
So I'll do my best to actually build from sources and see what can I help with. Attacking the author is helping nobody.
Well, thank you for pointing me to this project. Didn't know about it.
I've just built it. So, the part of I'll do my best to see what can I help with applies here to.
Not very many, and many are not featured complete. There's really just fire fox and chrome. However there's a couple of wacky ones like mothra on plan9 but it can't do JavaScript and ignores some modern web practices. Then there are also terminal based browsers.
It's hard to understand the purpose of this. The difficulty of the project (i.e. complexity of the web) is the real problem that needs solving. We don't need another fork of the browser-verse. We need a fork of the web itself.
We also have a fork of money, it's called crypto and it's used to sell and buy hookers and drugs.
Every fork of something end up used to buy hookers and drugs. Truly marvelous!
Considering how much Google has entrenched itself into the Internet (see manifest v3 fiasco), I would argue that creating a new browser is a fork of the web
As Firefox will introduce Manifest V3 which will make ad-blockers unusable, I hope they will not implement that as well ... But since this is so new, this will not have any add-ons at all for the foreseeable future