High Performance WebView User Interfaces
Getting the most out of the 2D Canvas and DOM
No one likes unresponsive user interfaces, least of all musicians. WebViews are an increasingly common choice for building UIs because of their increased developer productivity, ability to meet the demands of graphic designers, and enormous ecosystem of UI libraries. But when done wrong, they can easily become slow and resource hungry, which is bad for both users and developers.
This talk covers patterns and best practices for creating user interfaces using both the DOM and 2D Canvas API (which is more suitable for custom interactions and graphically demanding tasks). These techniques will be discussed via a real-world case study: a DAW user interface (zoomable waveforms and all) at 60 FPS.
Aimed at all developers new to the web, demonstrations use vanilla TypeScript (no frameworks!) to teach the techniques from first principles, and to have a type system that will make C++ developers feel at home.
Arthur Carabott
Senior Software Engineer
Output
Arthur Carabott is a Senior Software Engineer at Output where he was the founding member of their DAW project Creator, and designed features for the plugin Arcade. Prior to Output he worked on an interactive musical building for the 2012 Olympics with Mark Ronson, a synchronised "orchestra" of 100 iPads for the Apple Store, a spatial audio iOS app with composer Anna Meredith, and musical robots for will.i.am.
He is passionate about interaction, interfaces, and user experience, which lead to an interest in performance and optimization (of GUIs in particular); and is influenced by the work of Bret Victor, Alan Kay, Jef Raskin, and Douglas Engelbart.