Become a sponsor to Servo
github.com
github.com
If another browser engine is good enough they might _fork_ it in order to add these kind of predatory features. Kind of like they already did with WebKit, now that I think about it. :-P
I think browser based Apps took over in business because (1) Windows had shit security and shit App deployment, (2) Microsoft somehow forgot about developers developers developers.
Exactly what I was saying. They had the goodwill of developers and then they burned it. Any developer through the 00's got burned multiple times - like the terrible Kiddie Server 2008. They are still burning us with Telemetry and unprofessional choices like advertising within the OS.
Before that they delivered mediocre but functional software. It worked. Now it doesn't work so well and is a masterclass in ugly graphic design and usability flaws.
And why not use a cheap primitive and if a lock is detected to be shared between multiple processes then upgrade it to the "expensive emulation"?
Maybe you don’t see the irony in your comment, but that is exactly how you get opinionated engine. If there is only one party that controls the only engine, that is the definiton of ”opinionated”.
Management of browser engines are absolutely opinionated. It's chock full of opinions. Decisions to not deprecate, decisions on which features to add, decisions on which features to refuse to add, all align around the incentives of the people who control the browser engine. For the last fifteen+ years the internet has primarily been driven forward by the needs of Apple and Google. There's no reason we have to continue like this, though.
Third party cookies are a great example of how chrome is actively hamstringing the entire internet with its dominance and control by a for-profit multinational.
Here are some “opinions”
“The engine shouldn’t allow the user to block select parts of the content”
“Telemetry should always be on”
“The engine should restrict access to a list of websites and domains provided by the government”
“All encryption should have a backdoor”
Google is no less opinionated with Chrome than Netscape, Microsoft and Apple have been. Google's opinions for the most parts align with our own, but that doesn't make it any less opinionated. And a Servo-monopoly would be better but still not great. Firefox started to stagnate after it took over from IE and vastly improved once Chrome appeared. Competition keeps things healthy
We managed to write cross platform games and applications across 8 and 16 bit home computers, but apparently that is too complicated to architect for Chrome as App adopters.
If it is to be Web stack, maybe learn how to support various browsers, instead of shipping one with the application.
> We managed to write cross platform games and applications across 8 and 16 bit home computers, but apparently that is too complicated to architect for Chrome as App adopters.
I'm not sure what you mean. For past 40 years making app run on Windows, Linux, Mac, and now iOS and Android has been a pain unless you wrote a webapp. Or shipped it in a container (Electron).
> If it is to be Web stack, maybe learn how to support various browsers, instead of shipping one with the application.
The issue as developer I experienced is justifying thi effort to management/money-holders.
- I spent last day optimizing our CSS for Firefox.
+ How many of our customers use Firefox?
- 1%
+ I'm going to file that as unpaid leave.
I just don't see a way around the monoculture in web browsers. Web developers don't bother testing it (works on my chromium), management doesn't want to bother with it (what is firefax?), and users just want website to work (how come Firex doesn't work as good as Chromum? Also why do I have 300 toolbars).
It needs features like bookmarks and basic tabs, and support for uBlock Origin rulesets (either as an extension or built-in).
It doesn't need features like DRM, tethering to mothership services, telemetry, and paid-placement portal screens.
For what I have in mind, initially, a non-requirement is perfectly mimicking whatever someone managed to jam into a standard, unless it's really necessary to use "necessary" sites.
(Anyone who does a lot of blocking of ads/trackers will already be familiar with sites not being pixel-perfect.)
I'm thinking that bending over to mimick someone's big-moat browser behavior standards in every detail can be a secondary priority, for later, after nerds are already using it successfully as a daily driver.
Nothing says nerds can't keep a Chromium installed as an emergency backup, for trying that one demo that uses the latest thing Google-Microsoft is going to railroad into the standard, or for watching Netflix while traveling. (And for Web development testing, of course.) But otherwise, we should be dogfooding, like we had to do with Linux.
Last year they passed Servo in WPT and recently passed Servo in stars.
As of January, Ladybird has been able to successfully render Gmail[0], so I imagine this year it will be able to solve most users daily-driver requirements.
I have mixed feelings about Rust, but it's one way to improve the current culture of tolerating numerous memory defects in C and C++ desktop application programs and userland libraries. So that would be a point in Servo's favor, unless they've Rusted themselves into a borrowing/lifetimes/async development complexity corner that makes moving forward too slow.
The issue is that barely nobody uses the Ladybird yet, so there are zero interests for anyone serious party to test that security. So nothing gets published about the issues. I don't even know if Ladybird runs in Google's Clusterfuzz.
Memory safety is their long term plan (according to them), and they are going to use Swift for that. Let's see what happens.
And is this redirecting open source in an essentially proprietary direction (which has happened many times), on the key piece of software that is the Web browser?
Why I'm asking: For a startup, I've used Swift (and SwiftUI, various Apple APIs, "entitlements", developer-hostile App Store experience, often nonexistent documentation). The core language is OK overall (not great). But most of the rest of the developer experience was awful, due to Apple. And you need a lot of pieces beyond the core language.
Ultimately, the people who fund/do the work get to decide how they do it.
I personally wouldn't invest in increasing open source adoption of an Apple property like that, unless someone has a compelling new argument for that.
See here for his reasoning for picking Swift: https://x.com/awesomekling/status/1822236888188498031
> Over the last few months, I've asked a bunch of folks to pick some little part of our project and try rewriting it in the different languages we were evaluating. The feedback was very clear: everyone preferred Swift!
> First off, Swift has both memory & data race safety (as of v6). It's also a modern language with solid ergonomics.
> Something that matters to us a lot is OO. Web specs & browser internals tend to be highly object-oriented, and life is easier when you can model specs closely in your code. Swift has first-class OO support, in many ways even nicer than C++.
> The Swift team is also investing heavily in C++ interop, which means there's a real path to incremental adoption, not just gigantic rewrites.
I do, now
My boss insists on Google Meet, and it will not access audio on Firefox
Every single other website does not have this problem, dark patterns indeed
IME, Google Meet isn't the worst videoconf (that might be Microsoft Teams). Each one has problems.
But what's even worse than when company/boss mandates a bad or so-so videoconf product, is when you're doing partner/customer calls, and for whatever reason, you wind up using their preferred service. So you have to keep a few/several different ones working on your devices, poorly configured, and have many first time joining difficulties at the start of possibly important meetings.
Another time you need several videoconf is when job-hunting, and so many companies want you to use something different. And it's often shitty. And the first impressions can be high-stakes, while you're trying to get their shitty proprietary thing to work, even with Chrome or as an app you put on your sacrificial videoconf device.
This is a little tricky to solve entirely with open standards, but there's a reason we started doing open standards.
The difficult part (rendering, its correctness and performance, protocol support and security) matters more. After that, maybe someone will build UI on top of that.
History: Initially started by Mozilla in 2012. They laid off the team off in 2020 and transferred the project to the Linux Foundation. Source: https://en.wikipedia.org/wiki/Servo_(software)
2025 Roadmap: https://github.com/servo/servo/wiki/Roadmap
Basically how languages like Swift, D, Chapel, OCaml, Haskell are now approaching it, using the type system in addition to automatic memory management mechanisms, not just one way.
Rust pre-1.0 was full of sigils, Perl style, on what kind of memory a type related to to.
I operate a collective which effectively operates as a 501c6 but I file no paperwork, OSC does for us.
> I operate a collective which effectively operates as a 501c6 but I file no paperwork, OSC does for us.
I think you might have meant Open Collective fiscal hosts replace having to operate a nonprofit organisation? Unless I'm parsing your statements wrong.
The core point is just that OpenCollective is not just a payment processor.
What I did do is detach this subthread from https://news.ycombinator.com/item?id=43221548, so it's now the top comment.)
Edit: permission received. Link changed now (https://news.ycombinator.com/item?id=43222904).
With such a liberal license what would stop Google or Microsoft to build their own proprietary browser on to of Servo? At this point releasing software under liberal licenses instead of (A)GPL is basically providing free labor for the tech monopolists.
Really?
I want to know more about that
Silly me: Should have checked for myself...
https://www.theverge.com/2024/1/25/24050478/apple-ios-17-4-b...