On Sat, Oct 25, 2014 at 04:29:58PM -0200, Daniel Camolês wrote: > [snip] > I dream with the day when the Internet will be built > around a model simple and generic enough that a reasonable programmer > will be able to code a complete "browser" in a month of work or so. > > Am I alone? Is there any hope out there?
TL;DR: Imho, there is none. W3c is the total opposite of suckless software. Let's start by the simple fact that this technology is based on sgml dialects and something you could call visual java. I can see only two strategies to make it suck less (in the suckless point of view, so the flexibility is maximum, it can fuck up your program and it's most likely user's fault or his/her responsibility to hack and patch it): kick NS plugins, cross-platform treatment of platform-specific things (like the codecs used for <video>) out of the code base and introducing better ways, nearer to what you see than what you get, to customize what you get from a given page (than JS userscripts and extensions, think about elinks scripting addons with an api that allows you to hack the DOM without workarounds like piping the page, or about w3m with a real GUI); and/or treat web pages as packages or apps, being able to compile them and even create overlays and repositories. Both the approaches are stupid, given the goals of w3 pages: the first is inconsistent and incredibly prone to Thompson hacks, the second is totally the opposite of what HTML is after the v4. What can we save? Either if it's by scripting or patching the source code, a suckless user shell for web pages (let's be honest: if we have to talk about web browser, thus developing something that renders more or less the same than firefox or chrome, one can only write a big pile of bloat just like gecko/blink/webkit, but in C) has to ship with a simpler and less standard-prone API for manipulating what happens on the screen when parsing a DOM, and maybe should have a static compiler for javascript, to C or to the scripting language for the "browser". That would break, however, the classic workflow a user has with a browser. This is a rant based on "mantaining the status quo but having something that doesn't coredump on google maps", one can instead do something lesser dumb and adding the modern capabilities to dumb terminal logic. Nothing impedes to create extensions to VT1XX, for images, GL, videos, and replace cgi things with, for example, 9p-style interaction. Or replacing the actual html, css and js files in webservers with tcl scripts or things like that. Something you would download, with its corresponding media files, and feed to a wish shell or similar software. In either paths (interpret w3crap or deprecate it) lots of work may be involved. And may end with another shitty bloated system. We are talking about taking over the world wide web, after all, lol. -- Teodoro Santoni