RSS.Social

👻 mediocregopher

follow: @[email protected]

Posts

Why I Don't Like Go Channels

I Made a Gigantic Toolchest

No One Can Stop You From Making a Toy VM

Panning for Tunes (May 2025 Edition)

Dragging Myself Kicking and Screaming Into the Future

busiless: A Proper Introduction

Micropelago Cross-Post: Isle Release 0.0.4 (Alpha) - Windows Support!

Terrace Workbench

CHANGELOG: Expanded Chapter 2 of How to Program Good

Introducing: How to Program Good

Micropelago Cross-Post: A Game Interface for a non-Game

Block AI Scrapers With a Caddy Plugin

Panning for Tunes (Jan 2025 Edition)

CHANGELOG: gemlog_to_feed Caddy Module

Isle Release v0.0.3 (Alpha) - Multiple networks, CLI configuration, oh my!

Torquato Tasso, and other works from Goethe (1790)

busiless: A Simple Task Tracking and Auto-Prioritization Tool

How Much Faster is Passing-by-Pointer in Go?

I Built a Table for My Record Player

CHANGELOG: Inlined Images Site-wide

New Section Added: 🫶 Donation Station - All people/orgs I have recurring donations to

Movie Review: Alien: Romulus (No Spoilers)

CHANGELOG: Random Acts of Art

A Whole New World

Serving Gemtext Files From Caddy

A Simple Script to Initialize nix-Based Projects

Mediocre Feed: My New Feed Reader

Who Needs a Whole-Ass Git Forge, Anyway?

Fumble Around! A New Gemspace Discovery Service

Book Report: Sir Gawain e il Cavaliere Verde

In Defense of Boilerplate

Serving a Website From a Git Repo Without Cloning It

Book Report: The Consolation of Philosophy

Digital Tidying: Finding and Fixing Dead Links

Micropelago in 2023

On the Shoulders of Giants

Statically Cross-Compiling Rust Projects Using Nix

Ginger 2023 Update

Code Coverage Ain't Everything

Deep Ecology

Story Time: The Hackiest Feature of Them All

DANE Will Set Us Free

The Whole World is Sleeping On Mr. Gnome

Open Offer: I Will Host Your Domain

How to Errors Good

RESP as a General Purpose Serialization Protocol

Domiply: Your Friendly Neighborhood Gateway

Good Music You Haven't Heard Of

Saying LLMs Lack "Understanding"

Copyright, but Punk

Eyeball-Minute Land

A Tour of Gemspace

How to Learn Rust

"Blog" is Such an Ugly Word

Mastodon's Biggest Problem is Its Name

Why Fight The Oaks?

Siamo Tornati!

Running ruTorrent With Nix

My TODO System

Public Release of cryptic-net

Re: The Mindless Tyranny of "What If It Changes?"

Another Small Step For Maddy

My Ideal Operating System

You Just Can't Win

Old Blog, New Bones

Why Do We Have WiFi Passwords?

Ginger: A Small VM Update

The Case for Open Infrastructure

The Cryptic Filesystem

Ginger Names

DAV is All You Need

Ginger: It's Alive!

Minting A Single NFT

Managing a Home Server With Nix

DOG! MONEY!

Building AppImages with Nix

The Syntax of Ginger

Self-Hosting a Blog Mailing List

V4 of Radix, a Golang Redis Driver

How to Secure a Webapp

Setting Up maddy On A VPS

Viz 7

Self-Hosted Email With maddy: A Naive First Attempt

Viz 6

Adventures In DeFi

Viz 5

Viz 4

New Year's Resolution Vibe Check

Ripple V3

NFTs

Loops in Ginger

Composing Processes Into a Static Binary With Nix

Ripple V2: A Better Game

Evaluation of Network Filesystems

F-Mail

A Simple Rule for Better Errors

Ripple: A Game

Conditionals in Ginger, Errata

Conditionals in Ginger

Married!

Building gomobile Using Nix

Old Code, New Ideas

Building Mobile Nebula

Goodbye, Github Pages

The Web

Ginger

New Year, New Resolution

Component-Oriented Programming

Viz 3

Denver Protests

Program Structure and Composability

Viz 2

Viz 1

Rethinking Identity

Brian Bars

Happy Trees

Go's http package by example

Rabbit Hole

Erlang Pitfalls

Diamond Square

Namecoin, A Replacement For SSL

Generations

Go+

Erlang, tcp sockets, and active true