Earlier quoted context omitted.
For a less snarky explanation of what's going on: https://news.ycombinator.com/item?id=8495498 We are working on it. Inbox was designed to be 'mobile first' and use "Material Design" animations, and pulling off 60fps animations of that style in an app like Inbox is very complex, in fact, each new version of Chrome broke assumptions and broke animations we had running previously. The Web, as a platform for competing w…
Isn't this still fundamentally a problematic approach, though? Yes, being Chrome-only at launch was a bad idea (and the predictable response was that tweet and its thousands of retweets), but even if it were "Chrome + a notice about Firefox soon", and some time later it does run on Chrome and Firefox, that still leaves out all the other browsers! I understand that you want 60fps flawless performance for your new prod…
This is a problem at big companies like Google and probably Apple, is that we time major sets of released functionality for 'big impact' launches like Google I/O, or other media events, and the poor engineers are left working late into the night to meet the deadlines.
As for just rendering everything with WebGL or Canvas, we could do that (Google Sheets uses Canvas), but it kind of rubs me the wrong way, it doesn't feel "webby". You end up reimplementing tons of stuff: Bidi/I18N text handling, A11Y, system behaviors like text selection, clipboard, it just seems like you're making your own Flash runtime in JS, an alien hybrid that displaces the entire browser engine.
I hope apps like Inbox, and the new focus on mobile web performance by both Google and Mozilla can fix many of these layout/rasterization/composite hazards, either at the spec level (e.g. will-change), or at the implementation level, so much like there is a 'war' on JS performance, there can be a 'war' on layout and paint performance.
Long term, if we want the web to succeed and not be destroyed by mobile native apps, we need it to work -- as the web --, and not as simply opaque WebGL + JS, that's basically just a native app model with a different VM.