4 ms·
Lately I was tryong to understand the exact reason "why". Why are modern browsers so ridiculously complicated? Rendering a (albeit confusing) content is a PDF-l
by sedan_baklazhan 5y ago
Lately I was tryong to understand the exact reason "why". Why are modern browsers so ridiculously complicated? Rendering a (albeit confusing) content is a PDF-like kind of job (or am I wrong?) What is the exact complexity here (except for JS compiler, which is again just a compiler)?
- dmitriid 5y ago> What is the exact complexity here There are hundreds of standards spanning thens of thousands of pages. Some of them are obsolete, some of them are not, most of them interact with each other in complex and non-obvious ways. An attempt to measure the scope is here: https://drewdevault.com/2020/03/18/Reckless-limitless-scope.html https://drewdevault.com/2020/03/18/Reckless-limitless-scope.... And that's before we get to things like Javascript or WASM. Another measure is the count of WebAPIs. A modern browser ships six to seven thousand APIs: https://web-confluence.appspot.com/#!/confluence https://web-confluence.appspot.com/#!/confluence All these APIs are available via Javascript
- sedan_baklazhan 5y agoThanks. It looks like complexity increase deliberately aimed at maintaining market monopoly. I can't rationally believe than tens of thousands of pages of documents are needed to display just a (however complex it is) UI. It's a UI engine, after all, and nothing more.
- tekknik 5y agoWith file system access, media APIs, and networking, the browser is more comparable to a full fledged operating system than a UI framework.
- sedan_baklazhan 5y agoIt is not merely "comparable". It is in fact hundreds or thousands of times more complex, as it turns out (and it still consumes OS API's). I don't find it adequate.
- cxr 5y ago> An attempt to measure the scope is here: https://drewdevault.com/2020/03/18/Reckless-limitless-scope.html https://drewdevault.com/2020/03/18/Reckless-limitless-scope.... The methodology used there is horrendously bad. Drew's smart, so it's hard to conclude that this isn't intentional just so he can pump up the numbers and tell cute stories like the one about Wikipedia's list of longest novels. (Not to mention, an overabundance of specification of correct behavior isn't what makes implementation hard, it's trying to match the undefined behavior that everyone else follows without having a spec that makes things hard.) Any serious attempt to measure the scope of what browsers actually implement is pretty straightforward, so there's no real excuse: you start with the the HTML5 spec and then go from there.