- linux 25
- sysadmin 20
- gopher 14
- haskell 12
- debian 10
- archival 6
- nix 6
- nginx 5
- letsencrypt 4
- gaming 4
- server 4
- code 4
- showcase 3
- ai 3
- webdev 2
- games 2
- irc 2
- someodd-irc 2
- someodd-cs16 2
- events 2
- xmpp 2
- networking 2
- lto 2
- hardware 2
- crypto 2
- security 2
- sdl 1
- game 1
- bash 1
- media 1
- whisper-radio 1
- someodd-xmpp 1
- windowmaker 1
- server, 1
- gopher, 1
- irc, 1
- znc 1
- halloween 1
- retro tech 1
- ltfs 1
- retro 1
- development 1
- git 1
- cs1.6 1
- cs16 1
- mumble 1
- libraries 1
- san francisco 1
- prosody 1
- audio 1
- radio 1
- someodd 1
- career 1
- community 1
linux
Music server with Music Player Daemon
I had some requirements:
XMPP: audio/video call support (prosody)
Some sloppy notes for you about how to enable audio/video calling for a prosody server in debian.
How to set up a Mumble server
Mumble is an old-school, low-latency voice chat app, perfect for games like Counter-Strike 1.6. It’s a bit tricky to set up but offers strong encryption and full control. My server provides a lightweight, private alternative for high-performance voice chat.
LetsEncrypt renewal hooks: I was doing it all wrong!
I kept saying deploy_hook
and post_hook
, but no it’s renew_hook
, and if
there’s unrecognized entry it’ll just remove it! I have no idea how I made this mistake…
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Routing gopher requests (reverse proxy) + Tor
I host different Gopher Protocol services which use different ports on one box. So I kind of need a reverse proxy of sorts. I wanted to make sure I could access all of them using port 70.
Simple, quick VPN server using WireGuard
Why do I use a VPN? I personally use it because I think exposing a VPN service with which to connect to all my services like SSH is a lot safer than just exposing SSH to the wild, wild Internet.
Server upgrade! 4x RAM + GPU! Including CUDA+ollama!
This is both a server announcement and a guide!
Out of disk space!
I’m out of disk space and need to figure out how to free up space.
git, GitHub and multiple accounts/profiles
If you use more than one GitHub account you may want a nice set up to make it easy to assign a specific user to a specific repo with ease. Here are some instructions for that, plus signing commits with GPG key.
Cashing out Monero in Debian
I was trying to get all of my XMR (Monero) sold, but this took some work on my Debian server, as I hand’t touched it in a while.
Running Bitcoin on my server
Actually own your BTC by running bitcoind
on your (Debian, Linux) server.
Making my server quieter
Entered BIOS and looked for acoustic/power/performance settings which led me to some way to reduce fan intensity in BIOS.
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
Archive using LTO Tape
A new guide to archving with LTO5 and Debian.
Dynamic DNS in Linux (Debian)
I used to use DuckDNS, but then I started using afraid.org.
My entry for Bitreich’s “Haunted Hosts” Halloween Event
For Bitreich’s “Haunted Hosts” Hallowe’en event I made this, try a trick
:
Restic Backup Entire Server
Let’s make a backup of the entire server.
Torrents for data longevity
Creating torrents for data longevity, a distributed way to archive data.
Using GNU screen
I love GNU screen. It allows me to keep various sessions open regardless if my
SSH connection terminates or not. It’s also very nice for my VT320 terminal,
because I can easily switch between windows and divide up the screen. I’m told
tmux
is better and more useful (I think for old terminals, too?), so I’ll
look into that, too, at some point.
Productivity in Window Maker

