5 ms·
Then why does it feel like standards lost? We don't have float:right;zoom1: but our "necessities" nowadays are even crazier. Babel, vdom, frameworks provided b
by alganet 2y ago
Then why does it feel like standards lost?
We don't have float:right;zoom1: but our "necessities" nowadays are even crazier. Babel, vdom, frameworks provided by browser-vendors. Those are several orders of magnitude more complex than previous "workaround" approaches to the web, all unstandardized.
How about Electron? Do we see any Firefox-based desktop apps around or is that market completely dominated by the Chrome runtime? Are app developers happy having only Chromium as the viable solution? (my guess: they're not, but they have no choice).
Where we're going is even nastier than clearfixes and table layouts.
- m4rtink 2y agoIsn't this a Firefox/Mozilla fault as well ? Afaik there is really no API or support for embedding Gecko & anyone who tries to do that, is on their own, having to periodically rebase large patch sets for embedding.
- alganet 2y agoPossibly. I guess XUL was that API, but XUL is no more. It helps if your company uses the embedded stuff in other products. Like Microsoft used the Trident engine from IE6 all over Windows components. In that way, allocating resources for developing an embeddable engine is justifiable. Can Mozilla do that? I don'know. Google can (and does it! why wouldn't they?).
- notpushkin 2y agoThere is GeckoView on Android: https://mozilla.github.io/geckoview/ https://mozilla.github.io/geckoview/ On desktop, it used to be available as an ActiveX component and a GTK widget, at least: https://www-archive.mozilla.org/projects/embedding/embeddingoverview https://www-archive.mozilla.org/projects/embedding/embedding... Wine still uses WineGecko as a replacement for IE engine – might also be worth looking into.
- iggldiggl 2y ago> There is GeckoView on Android: https://mozilla.github.io/geckoview/ https://mozilla.github.io/geckoview/ But sadly on Android the alternative is simply using a Chrome/Blink-powered webview, which is capable enough for most people and importantly comes at a zero APK size hit. So you need to have pretty special needs before including a complete custom browser engine inside your app becomes an attractive proposition. (Whereas on Windows for example for a very long time the only OS-provided browser engine was IE, so if you needed more advanced web features, you couldn't avoid shipping your own browser engine in your application anyway.)
- notpushkin 2y agoHmm, you’re right, I think GeckoView is “marketed” specifically for making browsers: > However, Android’s WebView is not really intended for building browsers, and hence, many advanced Web APIs are disabled. Furthermore, it is also a moving target: different phones might have different versions of WebView, all of which your app has to support. It might still be an okay choice for an application shell sometimes (e.g. if you use a web API that is not supported by WebView and no polyfill is readily available for Cordova/Capacitor).
- darepublic 2y agoBabel/vdom is not necessary for web dev. Can't blame chrome for electron.
- alganet 2y agoIf something uses DOM and JavaScript, to me it's web enough to be called web, even if it is rendering outside of regular browser expectations (some React Native stuff or similar). The whole premise of this tech is to approximate app development to web development. Anyway, it's not about _blaming_. Web technologies are being laid in a landscape by multiple parties, it's about understanding that landscape.
- bawolff 2y agoSheesh, the existence of libraries does not mean standards have failed.
- alganet 2y agoSometimes it does. Would normalize.css exist if the standards were more specific around default styles? Would jQuery/sizzle exist if CSS selectors were available as a DOM API in the first place? Would vdom exist if DOM was faster?
- kccqzy 2y agoVDOM would still exist if the DOM was faster. It's a different abstraction that reconciles the differences between the simple data->elements flow and the inherently stateful DOM. If you don't understand why VDOM exists, here's a nice experiment: in your next web app stop using VDOM and always set innerHTML. You'll find that (1) it's actually fast enough so you can conclude that VDOM doesn't exist just to patch over DOM slowness; (2) you are missing some features you get in VDOM. The answer is that the DOM inherently has state. It could be a textbox's text input and its cursor state, or the focus state, or whatever. But developers don't want to think about this DOM-managed state to simplify their mental model.