THE STACK *** PERCENTAGES ARE OPINIONS, NOT MEASUREMENTS *** I SELF-HOST EVERYTHING, INCLUDING THE PROBLEMS *** IF IT WORKS ON MY MACHINE, IT WORKS ON YOUR MACHINE TOO *** SAVE OFTEN *** THE STACK *** PERCENTAGES ARE OPINIONS *** 

THE STACK

all percentages below are opinions, not measurements

every language here is one I have shipped something real in. the percentages are made up. the line counts are not.

WHAT I RUN ON

$ uname -sr Linux 6.x.x-...-fc44.x86_64 $ grep -m1 'model name' /proc/cpuinfo model name : AMD Ryzen 5 5600X 6-Core Processor $ nproc && free -g | awk 'NR==2{print $2" GB"}' 12 32 GB $ cat /etc/os-release | grep PRETTY PRETTY_NAME="Fedora Linux 44 (Cloud Edition)" $ uptime up longer than it should be, 1 user, load average: 0.14 $ echo $EDITOR do not ask $ cd secrets && ls one folder. no link. try the arrow keys.

the terminal block above is decorative. your actual uname output is nobody's business.

THE BARS

every percentage is made up. that is the whole point of a bar.

PYTHON 88%
TYPESCRIPT 82%
JAVASCRIPT 79%
SQL / POSTGRESQL 68%
C# 55%
KOTLIN 44%
LINUX / SYSADMIN 74%
DOCKER / SELF-HOST 71%
DEBUGGING 57%
FRONTEND (JANKY) 44%

TOOLS I ACTUALLY USE

two of these are links. the rest are labels, because not everything has a website worth clicking.

FORGEJO FEDORA DOCKER POSTGRESQL NEVIM PYTHON NODE LINUX VIM KEYMAPS SYSTEMD NPM

CURRENT RABBIT HOLE

Taking old games apart to see how they talk to their servers. Not the cheating kind — I do not care what value is in memory. The interesting part is the wire: what a game sends when it starts up, what it expects back, and what happens to the connection when the company that owned the server stopped existing nine years ago.

So: old save formats, config files nobody documents, and the undocumented protocols that games lean on when they phone home. Half of it is reading bytes and working out which field is which. The other half is the part that keeps me up — the protocol is not the hard bit, it is that the hard part was never written down anywhere and the only remaining copy is the executable.

currently: one format that turned out to be a spreadsheet that thinks it is a database, and one protocol that only speaks to a machine that no longer exists. both are talking to me now. that is the whole project.

THINGS I LEARNED THE HARD WAY

coffee save this list is only 60% accurate

SEE THE PROJECTS