I use the old school, lightweight Window Maker window manager on Debian Unstable.
Set up an XMPP Server
XMPP allows you to host your own encrypted communication server, where you can talk to other people on their own servers. Think of email, but for instant messaging.
Set up an IRC server
My journey setting up a little IRC server, with SSL support and services, on Debian 12.
Archive using LTO Tape
Archive using LTO Tape
sysadmin
Music server with Music Player Daemon
I had some requirements:
XMPP: audio/video call support (prosody)
Some sloppy notes for you about how to enable audio/video calling for a prosody server in debian.
LetsEncrypt renewal hooks: I was doing it all wrong!
I kept saying deploy_hook
and post_hook
, but no it’s renew_hook
, and if
there’s unrecognized entry it’ll just remove it! I have no idea how I made this mistake…
Routing gopher requests (reverse proxy) + Tor
I host different Gopher Protocol services which use different ports on one box. So I kind of need a reverse proxy of sorts. I wanted to make sure I could access all of them using port 70.
Simple, quick VPN server using WireGuard
Why do I use a VPN? I personally use it because I think exposing a VPN service with which to connect to all my services like SSH is a lot safer than just exposing SSH to the wild, wild Internet.
Server upgrade! 4x RAM + GPU! Including CUDA+ollama!
This is both a server announcement and a guide!
Out of disk space!
I’m out of disk space and need to figure out how to free up space.
Cashing out Monero in Debian
I was trying to get all of my XMR (Monero) sold, but this took some work on my Debian server, as I hand’t touched it in a while.
Running Bitcoin on my server
Actually own your BTC by running bitcoind
on your (Debian, Linux) server.
Making my server quieter
Entered BIOS and looked for acoustic/power/performance settings which led me to some way to reduce fan intensity in BIOS.
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
Archive using LTO Tape
A new guide to archving with LTO5 and Debian.
Dynamic DNS in Linux (Debian)
I used to use DuckDNS, but then I started using afraid.org.
My entry for Bitreich’s “Haunted Hosts” Halloween Event
For Bitreich’s “Haunted Hosts” Hallowe’en event I made this, try a trick
:
Restic Backup Entire Server
Let’s make a backup of the entire server.
Torrents for data longevity
Creating torrents for data longevity, a distributed way to archive data.
Using GNU screen
I love GNU screen. It allows me to keep various sessions open regardless if my
SSH connection terminates or not. It’s also very nice for my VT320 terminal,
because I can easily switch between windows and divide up the screen. I’m told
tmux
is better and more useful (I think for old terminals, too?), so I’ll
look into that, too, at some point.
Set up an XMPP Server
XMPP allows you to host your own encrypted communication server, where you can talk to other people on their own servers. Think of email, but for instant messaging.
Set up an IRC server
My journey setting up a little IRC server, with SSL support and services, on Debian 12.
Archive using LTO Tape
Archive using LTO Tape
gopher
I’m now a member of Bitreich!
I am now officially a member of Bitreich!
My radio interview (Lispy Gopher Climate/screwtape)
On March 19, 2025, I did a radio interview with screwtape, on his “Lispy Gopher Climate” segment on aNONradio (hosted by SDF), about Gopher, a little bit about smallnet, Gemini, Bitreich, programming philosophy, and The MADE (a museum I am making a documentary for). Screwtape has a segment on SDF’s aNONradio.
Routing gopher requests (reverse proxy) + Tor
I host different Gopher Protocol services which use different ports on one box. So I kind of need a reverse proxy of sorts. I wanted to make sure I could access all of them using port 70.
Lagrange & ASCII-art-heavy gopherholes
Making Lagrange display ASCII-art heavy gopherholes in a (hopefully) nicer way.
Using old terminals (like the VT320) with Linux
I have a VT320 with a unix-style LK401 (?) keyboard. I connected it via serial to my Debian server. Here’s how.
Subscribing to feeds in gopherspace
Liferea allows you to use a command as a feed source!
Dillo Browser

Dillo is a very lightweight browser. I personally enjoy it because I feel it suits Window Maker and it has Gemini and Gopher plugins.
burrow: Static Gopherhole Generator

You may have heard of static site generators. You may even have heard of the Gopher Protocol. But have you heard of a static gopherhole generator?
Waffle: Gopher Client
I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
gopherden: Forum via Gopher Protocol
gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
Using the Gopher Protocol

The point of this article is to get you browsing gopherspace quickly and to share some of my favorite gopherholes…
gopherden: Forum via Gopher Protocol

gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
gopherdashboard: Sysadmin via Gopher

Waffle: Gopher Client

I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
haskell
Becoming a Hackage uploader
I was working on Venusia because I keep writing Gopher servers. I realized I wanted to just create a library/dependency. So I wanted to actually put this on Hackage, which is Haskell’s package repository.
Setup Haskell verification with LiquidHaskell and Stack
This article helps you get started with LiquidHaskell, which I found confusing.
Nix Flake a Haskell Project
I wrote these notes because I wante to reduce the friction for myself and others to getting a Nix Flake working for their Haskell Project.
burrow: Static Gopherhole Generator

You may have heard of static site generators. You may even have heard of the Gopher Protocol. But have you heard of a static gopherhole generator?
Waffle: Gopher Client
I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
Intramaze: Chat encounters in collab-built maze
Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
gopherden: Forum via Gopher Protocol
gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
gopherden: Forum via Gopher Protocol

gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
gopherdashboard: Sysadmin via Gopher

Waffle: Gopher Client

I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
Intramaze: Chat encounters in collab-built maze

Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
haskellcard: hypercard-like game engine

haskellcard an SDL2 game engine based around the idea of exploring different scenes. Ended up being similar to HyperCard. Kind of a point-and-click type thing, but I wanted to have a lot of real-time support, since I think feel like point-and-clicks are kind of boring or not very fun.
debian
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Simple, quick VPN server using WireGuard
Why do I use a VPN? I personally use it because I think exposing a VPN service with which to connect to all my services like SSH is a lot safer than just exposing SSH to the wild, wild Internet.
Server upgrade! 4x RAM + GPU! Including CUDA+ollama!
This is both a server announcement and a guide!
Out of disk space!
I’m out of disk space and need to figure out how to free up space.
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
Dynamic DNS in Linux (Debian)
I used to use DuckDNS, but then I started using afraid.org.
Productivity in Window Maker

I use the old school, lightweight Window Maker window manager on Debian Unstable.
Waffle: Gopher Client
I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
Waffle: Gopher Client

I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
archival
My radio interview (Lispy Gopher Climate/screwtape)
On March 19, 2025, I did a radio interview with screwtape, on his “Lispy Gopher Climate” segment on aNONradio (hosted by SDF), about Gopher, a little bit about smallnet, Gemini, Bitreich, programming philosophy, and The MADE (a museum I am making a documentary for). Screwtape has a segment on SDF’s aNONradio.
Joining The MADE: Retro Tech Museum
I have donated and am starting to volunteer at The Made, primarily remotely.
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
Archive using LTO Tape
A new guide to archving with LTO5 and Debian.
Torrents for data longevity
Creating torrents for data longevity, a distributed way to archive data.
Archive using LTO Tape
Archive using LTO Tape
nix
Nix Flake a Haskell Project
I wrote these notes because I wante to reduce the friction for myself and others to getting a Nix Flake working for their Haskell Project.
Waffle: Gopher Client
I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
gopherden: Forum via Gopher Protocol
gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
gopherden: Forum via Gopher Protocol

gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
Waffle: Gopher Client

I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
haskellcard: hypercard-like game engine

haskellcard an SDL2 game engine based around the idea of exploring different scenes. Ended up being similar to HyperCard. Kind of a point-and-click type thing, but I wanted to have a lot of real-time support, since I think feel like point-and-clicks are kind of boring or not very fun.
nginx
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
someodd CS 1.6

Good ol’ head shots
Someodd IRC

The skinny
Whisper Radio

Look ma, no human DJ!
letsencrypt
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Someodd IRC

The skinny
Whisper Radio

Look ma, no human DJ!
gaming
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
someodd Counter-Strike 1.6 Online Party #01

The first someodd Counter-Strike 1.6 online party, to celebrate the launch of my CS1.6 server.
someodd CS 1.6

