Taking things apart and putting them back together. Old software. Memories.


evading the wifi router ban

slow iptables, reverse dns

asymmetric routing around the firewall

tcp connection timeout mystery

some box under ike's desk (2013)


how does linux nat a ping?

bram moolenaar's work

tired of the rat race (2001-2003)

running k3s on fedora coreos bare metal

kubectl debug netadmin profile

aretext 1.0 release

ad-free ascii codes

implement "find definition" in 77 lines of go


sprite animation toolkit (1992-1999)

aretext 0.7 release, thinking about 1.0

what a cello player said about my html (2000)

incremental parsing in go

floppy disk corruption (2001)

aretext 0.6 released!

echo livestream, cilium

ipv6 home router experiments

fuzzing the aretext markdown parser

binary encoder (2003)

why vim syntax highlighting breaks sometimes

what's new in aretext 0.5?

my homelab has 24 racks and 144 servers

starcraft and networking in the 90s (part 2)

starcraft and networking in the 90s (part 1)

installing windows 98, windows xp, and starcraft in qemu

aol i think (1999)

fosdem 2022 lightning talk

fuzzy find algorithm

rewriting all the code

joining the azure kubernetes team


gospelunk: quickly find definitions in go projects!

project idea: go-symbol-search

open source contributions (2012-2021)

blog reboot

remembering idevgames (2003)

why start a coding side project?

laptop case (2006)

programming books (1998-2004)

quicktime panorama (1999)

the day i discovered vim (2004)

tamagotchi over dial-up (1997)

link to the past (1996)