Hacker News new | ask | show | jobs
by alentred 1048 days ago
Having never developed a browser engine, my naive question is why is it so hard to develop a new one? We have decent free and/or open-source software in other areas, why is it hard to reproduce this experience with the browsers?

Or, is the problem in the complexity of the modern web browsing experience, and the walled garden created around it by current major browser developers (new standards, etc.)?

2 comments

Web browsers are extraordinarily large and complex applications that conform to reams and reams of constantly expanding standards adding up to tens of millions of lines of code. They have to maintain backwards compatibility with software dating back decades. Their complexity and size rivals the operating systems they run on. All mainstream browsers today are effectively forks or cosmetic skins of a handful remaining browser lineages that have been in development for decades now.

Probably the only notable attempts at building something from scratch recently is servo and ladybird. Servo was (is) an experimental platform to trial new components for Firefox is isn't a serious option for everyday use. Ladybird is primarily a hobbyist project that isn't a serious option for everyday use but has managed to implement a large part of the features of a modern working browser. The article called it "crazy", but it is impressive how far it's got so far.

Also, all of these browsers are open source with permissive licences for the bulk of their source code.

Where handful is 2 now that Trident is effectively dead.

Gecko (from Netscape 6) in Firefox

And KHTML (from KDE Konqueror) -> Apple Webkit -> Google Blink in everything else.

I have no firsthand experience either. So, this might be informative: https://drewdevault.com/2020/03/18/Reckless-limitless-scope....