
This site is now free from JavaScript. What you’re reading sits behind Cloudflare. About a quarter of all websites use Cloudflare. Cloudflare typically injects (mostly harmless but obnoxious) JavaScript into pages by default for tracking and email obfuscation, among other things. Turned all that off. Most sites don’t.
Now each page is 100% JavaScript-free and will be forever. More importantly, beyond the Cloudflare update, this site was built with the idea of never implementing JavaScript features.
Benefits of no JavaScript
JavaScript sucks and has turned most of the internet into a pile of garbage for a few reasons.
- JavaScript is arbitrary executable code defined by whatever website you browse, which you don’t audit beforehand. So it’s always a security concern for every web user, even with modern browser sandboxes.
- JavaScript invites feature creep like unnecessary effects, unnecessary user interaction, over-commercialization, and inconsiderate user tracking.
- Feature creep + JavaScript creates slow webpages, hence the modern web being slow as fuck.
JavaScript has also become a way for web developers to make their websites mini-apps. And while that may be justifiable for websites that are games or e-shops where the user would be too lazy to use a separate executable, most websites do not need to be apps. For example, any website based on simple writing, video, or image sharing does not need JavaScript. And by keeping JavaScript off your website, you are doing your visitors a favor.
Reaching this website still involves software bloat
Because HTTP and CSS are bloated
Getting rid of JavaScript doesn’t really “de-bloat” the modern web, though. Sure, it helps. But the HTTP protocol and CSS language have both become monstrous in the background complexity required to render an average webpage to your screen. We take this for granted by installing gigabytes worth of web browsers that are now more complex than some entire operating systems.
And because TLS is hard to implement securely
TLS is so complicated that only a few dozen people like Thomas Pornin could probably securely code it in any language from scratch and without libraries. And maybe less than a few dozen, considering how often TLS implementations get compromised.
People should be able to audit every part of their system, and TLS is a big obstacle to that. Even KolibriOs, which prides itself on being auditible and hand-made, threw up their hands on TLS and compiles some other project’s work. They compile down from C using a C compiler their OS doesn’t even support, now rendering their OS further non-self-replicating. See the issues TLS causes for the average bear?
Hosting this site on a Gopher server seems like a fun idea
Gopher may be the only “non-bloated” web content protocol still in use. It’s a web content protocol from the 90s that has a very simple protocol (RFC 1436 from 1993). There isn’t really styling with Gopher beyond notating if something is an image, menu, or text. Writing and auditing a client/server for Gopher is also an achievable task for the average programmer.
The Gemini web content protocol is also nice but unfortunately mandates TLS. And to be fair, TLS really is important if you have stuff like sign-ups or logins, or you want a better guarantee that what you saw was actually hosted on the website you visited.
PGP-signed writing on Gopher could be something of a compromise for those wanting a truly simple web standard where authenticity is occasionally important. It would allow us to verify writing if we wanted to, while also not mandating that every server administrator host some TLS library. I guarantee you nearly all web administrators and operating system engineers could not properly audit a TLS stack without advanced PhD degrees or a professional lifetime of crypto research.
Reaching this website on Lynx is a good bloat-less avenue for now
The 2MB Lynx browser works really well on this site! And will continue to. Its disk size is about 200x smaller than Firefox and similarly smaller than other modern browsers.