It's been so inspiring to see him and his crew of hackers build a new, independent browser from scratch. I must admit I didn't think it was possible on this small scale in terms of man hours and funding.
However, the thought has also crossed my mind if we're finally seeing fruits of browsers being better standardized on "95%"+ of the popular features -- and if writing a browser today is in fact easier than both writing AND maintaining a browser a decade back. While the web is of course still evolving, it feels more "settled in" than 10-15 years ago.
There's also the factor that past developers didn't have the more complete roadmap set when they initially planned browser design, but now we have huge amounts of web standards already there AND also know how popular they got over time i.e. what to prioritize to support a modern web. One might superficially think there's simply more of everything, but I also think ideas that can be discarded. Just imagine that Internet Explorer had XSLT support, and FTP was common once upon a time!
It would be interesting to hear more about their own thoughts on these topics!
Edit: My bad; XSLT is still commonly supported and by all major browsers but a rarely used feature and stuck in limbo in XSLT 1.0. So it's probably among those things that can be safely omitted for quite some time.
It is not any easier, because we still have a monopoly running the show, only it's not called Microsoft anymore.
If anyone threatens Google position, they can literally throw money at the problem, invent some overcomplicated standard, implement it in Blink, and have the competition chase them. It doesn't need to go through W3C either, if it works in Chrome, all web developers will adopt it and any smaller engine will necessarily have to support it or risk losing whatever little market share they have left.
Having control of the internet now is of greater strategic importance than it was 20-30 years ago when Microsoft was king of the hill.
This is where Apple'grip on the iOS browser engine choice paradoxically comes in clutch.
It is conceptually despicable, especially for devs, but it prevents Google from completely running the show.
Now the European Union is coming after Apple without trying to rein in Google's influence... This seems short-sighted.
The current dispute between the EU and Apple has nothing to do with Safari though and is about the Apple store, not sure how that's relevant?
no, they're also forcing Apple to allow other browser engines on iOS, which was previously banned. other, third party iOS browsers still used the safari webkit engine.
https://www.apple.com/newsroom/2024/01/apple-announces-chang...
Every app may negatively impact system performance and battery life. A better webview could positively impact system performance and battery life. This statement from Apple was made in bad faith, and it didn't fool the regulators. It definitely shouldn't fool technologists.
It could improve performance, but let’s not kid ourselves that there are many companies that care about the minutiae of battery life as much as Apple. I mean, have you used a windows laptop recently. It’s -so- much worse than a MacBook that I refuse to believe it’s all about the m* magic chips. Sleep, power cycling, prioritisation just all seem to be better implemented.
I haven't, but I have used a Linux system recently, and the experience is far better than a Mac. Even the regulators can see that Apple doesn't care about battery life and performance so much as it cares about the billions it extracts from Google for the search engine deal. Allowing better browsers means that fewer people will be stuck on Apple's inferior browser, and Google will pay correspondingly less to access them.
It is my understanding that Apple losing here would prevent them from enforcing WebKit as the sole iOS browser engine. I may be mistaken.
I think you have a fundamental misunderstanding of the goals of the EU in this matter. The objective is not to keep both companies on even keel, but it is merely about enforcing existing anti-monopoly laws. If this results in Google gaining a de-facto browser monopoly then those same laws can be used to break up that monopoly when we get to it.
What would be the alternative in your opinion? Allow Apple to break the monopoly laws in hope that they will be able to rein in the growth of the Google browser? What good is a law if it will not be enforced?
Force Apple to allow alternative rendering engines, but only the ones with <50% market share. This would promote diversity in rendering engines without giving what is already by far the most dominant rendering engine the opportunity to get more of a stranglehold over the market.
People already mistake Blink-only APIs like Web USB, Web Bluetooth, Web MIDI, etc. for web standards. The market is already dangerously close to where it was 20 years ago, where a vast number of web developers treat the most popular rendering engine as if it’s synonymous with the web. Handing more opportunities for market share to Blink is playing with fire.
You want Apple to allow Gecko or Ladybird? Sounds great! But the monopoly that threatens the web at the moment is Blink.
Blink isn’t dangerous, Chrome is. You can have a privacy focused Blink browser.
Another thing the EU could do which would help is to prohibit cross-promotion of browsers, as Google has quite aggressively done since Chrome’s inception and Microsoft is returning to doing with Edge.
That means no more “download Chrome” prompts on Google search and YouTube, no pestering people to install Chrome when tapping links in Google iOS apps, no bundling of Chrome in installers of unrelated software (very common on Windows), etc.
Some sort of rule against favoring one’s own browser in web apps (as has happened with GSuite and YouTube on multiple occasions) would also be nice but unfortunately strikes me as unlikely.
At the very least, if the EU really wants to limit the tech giants' grip on the web, it needs to fund independent open source web engine development handsomely; their pockets are more than deep enough and projects like ladybird and servo can use the extra resources.
You're misunderstanding the goals of the EU. The EU only cares about limiting their grip as a result of their main goal. The main goal of the EU is to protect the rights of their citizens, which they do by enforcing existing anti-monopoly laws.
The EU has in principle no problem with a company gaining giant market share by providing a successful service or product. There would be no problem if Google or Apple would gain 99% market share by everybody voluntarily choosing their product. But it is a problem if they then use that marketshare to make it harder for competitors to compete.
I.e.: you're wrong to say that they're trying to minimise the 'grip' they have. They are merely trying to prevent companies abusing that grip.
That being said; I'm pretty sure that the EU does actually fund a lot of open source development
If only Mozilla hadn’t run Firefox into the ground (effectively) we wouldn’t need to reply on Apple.
As I still use Firefox, I have to agree with this.
The performance improvements are nice, but trying to make a Firefox another Chromium skin irks me. Plus I still miss the official compact mode.
It'd be nice if Apple allowed Firefox to use their own engine, while not allowing Google's engine. But I can't imagine Apple being that nice.
That's the problem. They should go after Google too. Honestly all of these megacorporations should be broken up.
This is why we, tech nerds who understand the problem, must resist monopolies: object to using such APIs. Chrome wouldn't be in quite this position if, instead of embracing the monopolist, more techies had warned their non-techy friends and family away from it, like they did with IE.
Laziness and inertia is the reason monopolies exist, yet when you inquire individually everybody have their own inane reasons to keep the status quo alive.
Elsewhere in this comment section someone literally said they use Chrome because Reddit does not work in Firefox, which is utter nonsense.
This is a tragedy of the commons, rather than simple laziness. Choice of messaging apps is the same. I may know that the world would be a better place if everyone ditched WhatsApp and used signal, but I want to schedule tennis matches today, and the value of a open source future is distant and heavily discounted by the knowledge that it is low probability, even if I do my part.
"Tech nerds" built web sites that only worked in IE back then and "tech nerds" are building websites now that only work in Chrome. Didn't have a clue back then, and don't have a clue now. Forget warning "non-techy" people and clean your own house first.
Ethics go out the window so long as the flow of shiny new features remains unimpeded. The only reason devs turned against IE is because Microsoft got complacent and essentially abandoned it, letting Gecko and WebKit steal the spotlight… a move that Google is smart enough to know to not repeat.
We warned people that the government was snooping on everything you transmitted or received.
They didn't listen or care.
Many took tech jobs to help further that cause. Perhaps unknowingly?
Doesn't work since the corporation can just fire you and replace you with someone who has no such objections.
I have been rather loud about this and while I don't think my voice has meant much I think I have been part of a growing group of people who - together - are making a dent in this monopoly.
Becoming part of it isn't hard either, if you test software either as a SW engineer on a team or as a full time tester it might actually save you some time :
- If you use Mac, test in Safari first. On any other platform, install Firefox (or the Debian version, or Librewolf) and use it as the first tool to test applications.
- If it doesn't work (and the customer hasn't very explicitly said they absolutely only care about Chrome or IE^CEdge) report it as a bug.
I mean, seriously, who would have accepted a feature that only worked in IE 6?
---------
OK, some people might say: but IE 6 was an old and outdated browser, you cannot compare IE 6, or any version of IE for that matter to Chrome.
Or one might say: Chrome has already won, your idealism is appreciated, but you are too late.
Well, here is the thing: IE was at one point in almost the exact same postition as Chrome is now:
- biggest browser by far
- endorsed (or even enforced) by IT
- lots of features only worked in IE. (I remember one particular customer who seemed to be obsessed with security to the point were we had to keep a VM with Windows XP and IE 8 around with both Active X and Java Applets enabled to sign into them. This was around 2014..! Yes, if you find this notion of security absolutely ridiculous then we agree.)
---------
OK, one key difference:
Back in 2006 when I started fighting IE we had Mozilla on our side. Firefox was innovating like crazy. We had extensions that let us embed IE in a tab to render certain web sites. We could automatically archive a full website for offline access (full rewrite of links so they worked on our copy was included). Full developer tools that everyone knows from every browser these days started out as just an extension to Firefox, named Firebug IIRC.
Today, while I understand that the extension API had to be reigned in before a disaster happened, it went way to far and today we cannot even get a function in the API to programmatically remove the top tab bar when we add a tab bar on the side. And not only that, but if someone asks about that particular issue, someone will come and hush and hide the comment.
So godspeed to Ladybird devs and Orion devs, Librewolf devs and actually even Safari devs and everyone else who challenges the current monopoly!
Google's control of the internet is exaggerated. Amazon is not dependent on any web browser to reach clients, they can just launch their own app and be done. And yes, they can do it all platforms.
How is Instagram dependent on whatever Google decides? How is Facebook, TikTok and Snapchat? How are streaming platforms dependent on Chrome? Big businesses with a ton of users easily launch their own apps to sidestep Chrome. And if Chrome makes fundamental breaks of HTML and CSS, then most of the internet is going to be broken in Chrome.
If your bank website stops working in Chrome, they're not going to change their website. They're going to ask you to install another browser.
I can guarantee that if a bank website stops working in Chrome they will be instantly working around the clock to fix the website!
Or not? I remember when banks required you to have IE long after nobody was using IE. I remember when banks showed an alert against using Safari long after it became the most common mobile browser. Banks also have their own apps and are not dependent on Chrome.
That was in a time when expectations were low and all the banks were pretty equally crap. There are better choices now, and even my mum would be pissed off of her bank website didn’t work in her current browser.
Would she be pissed off at A) The bank? B) The browser? C) The computer? D) Her internet provider?
People can change browser more easily than changing banks. They can even have multiple different browsers on their machine, and one for only doing banking.
The biggest companies might be immune, but anyone else's incentive is quite high to use Chromium (Electron) to build that app on.
The problem ultimately isn't Google pushing new "standards", since plain HTML and other existing ways of doing things that work in many more browsers still works; it's the trendchasing web developers who somehow feel the need to make sites that only work in Chrome, and the propaganda that Google to encourage that behaviour.
It's almost as if backwards-compatibility is seen as something to be avoided in certain web dev communities. Lots of "drop support" and "moving forward", zero consideration for simplicity and interoperability.
Counterpoint: A lot of these newer features are only used on a small fraction of websites; things like webgl are only used for games and tech demos, most websites work just fine without it.
Probably not. Yeah we have web standards and some idea of how to architect it, but the total set of APIs and HTML/CSS features a browser supports is probably changing faster than the Ladybird team can actively implement it. The API surface is just impossibly large compared to 10 or 15 years ago. Look at all of these: https://developer.mozilla.org/en-US/docs/Web/API
And that doesn't include the updates to Javascript, MathML, SVG, HTTP-based security features, encryption or media support.
It's a lot of work but most of it is very doable for several reasons:
- standards are really detailed at this point and a large reason why the three remaining browser engines (chromium, safari, and firefox) largely do exactly the same things.
- There are a lot of open source components. It's not necessary to start from scratch on things like wasm and javascript interpreters for example. There are some nice low level graphics libraries out there as well. And of course things like Rust are now pretty mature and there's a lot of rust code out there that does stuff that a browser would need.
That being said, it's one hell of a hobby project to take on and I don't see much economical value in an independent implementation of something provided by free by three independent browsers already; two of which are open source.
Which begs the question: why?!? Is there qualitative argument here of doing the exact same thing but somehow better?
In the case of Ladybird they build everything from scratch (intentionally) so existing open source code cannot be used.
The main argument for doing it is because it is fun, just as with SerenityOS. Having alternative implementations is never a bad thing for web diversity though.
Of course, alternatives are almost never a bad thing, and devs should feel free to work on whatever floats their boat when they're volunteers, but developer resources are scarce, and there are other things in the FOSS realm that could use some attention where there really aren't great alternatives. But again, if these people prefer to work on this, that's OK. Just because the world could use a better X doesn't mean these devs have enough interest in X to be effective at building such a thing in a volunteer capacity: in my experience, having personal interest in a project makes you much more productive than working on something you really don't care about.
Not to mention the number of possible vulnerabilities that will be needed to be pentested and fixed.
It also helps that there are tests
https://web-platform-tests.org/
Indeed. These may be even more important...
https://github.com/tc39/test262
A decade back, maybe... but decades ago the number of things you had to support was just so much smaller even if you only looked at HTML! Consider https://www.ietf.org/rfc/rfc1866.txt vs https://html.spec.whatwg.org/multipage/
Writing a web browser was hard in the old days for a lot of reasons, but trying to write a full-featured one today is a huge undertaking and we're still adding a bunch of new features all the time and expecting browsers to support them
I thought, oh, that's not so bad. Then I realized what I was looking at was a 10 page index.
IMO most of the complexity of modern browsers is in all those strictly optional, app-like features. PWAs, service workers, JS JIT and all that stuff. If you want to build just a hypertext viewer, not a full-fledged OS/application environment, just leave them out and nothing of value will break. Things also become substantially simpler if you aren't looking to make your JS execution as performant as theoretically possible (and you don't really need to with how most websites actually use JS).
The web as a platform keeps getting better. As someone who's been developing for it for a living since 1998, I'm delighted to see and to share things like "Interop 2024"^1 and Web Platform Tests ^2, which are improving the adoption pace and reliability of key platform features:
1. https://www.webkit.org/blog/14633/get-ready-for-interop-2024...
2. https://wpt.fyi
Thanks jug! I'm super proud of all the folks who have worked on it with me :^)
This is definitely true! I've worked on browsers on and off since 2006, and it's a very different landscape today. Specs are better than ever and there's a treasure trove of tests available.