Good ol’ head shots
server
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
Making my server quieter
Entered BIOS and looked for acoustic/power/performance settings which led me to some way to reduce fan intensity in BIOS.
Planned Server Downtime on June 3, 2024 (GPU & RAM Upgrades)
My server will be down on Monday, June 3, 2024 (USA). Basically all of my services will be affected (XMPP, IRC, Whisper Radio, CS1.6, more).
code
Becoming a Hackage uploader
I was working on Venusia because I keep writing Gopher servers. I realized I wanted to just create a library/dependency. So I wanted to actually put this on Hackage, which is Haskell’s package repository.
Applying to Avantos AI (job)
I saw a job listing on Ask HN: Who is hiring (March 2025). Seemed to be one of those fancy new cryptic challenge-based interviews.
My radio interview (Lispy Gopher Climate/screwtape)
On March 19, 2025, I did a radio interview with screwtape, on his “Lispy Gopher Climate” segment on aNONradio (hosted by SDF), about Gopher, a little bit about smallnet, Gemini, Bitreich, programming philosophy, and The MADE (a museum I am making a documentary for). Screwtape has a segment on SDF’s aNONradio.
Setup Haskell verification with LiquidHaskell and Stack
This article helps you get started with LiquidHaskell, which I found confusing.
showcase
Waffle: Gopher Client
I made a Gopher client called waffle. Basically, a web browser, but for the Gopher Protocol. I started it about 4 years ago now (2020?).
Intramaze: Chat encounters in collab-built maze
Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
gopherden: Forum via Gopher Protocol
gopherden is forum software for the Gopher Protocol. View the official gopherden server via the web or via the Gopher Protocol (as intended) (you may want to read my post about the Gopher Protocol).
ai
Applying to Avantos AI (job)
I saw a job listing on Ask HN: Who is hiring (March 2025). Seemed to be one of those fancy new cryptic challenge-based interviews.
Server upgrade! 4x RAM + GPU! Including CUDA+ollama!
This is both a server announcement and a guide!
Whisper Radio

Look ma, no human DJ!
webdev
Intramaze: Chat encounters in collab-built maze
Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
Intramaze: Chat encounters in collab-built maze

Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
games
Intramaze: Chat encounters in collab-built maze
Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
Intramaze: Chat encounters in collab-built maze

Intramaze is web software which can serve a website allowing users to collaboratively build a maze together, by creating rooms which then can be linked together by defining polygons that act as links to other rooms. Users can chat together if they’re in the same room.
irc
Someodd XMPP

Chat, kinda everywhere and everyone
Someodd IRC

The skinny
someodd-irc
Someodd XMPP

Chat, kinda everywhere and everyone
Someodd IRC

The skinny
someodd-cs16
someodd Counter-Strike 1.6 Online Party #01

The first someodd Counter-Strike 1.6 online party, to celebrate the launch of my CS1.6 server.
someodd CS 1.6

Good ol’ head shots
events
My entry for Bitreich’s “Haunted Hosts” Halloween Event
For Bitreich’s “Haunted Hosts” Hallowe’en event I made this, try a trick
:
someodd Counter-Strike 1.6 Online Party #01

The first someodd Counter-Strike 1.6 online party, to celebrate the launch of my CS1.6 server.
xmpp
XMPP: audio/video call support (prosody)
Some sloppy notes for you about how to enable audio/video calling for a prosody server in debian.
Someodd XMPP

Chat, kinda everywhere and everyone
networking
Simple, quick VPN server using WireGuard
Why do I use a VPN? I personally use it because I think exposing a VPN service with which to connect to all my services like SSH is a lot safer than just exposing SSH to the wild, wild Internet.
Dynamic DNS in Linux (Debian)
I used to use DuckDNS, but then I started using afraid.org.
lto
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
Archive using LTO Tape
A new guide to archving with LTO5 and Debian.
hardware
Server upgrade! 4x RAM + GPU! Including CUDA+ollama!
This is both a server announcement and a guide!
Making my server quieter
Entered BIOS and looked for acoustic/power/performance settings which led me to some way to reduce fan intensity in BIOS.
crypto
Cashing out Monero in Debian
I was trying to get all of my XMR (Monero) sold, but this took some work on my Debian server, as I hand’t touched it in a while.
Running Bitcoin on my server
Actually own your BTC by running bitcoind
on your (Debian, Linux) server.
security
Using GPG to encrypt messages (like email)
I wanted to email phrack, but their contact info specifies the use of a public key/GPG. So I wanted to send them a GPG-encrypted/signed email message! Here’s a guide on encrypting/signing arbitrary text content with GPG.
git, GitHub and multiple accounts/profiles
If you use more than one GitHub account you may want a nice set up to make it easy to assign a specific user to a specific repo with ease. Here are some instructions for that, plus signing commits with GPG key.
sdl
haskellcard: hypercard-like game engine

haskellcard an SDL2 game engine based around the idea of exploring different scenes. Ended up being similar to HyperCard. Kind of a point-and-click type thing, but I wanted to have a lot of real-time support, since I think feel like point-and-clicks are kind of boring or not very fun.
game
haskellcard: hypercard-like game engine

