Live data from Hacker News

A clean start for the web (2020)

macwright.com

171–180 of 200 posts

Re: A clean start for the web (2020)

#171

Earlier quoted context omitted.

> I mean if modern tech people had their way, the web would have never been anything but a bare data API on a blockchain, and no one without at least a bachelors' degree in CS or engineering would even know about it. And oh yeah, you'd need a license to publish anything. They're looking for a technical solution to a social problem. They miss the Web as a space for people only like themselves. Having to share the web…

No its not. I just want to read text based content without downloading google analytics + 20 other trackers, 5 java script libraries, 7 frameworks of some kind and 20 ads. It's inefficient. It drives obsolescence of hardware long before it is unusable (second only to gaming, but at least gaming has a user driven motivation, not abuse by tech megacorps). Assigning a gatekeeping motivation to it is a nice strawman, but…

> I just want to read text based content without downloading google analytics + 20 other trackers, 5 java script libraries, 7 frameworks of some kind and 20 ads. It's inefficient.

I agree. I have JavaScripts disabled, but it may still try to download CSS, pictures, and other stuff, and might try to hide the document, etc.

Re: A clean start for the web (2020)

#172
post #10

Do we really want to continue having "a web" ? Remember, "the web" was never designed for what we do with it today. If you're thinking of overhauling "the web", I think it makes sense to start from first principles, and build something that meets today's needs with the least amount of unnecessary bullshit. You have to start from the user's experience, because nothing else matters about a computer other than what you…

