5 ms·
As someone who has tried, there are just too many things wrong with the web as a platform. I'd love to use it to ship great customer experiences, but: 1) Web
by chadaustin 11y ago
As someone who has tried, there are just too many things wrong with the web as a platform. I'd love to use it to ship great customer experiences, but:
1) Web Audio is awful -- https://chadaustin.me/2014/09/web-platform-limitations-part-2-web-audio-api-is-a-mess/ https://chadaustin.me/2014/09/web-platform-limitations-part-...
2) You STILL cannot prioritize XMLHttpRequests. https://chadaustin.me/2014/08/web-platform-limitations-xmlhttprequest-priority/ https://chadaustin.me/2014/08/web-platform-limitations-xmlht...
3) The input APIs are janky
4) High frame latency in Chrome, low frame rate in Firefox
5) Allocating more than a couple hundred megabytes is risky -- it might even crash your process (I've filed a few bugs against Chrome on this)
6) SIMD.js is a least-common-denominator approach, meaning you pay a penalty on one of x86 or ARM, just like we saw with the JVM and floats.
7) JavaScript still doesn't have int64.
8) Still no efficient memcpy.
As far as I can tell, the web is not on track to catch up to native platforms in terms of customer experience anytime soon. That said, you could probably ship some small things on this tech and get away with it, but in no way would they supplant a native iOS or desktop app.
[begin rant]
The WHATWG is a bunch of out-of-touch buffoons who have an opinion on everything even when they're not close to the problem domain. Browser vendors try too hard to work together, meaning if anyone has an objection about any API, it won't ship. (Or will take years.) The Extensible Web Manifesto seems to have had no effect. There are no conformance suites, so you can't actually rely on APIs working the same across all browsers.
[end rant]
I'm a strong believer in the open web as an enabling democratizing force for all kinds of content, but I no longer have faith that web standards bodies and consortiums of browser vendors will get us there anytime soon.
EDIT: That really got me worked up. Better than morning coffee. :) But I'd be remiss if I didn't call out a small group of amazing people who are, without much support, pushing the platform forward. Alon Zakai, author of Emscripten, is a visionary and has had a HUGE impact on the feasibility of games in browsers. Dan Gohman, even though I've disagreed with his opinions on how SIMD.js should work, does extremely influential work. Patrick McManus is awesome. Vladimir Vukicevic pushed WebGL, which is one of the few good web APIs. Also, major props to Google's PNaCl team as they've retooled towards WebAssembly. I'm sure I'm missing people. Contrary to what I might have indicated, there ARE people with taste who do great work. :)
- vvanders 11y agoYep, lots of reasons for no adoption. Hell, WebSockets doesn't have UDP. That's like the cornerstone of low latency networked games.
- opless 11y agoOr just not use JS for serious computation. It was never designed for this, and upgrading the core language to do serious computation will be like putting lipstick on a pig or a sticking plaster on a wooden leg. You're correct though Emscripten and WebGL are amazing things, but ultimately hacks. With browsers scurrying to implement ASM.js support, JITs etc... (because most JS developers write shonky code and interpreting JS is not fashionable any more) JS considered dangerous. DO. NOT. USE.