6 ms·
A million times this - having worked in this space, nobody wants to do this. I understand the cynicism, but the affordances provided by the browser for things l
by bri3d 5y ago
A million times this - having worked in this space, nobody wants to do this. I understand the cynicism, but the affordances provided by the browser for things like accessibility are very painful to give up. This isn't some dark pattern attempt to cut out whatever "openness" remains on the web, or to convert the browser into a display-streaming client for some sinister DRM reason.
In my past job, we rewrote our spreadsheet rendering to use canvas and gained massively in simplicity and maintainability. And there was no obfuscation angle to it - we even shipped source maps! Handling accessibility and text input was hard (we ended up adopting a hybrid-DOM model where some things like input fields were still native ones, or shadowed by native ones), and even then it was still easier than dealing with browser rendering.
This is simply a reasonable way to work around the DOM being trash. The way to fix this trend would be to reimagine the presentation layer of the browser as something other than a stack of hacks over hypertext, but so far nobody seems to have a good solution.
- mixmastamyk 5y agoOnce the trail has been blazed by pioneers, expect a gold rush. What would a good API look like, I wonder?
- vagrantJin 5y agoThe dom isn't trash. Its good enough. We just need to stop making it do things it wasn't supposed to. That's why things like electron make sense a little bit. Not perfect but sensible.
- nindalf 5y ago> We just need to stop making it do things it wasn't supposed to This is a thread about Google Docs. Your suggestion to the Docs team is to ... stop? Just shut down their product?
- vagrantJin 5y agoOh no. They're google. They make a godforsaken browser. They can pay people to do nothing more than think about code. By all means. They can launch a satellite with css if they want. But the rest of us plebs...
- scotty79 5y agoBtw for NASA css is shorthand for Control Stick Steering, which is something you did at later stages of landing with a space shuttle.
- todd3834 5y agoI read this as sometimes you need to use an exit hatch like Canvas instead of a bunch of hacks to make a WYSIWYG editor strictly with the DOM. Google seemed to come to the same realization and that is why they are using Canvas
- closeparen 5y agoJust send LibreOffice files as attachments via your personal email server, what’s the problem? /s
- dvfjsdhgfv 5y agoWell, to be fair Libre Office online exists[0]. However, I believe EtherCalc[1] is faster. [0] https://www.libreoffice.org/download/libreoffice-online/ https://www.libreoffice.org/download/libreoffice-online/ [1] https://ethercalc.net/ https://ethercalc.net/
- NoGravitas 5y agoYes? Most of the web really ought to be shut down. It's just providing negative utility to society. Alternatively: return to monke.
- agency 5y agoIsn't Electron rendering to an embedded Chromium and therefore the DOM as well?
- slver 5y agoYes
- breck 5y agoI'd agree. I think the DOM is fantastic, *unless* you are doing advanced document manipulation, in which case it is trash (for that use case only). This is what I'm assuming the author meant. I spent many years working on that sort of thing, a decade ago.
- SavantIdiot 5y agoPeople are trying to make DOM be a WYSWIG text editor. You're point is dead on. The response is to write an opaque, vendor-specific "DOM". Which is the complete opposite of what HTML was supposed to be. But the browser is now a platform and not a browser, so the metaphors are horribly mixed to the point where I'm not even sure what a DOM is supposed to be anymore.
- wizzwizz4 5y agoThe DOM was always a WYSIWYG editor – albeit, for HTML, not text. Though, back in the day, HTML was a subset of text with image and table support; none of this fancy `line-height: 1.5em;`… I wish the web had evolved in a more documenty way.
- SavantIdiot 5y agoHmmm... maybe I should have chosen a different acronym. What you expected to see isn't alwasy what you got. WYETSIAWYG Rendering across browsers and operating systems was a trainwreck until maybe 5 years ago (over a decade of polyfill is finally gone). And even with an ecosystem like ElectronJS + Bootstrap, Win10 MacOS and Linux all look slightly different. So yes and no to "DOM was always...", but more "No."
- paxys 5y agoThat's the entire point. DOM is meant for structured web pages, not web apps. If you want to build complex web apps it is better to use your own renderer..which is exactly what Google is doing with Docs.
- avereveard 5y agoWe should just port wine to webassembly and be done with it
- littlestymaar 5y agohttp://www.boxedwine.org/ http://www.boxedwine.org/
- bri3d 5y agoThe problem is that the escape hatch from document to application is completely broken. The DOM is fine for documents, but it's completely awful for applications. Admittedly, some things on the web that should be documents insist on being applications instead, but many things on the web aren't documents. For these things, using the DOM is painful. When the pain becomes great enough, the biggest available escape hatch is pure native 2D rendering (canvas), which is a nightmare for accessibility and affordance to end-users. It would be awesome to have something else to escape to.
- breck 5y ago> The way to fix this trend would be to reimagine the presentation layer of the browser as something other than a stack of hacks over hypertext, but so far nobody seems to have a good solution. About a decade ago I had the start of a Eureka moment on how to do this (back then — https://medium.com/space-net/spacenet-51aca95d49a2 https://medium.com/space-net/spacenet-51aca95d49a2, nowadays https://treenotation.org/ https://treenotation.org/). It seems to me we've missed a sort of fundamental universal notation of the universe, which you can think of as "two-dimensional binary". I predict we will soon see a Cambrian Explosion of new formats and languages that are simpler and more interoperable with each other, and some will have the opportunity to build new great languages for rendering stacks.
- jamiek88 5y agoWow that tree notation looks super interesting! Bookmarked for a later in-depth read but my interest is piqued!
- ImprobableTruth 5y agoHow is this not just S-expressions with indentation instead of parentheses? What makes it different from say Sweet Expressions?
- breck 5y agoCommon question. You cannot do column and matrix operations natively against S-Expressions (You need to parse the whole thing). This turns out to be very important and useful. S-Expressions need to be transversed in 1-D linear order. When you two-dimensionalize S-Expressions and remove the parens, you get Tree Notation.
- lambda 5y agoHey, nice! I have a notes file experimenting with a similar tree-style minimalist data notation; it's definitely an area that needs more exploration. I like what you've done with it, I'll need to take a closer look. While I was thinking about it, I also decided to take a look into prior art, which took me all the way back to Landin's "The Next 700 Programming Languages" from 1966 which introduced the hypothetical language ISWIM, which was the first to introduce indentation based syntax and inspired the ML and Haskell family of languages (https://www.cs.cmu.edu/~crary/819-f09/Landin66.pdf https://www.cs.cmu.edu/~crary/819-f09/Landin66.pdf) It wasn't exactly what I was looking for, but it's fascinating to see how long we've been thinking about these kinds of issues.
- ashneo76 5y agoThis is a dark pattern. Webassembly is binaries with no source. There is nothing to deny that. It closes the web and it isn't free software. It is moving back to proprietary. For reasons that all the googlers or other webasm devs here can't admit.