Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Lars Knoll is one of the main authors of KHTML, the foundation for both WebKit (powers Safari) and Blink (powers Google Chrome and Microsoft Edge). And he has this to say about this Twitter thread [1]:

--- start quote ---

He’s absolutely right. Implementing a browser engine from scratch was a lot of work in 1999/2000, it’s close to impossible today.

--- end quote ---

[1] https://twitter.com/LarsKnoll/status/1421121639845187585



It's basically a VM with a monstrously complicated ISA.


* and probably the most inefficient


A small independent team would probably struggle to build an SUV, too. This is not an argument on its own, why is it important?


Websites are either made to only be as good as what the worst browser can render or needs enough developer time to work around it. In other words as if speed limits were set to 10mph on highways because my crap SUV dictate the road for everyone around me. The argument gets turned on its head when using a car analogy though. If only Google-sized companies can build a modern rendering engine then they dictate the web (and they rarely agree with users on what's important). If Ford could dictate roads they would make them impossible to drive on in other cars - or if Google did they would mandate only cars with RoadAd™ turned on, if Apple did only cars with iTires™ and so on. It's the road that gets dictated by the big companies like Apple and Google, not the cars. Roads luckily work just fine in an old or low-production car, unlike the web.


The argument that Google basically decides what a browser looks like is interesting. The negatives are often theoretical, "what if they just built ads into the engine" or privacy-oriented "they slurp your data". I pretty strongly believe that Google (and perhaps Apple in some respects) pushed the web far beyond where it could've stagnated, probably for self-oriented purposes. If you want to see a browser without selfish advancements, compare IE11 to its contemporaries, on their release and then after a few years. Microsoft had no reason to force new technology into their browser experience, so they didn't, and their browser turned into a boring antique.

You mention that "[Google] rarely agree with users on what's important", but I'm not sure that's true. I think the HN crowd, and those adjacent to it, often disagree with Google's practices, but my intuition is that Google's browser changes have been effectively silent improvements for the vast majority of users. If you installed a massively outdated version of Chrome on a random user's phone or PC, they'd probably be almost immediately upset at some missing feature or function.

At some point, these selfish advancements either become obsolete via the "official" way of doing things being implemented, or become themselves part of the spec. Should Google, Apple et al. have this much control over the future of the browser spec? My instinct is "of course not", but when I think about the history of the web, and how important these selfish decisions have been, it becomes harder to decide.

My original point you're replying to was moreso "why should a small independant team be able to build a browser", and I'm not sure you replied to that.


> The negatives are often theoretical

They are not theoretical. Too bad webapicontroversy.com has been shut down (it looked like this [1]), but you can scroll down to "defer" and "considered harmful" in Mozilla's positions here: [2]

There are more, of course, but they are not visible unless you're willing to follow thousands of issues across hundreds of GitHub repositories. One that springs to mind is, of course Constructible Stylesheets. Mozilla and Safari: the spec describes an algorithm that leads to deadlock in trivial code, we wont implement it until this is fixed. [3] Chrome: ship it, because lit-html (developed by Google) wants it and is already using it. And then procedes to gaslight people and misrepresent their positions (cant' find the relevant link, but at this point I can't find the will to dive into the cesspool).

[1] https://user-images.githubusercontent.com/32768/108985355-3f...

[2] https://mozilla.github.io/standards-positions/

[3] https://github.com/WICG/construct-stylesheets/issues/45#issu...


Forcing changes to the spec/implementing non-spec features is one of many possible negatives of browser oligarchy, though. When I said the negatives are often theoretical, I was referring to the other arguments that are commonly raised, surrounding pernicious updates and privacy concerns.


I've never understood the thought process that browsers need to be implementable from scratch cheaply, in general.

Browsers are the new OS. Most attempts at a feature-complete OS that is able to run software intended for other OSes would be incredibly expensive.

Plan 9's been in development for over 29 years, and it's still niche.


Right. Having the big three engines released as open source, where everyone can make a fork or use them like Microsoft is doing with Chromium, I don’t see the point.


My concern would be that Google decides that WebKit/Blink is a dead end and creates a new rendering engine, and not making it open source. Mozilla can just about keep up with new feature, but even Microsoft just gave up and uses Blink.

Also what’s the point of standards if nobody can realisticly implement them?

Yes, I can see that Apple perhaps isn’t giving WebKit sufficient attention, but Google and Chromiums dominans is the bigger problem.


I think google is very happy with their current model of having everyone just ship blink. It means they control what the web can and can't do not just in their own browser, but many others. None of those browsers are running hard forks

And sure, you could disable an API or this and that feature, but it means you're spending a lot of time to keep reintegrating upstream, because google changes a lot of things all the time, so you really have to pick and choose what diversions you afford yourself. you can poke around the brave repo a bit to see the devs bemoan that.


Even Microsoft with their unlimited money and resources couldn't afford to develop their own engine.

Even with the fork they can't keep up: https://web-confluence.appspot.com/#!/confluence

Mozilla survives by whatever money Google is giving them, laid off most of their staff and shut down development on engine improvements like Servo (whether you like it or not, Servo is dead).

That leaves WebKit as almost the only meaningful opposition in the face of Chrome's onslaught. And it's going to get worse.


> Browsers are the new OS.

No, no, that's incorrect ;)


Is it?

I'm doing more work these days in a browser than in any other application environment. The browser loads arbitrary code from external storage and executes it. It provides a standardized abstraction onto the hardware layer (mouse, keyboard, screen, audio, and in my case head-tracking).

One could argue that it's less operating system and more glorified UI toolkit, but I can't name a UI tool kit that also has to provide security sandboxing to prevent arbitrary code from misusing its hardware interfacing.

Perhaps we could consider it a virtual machine running atop an operating system. On the other hand, I think Chromebooks suggest that you can build the host for that virtual machine very thin.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: