maker://hans.anderson
I am a creator. I build websites/apps as a full-stack-senior-web-application-devops-engineer-blah-blah-you-name-it; I produce audio short stories; I create fun lego photos and animated videos; I make disc golf stats.
I am the creator of the tech-fantasy and fiction-crime podcasts series Dist1nc7ive Stories, and produce other audio short stories.
I'm a freelance full stack web geek, and I blog about it, including my favorite toys of late: automation with Playwright/Puppeteer, PHP Goutte, and I leave myself notes-to-self to remember.
I am a co-founder of StatMando, a disc golf side-project that helped revolutionize stats in disc golf.
I used to run goofiness.com, and currently have Mockumentary.com, HuckfaceDG and a few other, um, interesting side projects.
fullstack://
discgolf://
producer://
I'm the creator of the tech-fantasy and fiction-crime podcasts series Distinctive Stories.
Rufus & Anna are villains in "Computronium"
writer://
January 8, 2026
PHP MySQL Heredoc to Test on Command Line
I recently needed to test a MySQL connection in a k8s pod without an editor installed and running as a non-privileged user without installation rights on a read-only filesystem. This snippet helped...
ReadNovember 30, 2025
How to Change Keyboard Layouts (Ubuntu 24.04 Wayland)
I have my wierd Ubuntu laptop keyboard mapped the way I want it, and bought a new bluetooth, ergonomic, portable keyboard whose mappings are also weird and hosed. I couldn't get them to play...
ReadNovember 30, 2025
How to Turn Off Auto-Maximize in Ubuntu
For some reason, I hate maximized windows. I like them to be "nearly maximized".
Don't get me started about "Full Screen". Ick. I'm an old-timey Alt-Tab guy so going full screen just...
September 25, 2025
.vimrc File Backup
There is no rhyme or reason to the structure, just a pile of settings. This has changed a lot since I moved to VSCode as my IDE; I removed a lot of the IDE-ish functionality I used to have with...
ReadSeptember 23, 2025
Binary Trees
EXCELLENT article on b-trees, with animations that make it very easy to understand: https://planetscale.com/blog/btrees-and-database-indexes Also a good video:...
ReadSeptember 17, 2025
Drill: Guess the Binary Number
I wanted to be able to read binary numbers better, mostly 0-255, because it is sometimes used in networking and because it's interesting to me right now. So, here's a little practice system:...
ReadSeptember 16, 2025
Drill: Guess the Hex Number
I wanted to be able to read hex numbers better, mostly 0-255, because it is sometimes used in networking and because it's interesting to me right now. So, here's a little practice system: Reveal...
ReadSeptember 16, 2025
Names in OSI Model
Application Layer: Data Transport Layer: Segment Network Layer: Packet Link/Physical Layer: Frame
ReadSeptember 13, 2025
Man-in-the-Middle (mitm) Proxy
This thing is fantastic: Man in the Middle Proxy. It focuses a little higher in the network stack than tools like Wireshark and gives you insight about the traffic to and from your computer. It can...
ReadSeptember 12, 2025
Subnetting (and Drills)
Subnetting Cheat Sheet**: Using that cheatsheet, solve for: Subnetting practice/drills: https://subnetipv4.com/ With subnet mask practice/drills:...
ReadSeptember 11, 2025
MySQL - Check Collation and Charset
How to check collation and charset in mysql. utf8mb4_general_ci "ci" = case-insensitive. "A" = "a". "café" = "cafe" (accent-insensitive). utf8mb4_bin “bin” = binary. "A" ≠ "a"....
ReadJuly 11, 2025
How to Make a Typed PHP Array or Collection
So, one thing a lot of people want that PHP doesn't natively support is typed arrays. In other languages you can say "I want an array of integers" or "I want an array of strings" or "I want this to...
Read