Maddock: The End of Indie Web Browsers
No longer is it possible to build your own web browser capable of consuming some of the most popular content on the web. Websites like Netflix, Hulu, HBO, and others require copyright content protection which is only accessible through browser vendors who have license agreements with large corporations."
Posted Jan 9, 2020 16:23 UTC (Thu)
by colo (guest, #45564)
[Link] (5 responses)
The "modern" web has just become too monstrously complex, over the last years in particular, for a project like KHTML to emerge in this day and age. Vendors are cramming _everything_ into their browsers these days. Sometimes, I can't help but feel that at least some of these features are meant to distract (potential) competition and make them keep swimming in rather unimportant directions, so they'll make less meaningful progress in things that matter. You could call it an "innovation moat", I guess, where a standardization body (WHATWG) you partly control keeps churning out new features and ("experimental"/"preview"/"draft"/younameit) standards that others, with considerably fewer resources than you, will have to implement to compete for developer mindshare and decent scores in compatibility matrices.
Who _really_ asked for things like the Web Bluetooth API? How many actual use cases could the Web Crypto API _actually_ have? All this superfluous complexity piled on, while removing APIs and features that ad-blocking add-ons rely on to actually serve the browser's user. (And yes, as attentive readers will have noticed, I'm mostly criticizing Chrome.)
I just hope that, despite all this, Gecko will hold out and stay with us, and the Blink monoculture won't swallow it all up in the end. Having two independent implementations of a capable browser engine and no noteworthy "indie" browsers is still much, much better than having only Chrome/Blink.
Posted Jan 9, 2020 17:47 UTC (Thu)
by excors (subscriber, #95769)
[Link] (1 responses)
I think it has always been complex, but the kind of complexity has changed. The complexity used to be in the trickiness of the implementation; now it's more in the vastness of the implementation.
E.g. it used to be very difficult to write an HTML parser that would work on real web sites with the level of compatibility needed for a competitive browser. The specifications were useless - you'd have to reverse-engineer other browsers and then spend a decade fixing your parser in response to bug reports, and in the meantime you'd be losing users whose favourite site didn't render correctly. Then HTML5 took the results of that reverse-engineering effort from all the major browsers, did a load of compatibility testing of its own, wrote a specification, and convinced the browsers to converge on that. Now anyone can simply implement that specification in a few weeks and have a fairly decent parser.
The same applies to most HTML4-era parts of the platform, which were a mess of underspecified (or unspecified) reverse-engineered features, where a lot of the complexity was in solving compatibility problems. HTML5 showed that it was feasible and valuable to write specifications in an excruciating level of detail, with the explicit goal of making it easier for competing browsers to be developed - all you need to do is translate the spec into code. Since that was relatively successful, new features were designed and specified with a similar philosophy. Then more new features, and more, and now there's so many specifications that the impossible complexity comes from trying to keep up with them all.
Posted Jan 9, 2020 20:54 UTC (Thu)
by smammy (subscriber, #120874)
[Link]
But the article isn't talking about writing your own parser/renderer. Metastream takes Chromium (via Electron) and puts some unusual features on top. The complexity of the Web API—or how well incumbent browsers adhere to it—doesn't matter very much when you're re-using an existing (incumbent) engine. I think colo is right that the web is too complex for new engines to emerge. Microsoft tried and gave up. Mozilla is Rustifying Gecko piecemeal rather than replacing it with something new, which seems to me like a great way to avoid the same fate. Just as completely new operating systems are written very rarely, I think general-purpose web engines are destined to be few and long-lived. I don't know if that's a bad thing: is the world really worse off because there are only two (three?) relevant Un*xes implementations today? Still, it seems bad that Google won't license Widevine to a project that's literally using their engine.
Posted Jan 9, 2020 22:53 UTC (Thu)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Posted Jan 10, 2020 8:01 UTC (Fri)
by fredrik (subscriber, #232)
[Link]
A more interesting question is how to address such patterns of continuous added incidental complexity. I do not believe that browser developers or users would accept a moratorium on new features. So, is there anything else that can be done to reduce the complexity of the web again?
Posted Jan 12, 2020 21:41 UTC (Sun)
by Lennie (subscriber, #49641)
[Link]
And as has always been the case with Web APIs and features for browser buildings:
A bigger problem is probably creating a fast Javascript engine for example. As websites have become thicker, getting a good user experience depend on a lot of optimization.
Still, Mozilla seems be rewriting large parts of their engine over time in Rust. With I assume the goal of pretty much rewriting the whole thing.
Posted Jan 9, 2020 16:33 UTC (Thu)
by anselm (subscriber, #2796)
[Link] (2 responses)
Two thoughts:
Posted Jan 9, 2020 18:03 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link]
EME does not specify the type of DRM used or guarantee portability to different platforms. If streaming services choose to standardize their DRM implementation, and aren't too picky about things like "protected media path", then streaming may work on "niche" operating systems—with or without EME. On the other hand, each service could also mandate its own proprietary and non-portable EME DRM plugin. The advantage here comes from the adoption of Widevine, not EME, and even then it depends on the level of Widevine DRM the service requires. If the Widevine plugin were implemented with NPAPI and ActiveX interfaces instead of EME the result would be essentially unchanged.
EME has a few real advantages over previous plugin systems. It's not as tightly linked to a particular platform as ActiveX, and the interface is much smaller and more modern than NPAPI. In the end, though, it's just another system for implementing native browser plugins, designed specifically to support plugins and services which are hostile to the owners of the devices running them (i.e. malware by any reasonable definition).
Posted Jan 9, 2020 21:29 UTC (Thu)
by roc (subscriber, #30627)
[Link]
Posted Jan 9, 2020 18:27 UTC (Thu)
by Deleted user 129183 (guest, #129183)
[Link] (1 responses)
Thankfully, there are still other means of watching what’s published there. But ironically, they’re those that DRM was meant to prevent…
Posted Jan 10, 2020 0:19 UTC (Fri)
by higuita (guest, #32245)
[Link]
The internet do adapts, while the web is getting more complex, many people still buids sites that aren't that complex. The most complex sites are either for audio/video, build to track you or try behave like a local apps. All those can be replaced, they existed even before html5, even if replaced by unofficial tools/sites
If only one engine existed, i suspect that a new tool would emerge. Either fork from blink or start a new one/upgrade one of the existent smaller ones or even a new tools would show up (say a mix of usenet+chat+p2p+wiki talking via TLS json payloads)... and it could end (on the long run) replace http, like http replaced gopher and ftp.
Yes, it is hard to replace, it would take time, but mozilla manage to sail against a thunder storm for several years and manage to arrive to the target goal. Those years were painful, but proves that i can be done, there is always people that will not accept "one size fits all"
Posted Jan 9, 2020 21:29 UTC (Thu)
by flussence (guest, #85566)
[Link] (1 responses)
If he had actually *built* an independent browser, it'd be *headline news* and stand on its own merits. What actually happened is he spent a week slapping together the 15,731,294th worthless CEF UI wrapper on github and a year farming for silicon valley libertarian outrage upvotes on HN/Reddit.
That's not “indie” anything, that's just straight up pollution.
Posted Jan 10, 2020 9:40 UTC (Fri)
by mfuzzey (subscriber, #57966)
[Link]
That may well be true but it doesn't make his points about not being to be "allowed" to have working DRM less valid.
As others have said the days of building a completely new web browser from scratch are probably over anyway for other reasons but taking an existing opensource web engine and customizing it in some way useful for your niche can still have value.
Posted Jan 10, 2020 11:16 UTC (Fri)
by danielthompson (subscriber, #97243)
[Link] (1 responses)
Posted Jan 11, 2020 8:39 UTC (Sat)
by dvdeug (guest, #10998)
[Link]
Posted Jan 10, 2020 11:46 UTC (Fri)
by FLHerne (guest, #105373)
[Link]
Before the DRM extensions all these services used Flash, Silverlight or other proprietary binary plugins, which had pretty much the same issues, and I don't believe they'd realistically have considered dropping those without a similar replacement.
I suppose Flash at least was loadable through NPAPI so could be used by most browsers if it worked usably on a given platform at all.
Posted Jan 10, 2020 14:24 UTC (Fri)
by jond (subscriber, #37669)
[Link] (4 responses)
For what it can handle, it's lightning fast. It can handle (at least) LWN.
Posted Jan 10, 2020 18:18 UTC (Fri)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Posted Jan 12, 2020 12:42 UTC (Sun)
by lkundrak (subscriber, #43452)
[Link] (1 responses)
Links 2, works on framebuffer console as well as X11. Has a text frontend that's useful over ssh. I found it very convenient to use it to read LWN and browse HTML documentation when I need to use my memory for something more useful than whatever wastes it with Firefox.
Dillo is a very lightweight FLTK based X11 browser, that does a decent job at rendering modern web sites that are not completely brain dead. It used to struggle with https, but that's apparently worked on for next release.
Both start in no time and do a good job at rendering many web sites. Perhaps not Facebook or Twitter .
Posted Jan 16, 2020 22:08 UTC (Thu)
by debacle (subscriber, #7114)
[Link]
Posted Jan 23, 2020 11:15 UTC (Thu)
by curaga (guest, #106812)
[Link]
Then again, I wrote the FLTK backend for webkit, and heavily customized webkit innards to suit my tastes in how a browser should behave. So perhaps halfway between an indie browser and a Webkit UI wrapper. It works well for my use, but I don't stream video, social notwork, etc.
Fifth, Otter, Midori, etc are somewhere in the middle. Not as light as Dillo or Lynx, but can actually render most of the modern web.
Posted Jan 17, 2020 5:26 UTC (Fri)
by smitty_one_each (subscriber, #28989)
[Link]
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
For example, we're using it to sign requests to our service.
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
just implement those you actually think make sense: http://html5test.com/ https://caniuse.com/
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Maddock: The End of Indie Web Browsers
Disrespect; Realistically, My
Day Rejects Mediocre
Dreck Rolling Merrily
Down Restrictricted Mechanisms