4 ms·
I don't agree; it violates the principle of least power (Berners-Lee). You would inhibit accessibility, including the transition the web made from desktop to m
by chubot 6y ago
I don't agree; it violates the principle of least power (Berners-Lee).
You would inhibit accessibility, including the transition the web made from desktop to mobile -- e.g. consider how <select> is rendered on a phone. The browser needs semantic knowledge of elements on the page; it can't just be code.
You may also inhibit web crawlers and search engines, which are essential to the popularity of the web. You can't write an infinite loop in HTML, but you can in PostScript.
It's also not clear to me that PostScript can handle responsive layouts better than CSS (and a sibling comment hints at that, e.g. adding JS to do layout). CSS handles this at great cost, but it's also a hard problem.
In other words, it's reasonable for the web to HAVE vector graphics, but it can't BE vector graphics. Just like it has WebAssembly, but it isn't WebAssembly (nor would have that been a good idea from the start).
- DonHopkins 6y agoI think Alan Kay would disagree with that (and I do too, having written a lot of responsive layout code in PostScript, including a user interface toolkit (The NeWS Toolkit), a hypermedia browser (HyperTIES), and a HyperCard-like PostScript extensible interface builder (HyperLook), and various apps (PizzaTool, SimCity, etc), all that handle window resizing, dynamic responsive layout, and high resolution printing). See his answer to the question "Should web browsers have stuck to being document viewers?" (And the ensuing discussion.) You have to log in to see the replies to his reply, which includes a discussion about JAM and NeWS and PostScript based browsers and rendering. https://www.quora.com/Should-web-browsers-have-stuck-to-being-document-viewers?share=1 https://www.quora.com/Should-web-browsers-have-stuck-to-bein... >Should web browsers have stuck to being document viewers? https://twitter.com/kocienda/status/1355344814166876163?s=21 https://twitter.com/kocienda/status/1355344814166876163?s=21 >Alan Kay, Still trying to learn how to think better >Actually quite the opposite, if “document” means an imitation of old static text media (and later including pictures, and audio and video recordings). >It was being willing to settle for an overly simple text format and formatting scheme — “for convenience” — that started the web media architecture off in entirely the wrong direction (including the too simple reference scheme c.f. Doug Engelbart and Ted Nelson). Circa early 90s, it had the look and feel of an atavistic hack. I expected that Netscape would fix this rather than just try to dominate what was there (I expected a better architecture both for “thinking about media in the age of computing” and also something not like “an app” but more like an operating system to deal with the actual systems requirements, demands, and scalings of the world-wide Internet-in-progress). >It’s both surprisingly and dismayingly difficult to get people — especially computerists — to criticize the web and the web browsers — even more so perhaps today. >This is despite the glaring fact that the interactive media provided by the web and browsers has always been a hefty and qualitative subset of the media on the very personal computers that run the web browsers. >[...] >This led to a “sad realization” that sending a data structure to a server is a terrible idea if the degrees of freedom needed on the sending side are large. >And eventually, this led to a “happy realization”, that sending a program to a server is a very good idea if the degrees of freedom needed on the sending side are large. >John Warnock and Martin Newell were experimenting with a simple flexible language that could express arbitrary resolution independent images — called “JAM” (for “John And Martin” — and it was realized that sending JAM programs — i.e. “real objects” to the printer was a much better idea than sending a data structure. >This is because a universal interpreter can both be quite small and also can have more degrees of freedom than any data structure (that is not a program). The program has to be run in a protected address space in the printer computer, but it can be granted access to a bit-buffer, and whatever it does to it can then be printed out “blindly”. >This provides a much better match up between a desktop publishing system (which will want to print on any of the printers available, and shouldn’t have to know about their resolutions and other properties), and a printer (which shouldn’t have to know anything about the app that made the document). >“JAM” eventually became Postscript (but that’s another story). >Key Point: “sending a program, not a data structure” is a very big idea (and also scales really well if some thought is put into just how the program is set up). >[...] (Log in to Quora to see the entire discussion.)
- goto11 6y agoAlan Kay is opposed to the "principle of least power" and instead believes the web should consist of turing-complete "objects" which manage their own rendering. Basically he wants a web consisting purely of "black box" Java Applets rather than of web pages. I think this vision have failed multiple times for obvious reasons.
- DonHopkins 6y agoThen how do you explain the success of JavaScript and WebAssembly in the browser?
- goto11 6y agoKays vision is like if we only had JavaScript drawing directly to the screen, and no HTML or any of the other web standards. In such a web we wouldn't have search engines, probably not even links. The object oriented paradigm (with data and behavior encapsulated in black-box objects) works fine for software systems, but it absolutely fails for large decentralized communication systems. TBL understood that and instead based the web on declarative data formats, and eliminated the behavior to a few verbs (GET, POST etc.) with constrained semantics. OOP is great when appropriate but it seems Kay doesn't recognize the limitations of the paradigm. Even Java have abandoned the strict object-dogmatism and embrace more data-oriented patterns.
- chubot 6y agoYes exactly; I think of the web as a modest and humble (and thus brilliant) extension of Unix. It adds simple networking and hyperlinks to hierarchical namespaces (and extends hierarchical names as URLs). Those principles scale. GET/POST is basically the Unix/Plan 9 principle of read() / write() of declarative formats. On a small scale you can avoid that and use more tightly coupled RPC (and maybe you should), and you can design more elaborate VMs. On a large scale it all becomes REST (e.g. what do you talk to Github with, what does a Debian repo look like, etc.). It's less about the technical design and more about the social issues -- who owns each end of the wire? If you own both ends of the wire, you have a much different problem, but that's not the problem the web is solving. Previous comment on this: https://news.ycombinator.com/item?id=6131335 https://news.ycombinator.com/item?id=6131335 --- Funny thing about objects, I went back to my comment from 8 years ago and also noted that Kay was obsessed with "objects" in a way that's not useful: https://news.ycombinator.com/item?id=5516960 https://news.ycombinator.com/item?id=5516960 When watching the Kay talk, I was struck that he seems to be lumping every "good" in software engineering under the term "object oriented". Virtual machines are objects. Servers are objects. Numbers should be objects. All abstraction is objects. It was not really a useful or enlightening way of thinking about the world.