I have started exploring tildes. <butchered column>
When I am playing games and in
real life, I am an explorer.
Before I knew about computers, I
played World of Warcraft after
having played Warcraft 3 too
seriously. To those who never had
this diversion, this was
Blizzard's famous Tolkeinesque
franchise where orcs and humans
are at war, and reclusive elves
also get dragged into it. In the
World of Warcraft massively
multiplayer Online game, elf
characters start in an
Yggdrassil-like tree on an
island. After descending the
tree, elves would catch a boat to Also I changed the not-found
the human-inhabited lands. With return from "NIL" to a
some swimming, you could explore human-readable message at
around the base of the tree, xwindows' prompting.
which was lightly forested with
small trees amoung roots of the $ printf "bad" | nc
great tree. The game clearly did beastie.sdf.org 7991 I found no
not expect you to go here, as the pages
creatures and monsters the game
generates did not spawn there, Deeper in, we discussed using an
nor were there any other inetd based server such as
non-player-characters. However it gophernicus. However I don't have
was like exploring an uninhabited the level of access necessary to
coastline- there was clear customise inetd myself on
artistry of a kind in the forest beastie, so instead I do
and beach alcoves. something like a fastcgi on my
assigned port. However while I
On my adventures I met xwindows, accept new connections in a
who is wise in the ways of multithreaded way via common lisp
gophers. Inspecting my tiny usocket, I only have a single
readonly-memory lisp gopher thread sequentially deal with
server, xwindows helpfully each connection. We talked about
pointed out that the standard having one thread responsibly
requires CRLF be respected as an deal with multiple slow
item specifier, whereas my server connections at the same time, but
gopher://beastie.sdf.org:7991/ xwindows felt for my use case I
was only serving /CRLF (the slash should just dispatch a thread for
implying a top level directory to each connection (with a counting
me). I made it serve the same semaphore to constrain the number
gophermap for "/" "CRLF" and "LF" of threads). I had originally
initially in a silly duplicative deigned not to do that, but I
way, though I quickly patched think I will make a new version
that out- since only the top that does do that.
level gopher listing was a
special case, I could handle it In other news, we had a fun
specially without much affair. conversation during rolltime's
Actually, my gopher server works weekend show about when we might
in a funny way- it reads want tls or signing of phosts.
characters until there is only Since I phost lots of code for
one (or no) possibility, people to play with, I had
immediately forces that output thought that verifying it using
and closes the connection. Here signify(1) could conceivably be
is a collection of gopher important (if someone was
requests that work equivalently otherwise being attacked, and was
(by group): downloading and running code from
my phlog without actually looking
printf "\n" | \ at it). However this also seems
nc beastie.sdf.org 7991 kind of misplaced. Instead, I am
printf "/\r" | \ thinking to start
nc beastie.sdf.org 7991 actually-finishing-packaging my
and so on. Also: odd bits and pieces, since for
printf \ example the BSD ports Makefiles
"phlogs/impromptu-bagels.txt" already include cryptographic
and checksum checking, so by porting
printf \ my code to BSDs (or linux package
"phlogs/imp" managers) I get that both
and reliably and somewhat
printf \ transparently by default. I
"phlogs/impSpellingMistake" wanted to include packaging lisp
are equivalents. projects for distribution in my
next HPR contribution already.
----
Another value of tls, which
gopher does not use, is that it
exposes slightly less tracking
information in your requests,
assuming you are not leaking more
tracking information by
contacting whitelists yourself
(like mainstream web browsers).
*Gemini doesn't do that, instead
practicing TOFU (assume the first
certificate you see is the real
one and issue warnings if the
certificate changes
unexpectedly). I don't like being
proximally mined for my browsing
data by my ISP for example.
However I think this is best
mitigated by browsing gopher
through a tilde, who are our
libre-loving community.
This week I will also switch my
default gopher browser to phetch
for good.