I have started exploring tildes. 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.