Google Docs will now use canvas based rendering
In 2009, I joined Mozilla and started working on the Bespin[1] project, which Ben Galbraith &amp; Dion Almaer had brought to Moz. Bespin was built with a canvas-based renderer. Bespin was way faster than other browser-based code editors at the time.<p>Then the Ajax.org&#x2F;Cloud9 folks came along with their Ace editor[2], which was DOM-based and still very fast. We ended up merging the projects. edit to add: and switching to DOM rendering<p>Rik Arends[3] was one of the Ajax.org folks and he&#x27;s been working on a WebGL-based code environment called Makepad[4], which is entirely built in Rust and has its own UI toolkit. He&#x27;s complained a lot about how difficult it is to make a performant JS-based editing environment.<p>My point in all of this is just that there are absolutely tradeoffs in performance, accessibility, ease-of-development, internationalization, and likely other aspects. If raw performance is what you&#x27;re going for, it&#x27;s hard to beat just drawing on a canvas or using WebGL. Google Docs needs to worry about all of that other stuff, too, so I&#x27;ll be interested to see how this shapes up.<p>[1]: <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Mozilla_Skywriter" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Mozilla_Skywriter</a><p>[2]: <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ace_(editor)" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ace_(editor)</a><p>[3]: <a href="https:&#x2F;&#x2F;twitter.com&#x2F;rikarends" rel="nofollow">https:&#x2F;&#x2F;twitter.com&#x2F;rikarends</a><p>[4]: <a href="https:&#x2F;&#x2F;makepad.dev" rel="nofollow">https:&#x2F;&#x2F;makepad.dev</a>