Day job
Keep it running
Windows, Linux, automation and the occasional mess that needs untangling.
Hi, I'm Gabin. Online as Opperiesen.
I keep systems running by day. After hours, I build overly specific tools for whatever I'm into.
01 / Me
Day job
Windows, Linux, automation and the occasional mess that needs untangling.
Side quests
Most projects start with “surely this already exists”. Sometimes it doesn't.
After hours
Racing lines, football tactics and game economies. I like hobbies with something to figure out.
02 / Made
01 Live
I kept forgetting Vim commands. Cheat sheets weren't helping.
So I built the practice loop I wanted: real commands, scored keystrokes, bosses and a dojo that brings back what I get wrong.
106levels
30dojo families
129/129cases matching real Vim
file:// · no build · no dependencies
02 Live
I wanted Linux basics to feel like using a shell, not reading a glossary.
So I built the full practice path: a safe shell, 24 focused chapters, one boss per category and manuals for every simulated command.
144missions
107command manuals
0host access
24 bosses · tested solutions · Tab-complete
03 Private
My home network was becoming a pile of clicks I couldn't reproduce.
So I gave the gateway a Python CLI and a proper export, plan and apply loop. Much easier to trust.
›uv run scripts/export_config.py --out config/network.yaml --force
›uv run scripts/apply_config.py --plan
›uv run scripts/apply_config.py --apply
export → plan → apply
04 Private
Everyone guesses football scores. I preferred to make the bookmakers do the maths.
Market odds go in. Shin probabilities, Dixon-Coles and expected MPP points come out. Then I still blame the model.
market odds→Shin probabilities
goal model→Dixon-Coles
every score→max E[MPP points]
E = P(exact) × points + P(result) × points
03 / Patterns
The first time is discovery. The second is confirmation. By the third, I'm writing a script.
Future me should be able to open it six months later and understand what's going on.
I know it only needs to work once. I'll still fix the spacing.
Dead project, deleted infrastructure, useful lesson kept. No guilt.