Most web applications that also have mobile applications deliver a second rate and more mediocre experience on the web. People frequently call out how wonderful "native" applications are compared to web applications are fundamentally talking about these limitations. Sometimes somebody manages something really nice with it but it seems to be non trivial to deliver good results consistently with it. It's just not made to do that stuff and attempts to make it do stuff like that anyway tend to involve a lot of hackery, and workarounds for it's many limitations. And while great for laying out simple websites, it pales in comparison to things like Flash in terms of building interactive games and animations. Yes for the past few decades we've been dealing with HTML5 and related technologies. It's significantly faster (1000x) to render/send over the wire but the moat of HTML/CSS is so large that I'm not sure there's interest in such approaches. Said another way - if you try to use HTML/CSS to build a layout tool, you end up having to re-create browser layout and rendering engine.ĭevelopers could build a design/tool similar to flash using canvas and I've actually prototyped elements of a tag/based design language that gets rid of the traditional HTML layout engine. A Canvas based editor/builder/WYSIWYG approach would be fantastic but it required us to move past HTML/CSS in the traditional and compatible model. Similarly Flash got it's layout and animation right.
(Figma is a great example)įigma is great but it's not using classical tags to express fonts, tables, layout. Anyone who has built a robust visual editor ends up building one using canvas. Most purists insist on coding things in HTML/CSS and this stack is fairly unworkable for a good visual editor.