What feels unique about the web, that nothing else remotely resembles that makes it so much more compelling to me versus everything which came before, is urls. The web is a network of online resources. There's HTML, an ok, fairly adaptable hyper-media markup- and CSS, and scripts, all fair or better- but the premise turns everything else we do in computing on it's head: servers send us resources, and we have a (imo p…

While there are some good ideas, there are also many bad ones. (URLs are one good idea.) It could be designed better. Perhaps I can mention this quotation (which wasn't about HTML, although some of the bad things happen with HTML for similar reasons):

The sad fact of the matter is that people play politics with standards to gain commercial advantage, and the result is that end users suffer the consequences. This is the case with character encoding for computer systems, and it is even more the case with HDTV.

Re: A clean start for the web (2020)

#173

Do we really want to continue having "a web" ? Remember, "the web" was never designed for what we do with it today. If you're thinking of overhauling "the web", I think it makes sense to start from first principles, and build something that meets today's needs with the least amount of unnecessary bullshit. You have to start from the user's experience, because nothing else matters about a computer other than what you…

> Do we really want to continue having "a web"? Speaking only for myself, I'm not at all invested in having a website . Yes, I want a publicly accessible site of my own on the internet with which to share documents, and I currently do so over HTTP, but I would equally happy to share them over Gopher or even anonymous FTP. However, I'd rather pay NearlyFreeSpeech.net for hosting than run my own VPS or self-host on a m…

I dislike FTP and think that it is not a very good protocol. (There is one advantage of FTP over HTTP, which is that it has directory listings, although you could also do with HTTP possibly by a new file format (e.g. application/httpdirlist) for directory listings.)

You can serve other file formats (including text/gemini) over HTTP. Although I could manage to make the web browser I have to support text/gemini files over HTTP (and local files), this isn't commonly done, and the protocol does not support file format polyfills (although I have a proposal that can make it work).

However, that isn't good enough if you want to serve NNTP or IRC or Telnet or something else like that. If I want to serve discussion forums, I will want NNTP. If I want fast communications, I will want IRC. There may be other possible protocols too. We shouldn't force everything into HTTP(S); it doesn't fit properly. (I do have a NNTP server, as well as HTTP and Gopher.)

Re: A clean start for the web (2020)

#174
post #166

Earlier quoted context omitted.

> The end user doesn't want Geminispace, they don't hate that web publishers get to control layout and design, or that sites can be more complex than even the early web allowed. They don't want to write their own clients or stylesheets, they don't want the web to only be strictly static documents, with "apps" quarantined elsewhere. I do not agree. Many users do want it. The problem is that web browsers are not writte…

>I do not agree. Many users do want it. The problem is that web browsers are not written for advanced users. How many are 'many?' I'm not aware of anyone not a programmer or web developer who even cares about any of those things. Perhaps I should have been more precise and said "the average end user." I mean, even most people on HN who talk about Geminispace just complain about how restrictive it is. It's a niche wit…

> And I think you're just proving my point here - all of these are problems that only a subset of tech people even have.

Yes, but can't you have many possible computer programs, that different users may prefer? Shouldn't you be able to make multiple kinds, whether a lot of users want it or only a few users? Unfortunately, the existing complexity and mess of WWW makes it difficult.

Re: A clean start for the web (2020)

#175

We only need an application web. A blog post can be just a markdown file. Want to read it? Use a markdown viewer (from the application web). Want to build a more complex experience? Build an application. You can hardcode/bake the content into it (like we do today). An "URL" could instead be something like an application+datasource pair. The applications are automatically hashed and signed and you can provably verify…

> A blog post can be just a markdown file. Want to read it? Use a markdown viewer (from the application web).

I had a idea that is a bit similar, which is a Interpreter header; if the MIME type is not understood by the client software, it can download an interpreter (i.e. a polyfill) (written in HTML or WebAssembly, although your own language might also be a possible alternative); if the client software does understand the format (or the end user already has their own implementation installed, possibly one that they wrote by themself), then it will use that one instead.

> You can hardcode/bake the content into it (like we do today).

While you can, it may make sense to be a separate block so that you can also use the data separately.

> An "URL" could instead be something like an application+datasource pair. The applications are automatically hashed and signed and you can provably verify they haven't changed if you want to. When you request an application to the network, you'll download it from the closest peer (maybe from multiple peers at the same time!). Since it's hashed and signed you only have to trust the signer.

That is a interesting idea, and could work (although making the URL longer, probably). Although it may be useful to add additional arguments too, like command-line arguments/switches (so an implementation could be launched by command-line arguments, too).

This would easily allow an end user to substitute their own application implementation too (by changing the "application" part of the URL), which is also an advantage, and can have a rewrite system to do their own. If it has a hash then you could also cache the application file if wanted (and if you do not have a working internet connection, even to operate on local files that the user gives permission to access), in addition to overriding it with your own implementation, too.

> In fact I've started exploring what that language could look like: https://flame.run/

I like this idea and a few days ago had started to make up the design of something called "VM3" (the name might or might not change in future), which has some similar goals and ideas. However, there are many differences too. VM3 is a binary format (designed to be suitable for both interpreter and for JIT, an static analysis; e.g. there is no way to treat a number from a general register as a return address or vice versa, other than using a static lookup table which is specifically designated as containing program addresses), and all I/O (including the equivalent of JavaScript's Date and Math.random) must be done using extensions. Extensions must be statically declared (cannot be dynamically declared), and an implementation must allow the end user to manage and override them too; polyfills (both included and installed separately) are also possible, too. VM3 can be used with any protocols (HTTP(S), Gemini, IPFS, etc) and any storage media (CD, DVD, etc). (VM3 is also not limited to a specific kind of user interface; you can have command-line, GUI, pipes, etc.)

Someone else also had wrote some ideas about TerseNet. Some ideas of VM3 are similar, and the capabilities of TerseNet could be implemented as a subset of VM3. Multiple implementation types are possible, and possibility of static text, and applications that are only lauched by the user, also has with TerseNet and VM3.

However, unlike Flame which it seem your idea to combine effectively HTML+CSS+JS together, TerseNet and VM3 do something a bit different: parts of HTML (the documentation format) are one format, and other parts of HTML+CSS+JS are the other format; they can easily be separated and work independently.

Re: A clean start for the web (2020)

#176
post #114

I would say .html, .css and .js and the browser are becoming over-engineered. HTTP and SMTP are fine however. I have stopped coding .html and only use HTTP now from a native OpenGL client written in C.

I would agree, although HTTP and SMTP are not the only protocols; in many cases other protocols should do better (such as IRC, SSH, etc).

> I have stopped coding .html and only use HTTP now from a native OpenGL client written in C.

How is that working? Do you have any further details?

Re: A clean start for the web (2020)

#177

Earlier quoted context omitted.

Having a hypermedia standard is universes more interesting & powerful & enriching than what boils dowm to a way to generate gifs. Computers have dozens of ways to throw pixels at peoplecs faces and none of them are remarkable or particularly noteable. Having a DOM, having structure, having a hypermedium is a source of immense potential & power. For both developer, but also, capitally & uniquely, for users too. This l…

>Having a DOM, having structure, having a hypermedium is a source of immense potential & power. For documents, yes. For apps those are obstacles. Apps just need something to draw on.

Your statement doesnt resemble any gui toolkits Im familiar with. Not Flutter, not Swift, not Gnome, nothing. The DOM closely resembles other ui construction systems & has similar ideas lile event handling.

And then the pretense that developers are the only thing that matter. The web is vastly better than apps because of the dom, because our systems are in a malleable hypermedia that ysers can modify eith userscripts, userstyles, extensions, eith whatever manner of accessible browser/user agent they please.

It's such sad thing to hear people advocating so strongly for the winnowing od possibility. Leaving all responsibility & all power with the app developer sounds perverse to me, sick, unworthy of being called a part of the internet. Not only does "just need something to draw on" not reflect the needs of developers, it represents an mortal threat to user agency.

Re: A clean start for the web (2020)

#178
post #10

Earlier quoted context omitted.

What feels unique about the web, that nothing else remotely resembles that makes it so much more compelling to me versus everything which came before, is urls. The web is a network of online resources. There's HTML, an ok, fairly adaptable hyper-media markup- and CSS, and scripts, all fair or better- but the premise turns everything else we do in computing on it's head: servers send us resources, and we have a (imo p…

While there are some good ideas, there are also many bad ones. (URLs are one good idea.) It could be designed better. Perhaps I can mention this quotation (which wasn't about HTML, although some of the bad things happen with HTML for similar reasons): The sad fact of the matter is that people play politics with standards to gain commercial advantage, and the result is that end users suffer the consequences. This is t…

It mostly works pretty great. It's immensely popular to hate on.

Re: A clean start for the web (2020)

#179
post #62

I also had similar thoughts without the eloquence of this article. The one area I disagree with the author is: > Rule #1 is don’t make a subset. If the replacement for the web is just whatever features were in Firefox 10 years ago, it’s not going to be a compelling vision. If you don't want a subset, and you like markdown, then gemini seems like the answer. It is definitely gaining popularity but I'm not convinced it…

> I think supporting everything but javascript for the "document browser" would automatically enable a ton of websites and make it easier for creators and consumers to use the tools and languages they already understand.

There are some merits for that, but I think that is both excessive and deficient at the same time.

> https://erock.lists.sh/browser-monopoly

I think that these are valid points, which I have some comments relating to.

> Support HTML 5, CSS 3, HTTP, TLS

You can add other file formats and protocols too, such as Gemini, Gopher, and possibly Markdown too.

> Maybe remove website specific styling altogether and instead design a consistent design that optimizes navigation and readability.

That is what I think too; even the HTML with no CSS, will be OK. Perhaps let the end user to specify colours, fonts, etc.

> Allowing the user to query for information and have that data displayed without full page reloads (AJAX)

For data-oriented stuff, you could also have such things like , you can just get the data and use your own software to display it.

> I want a minimal, modern set of browsing tools where I don't have to make any sacrifices between usability and compliance with the standards.

Yes, I think so, too. Splitting all of the components separately is one start, I suppose (although it is not good enough by itself) (a C program can then be written to tie them together, and this can be changed as needed, including to add/remove components) (this is like reversing core and extensions the other way, so that e.g. HTML and HTTP are now extensions instead of core). However, half of the standards are I don't want quite compliance and should deliberately implement them in a better way than what they say.

Re: A clean start for the web (2020)

#180
post #53

Earlier quoted context omitted.

I've always been shocked that HTML forms only support GET and POST and there's zero interest in supporting more HTTP methods in forms even in 2022. If forms supported the whole range of HTTP methods we could have a user facing web that's identical to a REST API, with different Accept and Content-type headers. Imagine how much development time we could save if forms supported DELETE and PUT!

You know you can update or delete a resource by using GET or POST?

You can, but it is not the proper way to work HTTP.
Post reply on HN