obk

hello! i usually go by obk on the internet, though my real name is bahadır /bahaˈdɯɾ/. i build and maintain systems, mostly the parts that stay out of sight: infrastructure, tooling, and the plumbing that keeps the visible half honest.

reach out:
obkdev@pm.me, pgp key
find me:
github
my writing:
things i've written, rss
my setup:
what i use

computers!

i spend most of my time building and looking after systems: the infrastructure and tooling that other things stand on. when it's working, nobody notices, and that's the point. most of what i write is go, in small tools that each do one job and ship as one binary. four of them live together as spinney, my lab for small tools, all free software.

my days are split across a few machines, each with a name from evangelion. work happens on a fedora laptop, and everything else on ikari, a 14 inch macbook pro. ayanami, a windows desktop with an rtx 4080, is mostly for games. i write code in zed, in ghostty, with fish as the shell, and keep the setup in my dotfiles so a new machine is one script away.

at home there's a small homelab on unifi. magi, a beelink running proxmox, hosts the services: photos in immich, media in jellyfin, passwords in vaultwarden, and the arr stack. nagisa, a raspberry pi, blocks ads for the whole network with adguard home, and soryu, another pi, runs a claude code agent. katsuragi, a small vps, is the tailscale exit node, so home is within reach from anywhere.

the full list of parts, and a drawing of how it all fits together, is on what i use.

projects!

small tools, each doing one job, mostly in go, all of them free software on github. the first four are spinney, my lab for small tools, under the gpl-3.0.

canopy
a read-only web viewer for git repositories: one go binary, pages need no javascript, pushed over ssh
coppice
builds a personal site with essays from markdown: one go program, no framework, no node
glade
a status page that checks websites and ports, keeps 90 days of results, one go binary with no javascript
thicket
a small feed reader for rss and atom: one go binary and an sqlite file, no javascript, nothing tracked

and the rest:

lofi-bar
lofi radio in the gnome shell top bar, always on each station's best stream, flac where offered
emotion-analysis-from-video
finds faces in a video with opencv, classifies their emotions with deepface, and merges brief flickers into segments
advent-of-code
advent of code solutions for 2015 to 2025, in go, one file per day
solar-fault-classifier
a cnn that sorts solar panel images into four fault types, trained in jupyter notebooks

movies!

what i've watched lately