Hacker News new | ask | show | jobs
by ravenstine 2599 days ago
Exactly how many browser engines do we need? There's currently Blink(Chrome|Edge|Brave), Gecko(Firefox), and WebKit(Safari and various OSS browsers). With web technology standards, it doesn't really make sense that there would be that much competition, so having 3 competing engines seems sufficient to me.
4 comments

We need enough as to be reasonable competing point of views when it comes to setting standards. Things like web components, service workers, built-in javascript modules and more were pretty meh features pushed really hard by a specific browser vendor that tried to ignore feedback/pushback. The only way the standards won't get to be more of a mess is if we have multiple implementations and multiple, distinct organizations having opinions on the specs and implementation.

A world where Blink has 80%+ marketshare (which is pretty much what we have or where we're headed) is one where a single group can dictate the standard for everyone else.

Do we even need more standards though? The standardization process takes a lot of time and just because something is a standard doesn't mean major players will implement it. Implementations always trump.

Browsers are basically an operating system now. For comparison, nobody cares that the Linux kernel isn't a standard. Nobody wants a "competing" Linux kernel implementation. The implementation itself is the standard and reference and that's totally fine.

The problem with looming IE dominance in the old days was that it was closed-source and proprietary, but that's not the case with modern day engines. In the FOSS world, competition isn't really a big driver. It just causes redundant work.

> A world where Blink has 80%+ marketshare (which is pretty much what we have or where we're headed) is one where a single group can dictate the standard for everyone else.

That's just not true. Any piece of software can be transformed into another piece of software. If <Upstream> really wants some feature I don't want, I can patch it out. If I publish some feature that <Upstream> thinks is good, they can just merge it.

Of course it would be good if <Upstream> was more like the LLVM-Foundation and not "literally Google", but the point is that having just one engine isn't the same as one party controlling the implementation. Microsoft obviously understands this, or they wouldn't choose Chromium as the new basis for Edge.

> For comparison, nobody cares that the Linux kernel isn't a standard. Nobody wants a "competing" Linux kernel implementation. The implementation itself is the standard and reference and that's totally fine.

Except for the people working on the BSDs, Hurd, Minix, etc.

POSIX is the standard, Linux is the implementation (not completely accurate, but close enough). Apps built to the standard can usually run on BSD with minor changes, just like websites built to work with Chrome usually work well on Firefox with only a few minor changes.

I will be controversial and say that Linux's utter dominance in the post-UNIX space may have been detrimental to the development of the ecosystem as a whole, limiting radical experimentation and preventing a much-needed reimagining of core computing paradigms.

> POSIX is the standard, Linux is the implementation (not completely accurate, but close enough)

POSIX is more of a post-hoc thing, it doesn't really matter except for compliance - and then Linux isn't compliant. In practice you still need an abstraction layer.

If you want to use actual Linux features, you have to use Linux-specific interfaces. Of course a lot of applications don't do that, but that's besides the point.

The same is true for other UNIX (and non-UNIX) operating systems. They're not implementing new standards, they're implementing features to differentiate themselves.

> I will be controversial and say that Linux's utter dominance in the post-UNIX space may have been detrimental to the development of the ecosystem as a whole, limiting radical experimentation and preventing a much-needed reimagining of core computing paradigms.

Perhaps, but standards wouldn't help here - to the contrary.

This is true, and I agree. I think I may have missed this in your original comment:

> The standardization process takes a lot of time and just because something is a standard doesn't mean major players will implement it. Implementations always trump.

Yes, absolutely. Standards are driven by successful implementations. My point was that more, better implementations (leading to new and improved standards) are not a bad thing. The web stagnated during IE's dominance, and it may develop the same sort of stagnation under the dominance of Blink. Some degree of competition is good to keep things moving forward in ways that users want.

> That's just not true

Its true enough: it keeps happening. Patch it out or resist all you want, it doesn't matter if you have to acknowledge and deal with its existence, if only because of the amount of energy it takes to push back against it. If it doesn't have a feature you want because they disagree, you can add it to your browser of choice, but it doesn't matter because you still won't be able to use it.

It's exactly what we're seeing with firefox. They could implement feature XYZ, but it would be irrelevant because no one (web developers) could use it.

You just moved from "market leader can dictate the standard" to "market leader can dictate what developers will want to target".

But with that premise, having a standard or not doesn't determine the outcome. Market share determines the outcome. The standards are just recommendations, nothing forces Google or anyone else to implement them.

Fair enough, my wording was bad.

Let's just go with something simpler: Google having the control it has on the implementation (and thus, most everyone else because to make a useful browser you have to make it mostly compatible with Google's implementation that everyone will target) is bad.

Blink and WebKit are basically the same though. I'm not sure if they should be counted separately. How much WebKit existing helps prevent Google from taking control of the web?
I'm sure some won't like this comment, but there are only two that matter: Chrome and Safari. Firefox's share is about the same as IE 11 (2.0 -> 2.5%).
Where do you get those numbers? This indicates FF to be around 10% still:

https://www.netmarketshare.com/browser-market-share.aspx?opt...

EDIT: This is on laptop/desktop. Without the device filter it's about 5%. But then again, I don't think it comes by default on any Mobile OS, so they have a disadvantage there. Plus non power users of their smartphone (like me) might not change the browser there.

That's may be true, but that doesn't mean Firefox/Gecko isn't a viable alternative just because fewer people are choosing to use it. In fact, I think it demonstrates my point that people don't need competing browser engines that badly because they aren't radically different. There was a time where IE was hemorrhaging users to Firefox, but that was because Firefox legitimately did things better than IE/Trident. At this point, however, our expectations of what a web browser should do are fairly solidified, so people are likely going to choose whatever is being marketed to them the most and comes installed on many Android phones by default.
> Firefox's share is about the same as IE 11 (2.0 -> 2.5%).

No? Most browser share analysis put FF at #2 (9-10%), for desktop/laptops and at #3 (5-6%) for mobile.

In minds of developers/managers/testers. I find too often sites that do not work correctly in Firefox.
WebKit*

Webpack is a bundler.

LOL

Thanks for the correction.