~seirdy/seirdy.one

0d2d25b1245b71dae1fa009cbe64b215c5f7c819 — Rohan Kumar 4 months ago 4779f2f
Fix: use HTTPS links where possible
M content/about/index.gmi => content/about/index.gmi +3 -3
@@ 12,9 12,9 @@ More info about the Tildeverse:

=> https://tildeverse.org/ The tildeverse
=> https://web.archive.org/web/20180917091804/https://medium.com/message/tilde-club-i-had-a-couple-drinks-and-woke-up-with-1-000-nerds-a8904f0a2ebf Origins of the tildeverse
=> http://tilde.club/wiki/faq.html Tildeverse FAQ
=> http://tilde.club/%7Epfhawkins/othertildes.html Pick a tilde
=> http://tilde.club/%7Eanthonydpaul/primer.html Get started
=> https://tilde.club/wiki/faq.html Tildeverse FAQ
=> https://tilde.club/%7Epfhawkins/othertildes.html Pick a tilde
=> https://tilde.club/%7Eanthonydpaul/primer.html Get started

## Location (Rohan, meatspace)


M content/about/index.md => content/about/index.md +1 -1
@@ 10,7 10,7 @@ Online Handle: Seirdy
Other versions of this website
------------------------------

This page also exists on the [tildeverse](https://tildeverse.org/), a bunch of \*nix computers that let people sign up for shell accounts. A typical shell account features clients for IRC and email, common terminal/commandline utilities, and (most importantly) web hosting. Read about the tildeverse's [origins](https://web.archive.org/web/20180917091804/https://medium.com/message/tilde-club-i-had-a-couple-drinks-and-woke-up-with-1-000-nerds-a8904f0a2ebf), read [the FAQ](http://tilde.club/wiki/faq.html), pick [a tilde](http://tilde.club/%7Epfhawkins/othertildes.html) and [get started](http://tilde.club/~anthonydpaul/primer.html). My Tildeverse pages will serve as a "rough draft".
This page also exists on the [tildeverse](https://tildeverse.org/), a bunch of \*nix computers that let people sign up for shell accounts. A typical shell account features clients for IRC and email, common terminal/commandline utilities, and (most importantly) web hosting. Read about the tildeverse's [origins](https://web.archive.org/web/20180917091804/https://medium.com/message/tilde-club-i-had-a-couple-drinks-and-woke-up-with-1-000-nerds-a8904f0a2ebf), read [the FAQ](https://tilde.club/wiki/faq.html), pick [a tilde](https://tilde.club/%7Epfhawkins/othertildes.html) and [get started](https://tilde.club/~anthonydpaul/primer.html). My Tildeverse pages will serve as a "rough draft".

Content on this site also appears on [my Gemini space](gemini://seirdy.one)


M content/posts/keeping-platforms-open.gmi => content/posts/keeping-platforms-open.gmi +1 -1
@@ 97,7 97,7 @@ As a user, consider using clients and servers made by different groups of people

What distinguishes a client shouldn't be *what* features it has, but *how* it implements its features. Obviously, having some unique features is great; problems arise when the number of unique features crosses a certain threshold. Following both these practices encourages implementations to stick to standards compliance, reliability, and compatibility rather than "innovation". Choose boring technology over shiny new features.

=> http://boringtechnology.club/ Choose Boring Technology
=> https://web.archive.org/web/20210810063956/http://boringtechnology.club/ Choose Boring Technology

Try venturing outside the mainstream by taking a look at a less popular provider or client. All implementations start somewhere, and a diversity of implementations prevents a rule by oligopoly.


M content/posts/keeping-platforms-open.md => content/posts/keeping-platforms-open.md +2 -2
@@ 84,7 84,7 @@ That's enough doom-and-gloom. Let's focus on actions that users and vendors can 

### What users can do

As a user, consider using clients and servers made by different groups of people to make platform boxing more difficult. Pick implementations that suffer from less [feature creep](https://en.wikipedia.org/wiki/Feature_creep) beyond spec compliance. What distinguishes a client shouldn't be _what_ features it has, but _how_ it implements its features. Obviously, having some unique features is great; problems arise when the number of unique features crosses a certain threshold. Following both these practices encourages implementations to stick to standards compliance, reliability, and compatibility rather than "innovation". [Choose boring technology](http://boringtechnology.club/) over shiny new features.
As a user, consider using clients and servers made by different groups of people to make platform boxing more difficult. Pick implementations that suffer from less [feature creep](https://en.wikipedia.org/wiki/Feature_creep) beyond spec compliance. What distinguishes a client shouldn't be _what_ features it has, but _how_ it implements its features. Obviously, having some unique features is great; problems arise when the number of unique features crosses a certain threshold. Following both these practices encourages implementations to stick to standards compliance, reliability, and compatibility rather than "innovation". [Choose boring technology](https://web.archive.org/web/20210810063956/http://boringtechnology.club/) over shiny new features.

Try venturing outside the mainstream by taking a look at a less popular provider or client. All implementations start somewhere, and a diversity of implementations prevents a rule by oligopoly.



@@ 129,7 129,7 @@ Acknowledgements

<span class="h-card vcard"><a class="p-name url fn n" href="https://ossguy.com/"><span class="p-given-name given-name">Denver</span> <span class="p-family-name family-name">Gingerich</span></a></span> helped me brainstorm early in the writing process and provided useful information for the section on XMPP.

Thanks to <span class="h-card vcard"><a class="p-name url fn n" href="http://bzsombor.web.elte.hu/"><span class="p-given-name given-name">Barna</span> <span class="p-family-name family-name">Zsombor</span></a></span> and carbolymer for giving good feedback over IRC.
Thanks to <span class="h-card vcard"><a class="p-name url fn n" href="https://bzsombor.web.elte.hu/"><span class="p-given-name given-name">Barna</span> <span class="p-family-name family-name">Zsombor</span></a></span> and carbolymer for giving good feedback over IRC.


[^1]: [This Hacker News comment](https://news.ycombinator.com/item?id=25961895) in particular planted quite a few seeds for this article.

M content/posts/password-strength.md => content/posts/password-strength.md +1 -1
@@ 241,7 241,7 @@ One well-known approach to calculating physical limits of computation is [Bremer
Acknowledgements
----------------

Thanks to [Barna Zsombor](http://bzsombor.web.elte.hu/) and [Ryan Coyler](https://rcolyer.net/) for helping me over IRC with my shaky physics and pointing out the caveats of my approach. u/RisenSteam on Reddit also corrected an incorrect reference to AES-256 encryption by bringing up salts.
Thanks to [Barna Zsombor](https://bzsombor.web.elte.hu/) and [Ryan Coyler](https://rcolyer.net/) for helping me over IRC with my shaky physics and pointing out the caveats of my approach. u/RisenSteam on Reddit also corrected an incorrect reference to AES-256 encryption by bringing up salts.

My notes from Thermal Physics weren't enough to write this; various Wikipedia articles were also quite helpful, most of which were linked in the body of the article.


M content/posts/search-engines-with-own-indexes.gmi => content/posts/search-engines-with-own-indexes.gmi +2 -2
@@ 96,11 96,11 @@ These engines pass most of the tests listed in the “methodology” section.

These engines fail badly at a few important tests. Otherwise, they seem to work well enough.

* seekport: The interface is in German but it supports searching in English just fine. The default language is selected by your locale. It’s really good considering its small index; it hasn’t heard of less common terms (e.g. “Seirdy”), but it’s able to find relevant results in other tests.
* seekport: The interface is in German but it supports searching in English just fine. The default language is selected by your locale. It’s really good considering its small index; it hasn’t heard of less common terms (e.g. “Seirdy”), but it’s able to find relevant results in other tests. The server does not support TLS.
* Exalead: slow, quality is hit-and-miss. Its indexer claims to crawl the DMOZ directory, which has since shut down and been replaced by the Curlie directory. No relevant results for “Oppenheimer” and some other history-related queries. Allows submitting individual URLs for indexing, but requires solving a Google reCAPTCHA and entering an email address.
* ExactSeek: small index, disproportionately dominated by big sites. Failed multiple tests. Allows submitting individual URLs for crawling, but requires entering an email address and receiving a newsletter. Webmaster tools seem to heavily push for paid SEO options.

=> http://www.seekport.com/  seekport
=> http://www.seekport.com/  seekport (HTTP only)
=> https://www.exalead.com/search/  Exalead
=> https://curlie.org  Curlie
=> https://www.exactseek.com/  ExactSeek

M content/posts/website-best-practices.gmi => content/posts/website-best-practices.gmi +2 -2
@@ 24,7 24,7 @@ I realize not everybody's going to ditch the Web and switch to Gemini or Gopher 
* A good score on Mozilla's HTTP Observatory. A bare minimum would be 50, but it shouldn't be too hard to hit 100.
* Optimized images. More on image optimization below.
* All images labeled with alt-text. The page should make sense without images.
* Probably HTTP/2. There are some edge cases in which HTTP/2 can make things slower. Run some tests to find out.
* Probably HTTP/2. Maybe even HTTP/3. Run some tests to see if this is worth it if you're so inclined.
* Works well with Tor. More on this below.

=> https://observatory.mozilla.org/ HTTP Observatory


@@ 168,7 168,7 @@ CSS filters such as "invert" are quite expensive to run, so they should be used 

Some image optimization tools I use:

=> http://pngquant.org pngquant (lossy)
=> https://pngquant.org pngquant (lossy)
=> https://github.com/shssoichiro/oxipng Oxipng (lossless)
=> https://github.com/tjko/jpegoptim jpegoptim (lossless or lossy)
=> https://developers.google.com/speed/webp/docs/cwebp cwebp (lossless or lossy)

M content/posts/website-best-practices.md => content/posts/website-best-practices.md +3 -3
@@ 35,7 35,7 @@ I realize not everybody's going to ditch the Web and switch to Gemini or Gopher 
- A good score on Mozilla's [HTTP Observatory](https://observatory.mozilla.org/). A bare minimum would be 50, but it shouldn't be too hard to hit 100.
- Optimized images. More on image optimization below.
- All images labeled with alt-text. The page should make sense without images.
- Probably HTTP/2. There are some edge cases in which HTTP/2 can make things slower. Run some tests to find out.
- Probably HTTP/2. Maybe even HTTP/3. Run some tests to see if this is worth it if you're so inclined.
- Works well with Tor. More on this below.

I'd like to re-iterate yet another time that this only applies to websites that primarily focus on text. If graphics, interactivity, etc. are an important part of your website, less (possibly none) of this article applies.


@@ 49,7 49,7 @@ One of the defining differences between textual websites and advanced Web 2.0 si

### TLS

All of the simplicity in the world won't protect a page from unsafe content injection by an intermediary. Proper use of TLS protects against page alteration in transit and ensures a limited degree of privacy. Test your TLS setup with [testssl.sh](https://testssl.sh/) and [Webbkoll](https://webbkoll.dataskydd.net/).
All of the simplicity in the world won't protect a page from unsafe content injection by an intermediary. Proper use of TLS protects against page alteration in transit and ensures a limited degree of privacy. Test your TLS setup with [testssl.sh](https://testssl.sh/) and [Webbkoll](https://webbkoll.dataskydd.net/). Mozilla's [HTTP Observatory](https://observatory.mozilla.org/) offers a subset of Webbkoll's features but it also gives a beginner-friendly score. Most sites should strive for at least a 50, but a score of 100 or even 120 shouldn't be too hard.

### Scripts and the Content Security Policy



@@ 150,7 150,7 @@ Image optimization

Some image optimization tools I use:

- [`pngquant`](http://pngquant.org) (lossy)
- [`pngquant`](https://pngquant.org) (lossy)
- [`oxipng`](https://github.com/shssoichiro/oxipng) (lossless)
- [`jpegoptim`](https://github.com/tjko/jpegoptim) (lossless or lossy)
- [`cwebp`](https://developers.google.com/speed/webp/docs/cwebp) (lossless or lossy)

M content/posts/whatsapp-and-the-domestication-of-users.md => content/posts/whatsapp-and-the-domestication-of-users.md +1 -1
@@ 157,7 157,7 @@ Before it turned into a manifesto of sorts, this post was intended to be an expa

I initially decided to expand it to its current form for personal reasons. Nowadays, people demand a thorough explanation every time I refuse to use something that "everybody" uses (WhatsApp, Microsoft Office, Windows, macOS, Google Docs...). They'll usually ignore the explanation, but they expect one anyway. By the next time I meet them, they'll have forgotten our prior conversation and will re-enact the same dialogue again. Justifying all my life choices by sending logically correct statements into the void--knowing that everything I say will be ignored--is an emotionally draining process that has taken a toll on my mental health for the past few years; sending my friends this article and changing the subject should save me a few gray hairs in the years to come.

This article extends the guiding philosophies of the Free Software and Copyleft movements. Thanks to [Barna Zsombor](http://bzsombor.web.elte.hu/) for giving good feedback over IRC.
This article extends the guiding philosophies of the Free Software and Copyleft movements. Thanks to [Barna Zsombor](https://bzsombor.web.elte.hu/) for giving good feedback over IRC.

Since 2900 words wasn't quite enough, I wrote a follow-up: [Keeping platforms open](/2021/02/23/keeping-platforms-open.html). Check it out if you found this article interesting.


M layouts/partials/footer.html => layouts/partials/footer.html +1 -1
@@ 1,6 1,6 @@
<hr>
<footer id="site-footer">
	<p>Copyright © {{now.Year}} Rohan Kumar · <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0 license</a> · <a href="{{ .Site.Params.src }}">Source</a> · <a rel="alternate" href="http://wgq3bd2kqoybhstp77i3wrzbfnsyd27wt34psaja4grqiezqircorkyd.onion{{ .RelPermalink }}">Tor</a></p>
	<p>Copyright © {{now.Year}} Rohan Kumar · <a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0 license</a> · <a href="{{ .Site.Params.src }}">Source</a> · <a rel="alternate" href="http://wgq3bd2kqoybhstp77i3wrzbfnsyd27wt34psaja4grqiezqircorkyd.onion{{ .RelPermalink }}">Tor</a></p>
	{{if .GitInfo -}}
	<p>Site last deployed on {{now.Format "2006-01-02 15:04:05 -0700" }}</p>
	{{- end}}