Gecko is depressingly tied to Firefox and not easily embedded. Blink has somehow become the de facto browser engine thanks to Electron. Even Qt (QtWebEngine) is now based on Blink instead of WebKit. A lot of web apps like Teams only support Blink/Chromium, just like the dark old days of Internet Explorer. Chrome and Edge are basically spyware which people are most drawn to because of being somewhat default and/or well known for their phone/PC.
I do hope GeckoView gets wider support, but at the same time, the competition is already insanely entrenched. People arn't using Firefox because they prefer Gecko's rendering, after all.
This is news to me. When did that happen ?
(and it sucked, because suddenly a Qt application with a web view was several times larger)
For one, there's so many examples to crib from about how to do it.
But more generally, I just feel like every other player in the space has adopted an adversarial stance. For sure, sometimes Safari or less typically Firefox do lead, but it's rarely by much & usually the set of capabilities overall is far far less.
I don't want a monoculture either, but until we get a other pro-web player who can web-forward their shit, who is aggressive about making the web better, there's just zero hope for this conversation. Blink plus two boat anchors isn't good.
The IE comparison is so woefully out of touch & distasteful. Hard pass. Chrome tries. There wasn't the ecosystem of standards bodies back when IE was inventing stuff whenever they felt like, but today there are tons of expectations & reviews happening at multiple levels to try to refine & figure out what makes sense. In some ways it works great & a lot of review happens, but Moz + Apple hate any real power for the web & kick & scream & don't actually review what should be done if we did want to do the capability & reject on principle making a bigger web platform. There's no real debate because 2/3 players actively believe & push for a small web. It's a miserable rock & hard place situation, trying to figure out what to do when there's only one ayer who believes in a web platform at all.
I love the new entrants, but I really worry they'll also be into their own jam & not excited or interested in making a broader better web platform, and just turn the 2 Vs 1 anti/pro web into a 3 Vs 1 battle.
They have a very different vision of the web where users live in a corporate playground and complex browser engines which only a few large corps can manage.
At this point what is making the web a better platform? The web has feature overload, even with features like Server Push which are seldom used. FWIW I think there are some exciting possibilities and new features for the web, especially around the P2P space, but I don't think it's in Google's interests to push for that at all.
Not to say I don't believe you, I'm just curious. In what way(s) does Google uniquely believe in the web as a platform where Apple/Mozilla don't? Can you provide some examples of this?
They began a replacement engine 7 years later to address shortcomings, and 3 years after that still aren’t sure if it’s actually better and worth switching over to?
Now that I write this, I kind of get it. But I’ve only experienced this for weeks worth of work, not for years.
I knew Servo was part of Mozilla, but was confused by the article. It said 2013 was in use, but listed multiple major issues with it that I would think would prevent FF from being acceptable by any normal person.
Knowing it was a project and not a part of the current FF engine (as I had assumed) is the context I was missing.
Thank you. I don’t follow FF development closely enough to know this stuff, I just know enough to recognize a few project names.
Servo if memory serves was also experimenting with 3d layouts in VR as the wave of the future at one point. Make your own conclusions.
The really actually useful thing that came out of that effort was the CSS engine which is already incorporated into Firefox.
Is there a demonstration Web browser that can be built with the layout 2020 option enabled?
I'm thinking of something like the very basic one that WebKit had when I used to try these things years ago.
But they’re not, so we all have to more or less guess what the intrinsic algorithms for drawing fundamental aspects of the web are supposed to be.
Such a failure of the CSS specs.
That complexity does lead to bugs (and bugs in Chrome can become part of the de-facto standard if the Chrome devs don't fix the bug fast enough) but the spec itself seems quite complete in most areas. In the few areas that are underspecified, simply seeing what other browsers do usually fixes the problem as there's usually an overlap in behaviour between at least two out of three remaining browser render engines.
The basic algorithms and rendering steps are all laid out pretty well in the spec. Even Quirks Mode has a standard (https://quirks.spec.whatwg.org/), though that's far from complete as every browser has its own compatibility quirks because of browser detection and branded CSS properties.
I know CSS documentation used to be awful, but the current version of the WHATWG spec is quite readable in my opinion and doesn't leave as much room for confusion anymore.
It was a nightmare, and part of the reason (I believe) that Perl 6 got so over-specified. It meant you couldn’t count on the spec, that you never knew if something was a bug or intended behavior.
HTML4 was in a similar situation. Microsoft and Netscape developed competing variations of under-specified features, leading to a decade of the worst Dark Ages for web development.
So if we use Chromium’s CSS engine, then either (a) Google now controls a fundamental part of the web (and there’s no evidence that they’ll behave in any sort of responsible manner), or (b) we now have the same specification problem.
Getting complex code and specs to agree 100% is a Hard Problem, unsolved almost everywhere. Giving more power to Google won’t help.
(I'm an engineer on Blink's layout engine).
We've recently finished re-architecting Blink's layout engine, part of the reason why we did this investment was we were concerned that we couldn't fix WebKit era bugs (e.g. too many sites would depend on them due to our shared heritage). This makes other engines jobs (e.g. Gecko) super difficult as they'd need to encode even more quirks than they have time for.
I think we've broadly mitigated a large part of that risk. There are still large parts of CSS which are underspecified, e.g. tables/block/float layout. But its slowly getting better.
Is there an example of under-specification that sticks around in practice?
Everything they do has to work with the old stuff, or be very explicit that you’re changing the rules (like adding “display: flex”).
I suspect there is also a fair amount of “this is what everyone did so try not to break it” in there too, much like HTML.
I’m not sure anyone could make a clean spec under those circumstances.
HTML6 or CSS4 could have a fresh, clean start and there's nothing preventing that.
But there is a long long long legacy of CSS Acid Tests that have been very well established & expected, that should guide most implementations to success.
I forget what it's called but a bunch of the major browsers get together each year & find a couple things to agree to focus on & make happen each year. Trying to just play catchup & go through the years catching up seems semi intuitive a path to getting to modern. I agree that maybe not all these specs have gotten great test suites set up, but I feel like CSS in general realized this was a problem we'll over a decade ago & upped their game. Maybe the situation has decayed since, I dont K ke, but would love more idea of where we lie atm.
Firefox abandoned it years ago, and now Flow and Ladybird are from-scratch new, efficient browsers.
While you are busy improving the layout engine other browsers are working on features that bring value to users.
However there are still quite a lot of much, mich easier wins Mozilla has either ignored for 20 years or actively walked back on.
I really really hope it pans out & delivers. But it properly & rightly should be an ever shrinking piece of the puzzle. It underpins it all & flexility here would be key, better tech (parallelizable!) very empowering, put to the sword many criticisms, but yeah: it's an ever shrinking factor versus what we can do with the web.
And there are so so so few powers helping us make what we can do with the web better. Even the historic pro-web folk are trying to end the web as we know it. The "Towards a Modern Web Stack" Hixie mentality (Flutter CanvasKit) is to basically ignore destroy & end the contemporary web & html & make the browser a native app delivery platform with zero user-agency, to make it a giant moving picture show. The rest of the browsers have adopted a highly adversarial stance where every possible feature is portrayed as a threat to users, as ruin. There's just so few visionary hopeful excited people left building browsers that do stuff for people. You are so right on.
https://docs.google.com/document/d/1peUSMsvFGvqD5yKh3GprskLC...