💾 Archived View for yujiri.xyz › software › web.gmi captured on 2023-01-29 at 03:18:48. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2022-06-03)
-=-=-=-=-=-=-
The web has devoured so much of our lives that a lot of us have trouble imagining the things without it that used to exist without it.
I was born in 1998. For almost my first 20 years I thought that email meant webmail. You checked emails by going to gmail.com, I thought. One day my programming mentor asked me what email client I used, and I was like "email client? What's that? Why wouldn't I just go to gmail.com?"
Similarly (although this particular example isn't about the web), I grew up thinking that if you want to subscribe to updates on something, you enter your email address and you get emails when there's an update. In 2021 I discovered RSS and I was like "this is the best thing ever, why does anyone use email for subscriptions?"
I actually used XMPP for a brief part of my early teens, but forgot all about it because no one used it with me and I ended up using web platforms like Discord and Twitter to message friends for years, as if there were no alternatives, until I became radicalized against the web.
Thinking about these things is horrifying to me now. We're raised deeply indoctrinated by the web, to think the web is the only thing that exists, that everything is done through it, and that there's no other way.
The web must be destroyed. By "the web" I mean the set of technologies that comprise this platform: HTTP, HTML, CSS, Javascript, etc. Some people are well-aware of the problems with the modern web (it's slow, full of bugs and ads and user-hostile features and mostly dominated by predatory corporations) but think these problems are primarily social, that the solution is to just use the web differently rather than to abandon it. I contend they're wrong because the problems with the web are built into it at far too deep a level. I will give many examples:
This is the least controversial point, and similar things have been said by many who wouldn't agree with my conclusion such as Eevee and Maciej. Javascript has very few legitimate uses and is used for every ad and user-hostile feature under the sun. Disabling Javascript drastically improves the user experience of many websites as well as reduces your internet usage by a huge factor (sometimes >10x without losing any desirable page features), saves your battery, and of course your privacy. But this isn't a problem you can fix by disabling Javascript and encouraging more web writers to not use it, because the fact that Javascript is on by default in all web browsers means authors will use it, and they will make their pages depend on it for no reason, and a lot of these will be pages you need to use. They'll be the package repository for your favorite programming language (crates.io) or your utility providers' websites that you need to use to pay bills or even *government* websites that you *have* to use.
When users connect to your website over HTTPS, all web browsers will present them with a scary warning saying the connection is insecure, unless your website's public key is signed by a "certificate authority" - a company whose only purpose is to make profit from this artificial need. It's a racket.
In recent years there are certificate authorities run by people of conscience such as LetsEncrypt that give out certificates for free, but it's still absurd and offensive that you essentially need an oligarch's permission to host a website and that you have to continually renew it.
Authors should never have been given control of style. Style should be the responsibility of the client. As a web author, I have to worry about the presentation of my page in all sorts of ways: does it fit on mobile, is it accessible to disabled users, is it less visually appealing than other websites and I'll lose readers because of that?, should I add a dark/light mode toggle switch and which one should be default, etc. None of this should be the concern of an internet writer. It should be the concern of a client developer.
Some people know about "user stylesheets", a feature the web was supposed to have where users could have their own stylesheets that would be applied to pages they view. What a tragedy. Although the feature is technically supported in Firefox and Chromium by manually editing a file in a folder like ~/.mozilla, the problem with this feature isn't just that nobody knows about it, it's that it could never have worked in a platform not designed for it. That CSS is available to page authors means page authors will write it and will expect theirs to be honored. Their styles will conflict with user styles and there's no way to ensure the result will be coherent and won't interfere with the usability of the page.
User stylesheets are how things always should've worked, but there's a limit to how well they can work when author stylesheets are part of the expectations of the platform.
Your browser is programmed to tell every web page you visit *what web browser* and *what operating system* you use, *including versions*, and *what URL you got there from*. Why? Because corporations can collect that data and profit from it.
As for the RFC's argument that User-Agent is for getting around incompatibility, that's ridiculous. That's not how you handle incompatibility. You handle incompatibility by fixing the incompatibility.
We used to live in a world of protocols: POP, IMAP, IRC, XMPP, FTP, RSS, NNTP... for every broadly applicable thing (reading emails, chatting, downloading files), there was a protocol that left its users in control. You could use your own client with an interface you like, in whatever way suits you. Now many of us use the web for all those things, the details, the interface, the terms of service, all dictated to us. If you're not a programmer and you're not much older than me, you've probably never even heard of any of those protocols.
We need to take off the web goggles and bring back protocols. Almost everything we need can be done with better security, performance, and freedom, without the web. As for the *main* use case of the web - publishing text - use the Gemini protocol.