haskellcard an SDL2 game engine based around the idea of exploring different scenes. Ended up being similar to HyperCard. Kind of a point-and-click type thing, but I wanted to have a lot of real-time support, since I think feel like point-and-clicks are kind of boring or not very fun.
bash
Whisper Radio

Look ma, no human DJ!
media
Whisper Radio

Look ma, no human DJ!
whisper-radio
Whisper Radio

Look ma, no human DJ!
someodd-xmpp
Someodd XMPP

Chat, kinda everywhere and everyone
windowmaker
Productivity in Window Maker

I use the old school, lightweight Window Maker window manager on Debian Unstable.
server,
Important Announcements! Service Availability & Changes!
Some important news about my services.
gopher,
Important Announcements! Service Availability & Changes!
Some important news about my services.
irc,
Important Announcements! Service Availability & Changes!
Some important news about my services.
znc
Important Announcements! Service Availability & Changes!
Some important news about my services.
halloween
My entry for Bitreich’s “Haunted Hosts” Halloween Event
For Bitreich’s “Haunted Hosts” Hallowe’en event I made this, try a trick
:
retro tech
Using old terminals (like the VT320) with Linux
I have a VT320 with a unix-style LK401 (?) keyboard. I connected it via serial to my Debian server. Here’s how.
ltfs
Restic on LTFS
Archiving to tape with restic: how I processed 414980 files, roughtly 60 GiB in about 10 minutes, with incremental updates too.
retro
Joining The MADE: Retro Tech Museum
I have donated and am starting to volunteer at The Made, primarily remotely.
development
git, GitHub and multiple accounts/profiles
If you use more than one GitHub account you may want a nice set up to make it easy to assign a specific user to a specific repo with ease. Here are some instructions for that, plus signing commits with GPG key.
git
git, GitHub and multiple accounts/profiles
If you use more than one GitHub account you may want a nice set up to make it easy to assign a specific user to a specific repo with ease. Here are some instructions for that, plus signing commits with GPG key.
cs1.6
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
cs16
Counter-Strike 1.6 Server (Linux)

How to run a Counter-Strike 1.6 server in Linux (namely Debian). I even go into some bonus materials, like making bonus assets (maps, sounds, etc.) download quickly, making statistics accessible as JSON via HTTPS.
mumble
How to set up a Mumble server
Mumble is an old-school, low-latency voice chat app, perfect for games like Counter-Strike 1.6. It’s a bit tricky to set up but offers strong encryption and full control. My server provides a lightweight, private alternative for high-performance voice chat.
libraries
Exploring San Francisco’s Libraries: Richmond/Senator Milton Marks Branch
This is part of my series on branches of the San Francisco Public Library system, which I explore through their “explorer map” program.
san francisco
Exploring San Francisco’s Libraries: Richmond/Senator Milton Marks Branch
This is part of my series on branches of the San Francisco Public Library system, which I explore through their “explorer map” program.
prosody
XMPP: audio/video call support (prosody)
Some sloppy notes for you about how to enable audio/video calling for a prosody server in debian.
audio
Music server with Music Player Daemon
I had some requirements:
radio
My radio interview (Lispy Gopher Climate/screwtape)
On March 19, 2025, I did a radio interview with screwtape, on his “Lispy Gopher Climate” segment on aNONradio (hosted by SDF), about Gopher, a little bit about smallnet, Gemini, Bitreich, programming philosophy, and The MADE (a museum I am making a documentary for). Screwtape has a segment on SDF’s aNONradio.
someodd
My radio interview (Lispy Gopher Climate/screwtape)
On March 19, 2025, I did a radio interview with screwtape, on his “Lispy Gopher Climate” segment on aNONradio (hosted by SDF), about Gopher, a little bit about smallnet, Gemini, Bitreich, programming philosophy, and The MADE (a museum I am making a documentary for). Screwtape has a segment on SDF’s aNONradio.
career
Applying to Avantos AI (job)
I saw a job listing on Ask HN: Who is hiring (March 2025). Seemed to be one of those fancy new cryptic challenge-based interviews.
community
I’m now a member of Bitreich!
I am now officially a member of Bitreich!