Thoughts on tech
186 posts
latest post 2026-10-06
Publishing rhythm
UV Run + PEP 723 Is A Match Made In Heaven
This post will be short but hopefully be a dense few paragraphs about how using along with PEP 723 is life-changing.
GitHub Stopped Me From Messing With The Bots
After some cheeky small-steps-towards-handling-malicious-traffic-on-static-sites it turns out GH has been blocking me from publishing my site because the...
Small Steps Towards Handling Malicious Traffic on Static Sites
Today I saw a random IP hitting an app server I had open via and it got me thinking that I need to take some precautions against these real world threats. So I’m starting with my blog… basically you can reference Jim Nielson’s Blog on Malicious Traffic and then I more or less put similar files in similar places on this site to waste malicious actors’ time The Files # Note that some are empty, we just need them to exist since this is all for a bit of fun and low-effort internet tomfoolery These get shipped with my site at
I struggle with maxxing swap on all my machines, I am sure it’s a neovim config that I’ve propagated everywhere and I’m too lazy to figure it out. Instead I just swapoff and swapon kind of often… but this morning I had to know how to see what’s using all that swap….
The way to see SWAP usage by process in htop is:
- open htop
- Slam
F2(fif you’re just in old schooltop) - see the screenshot, find M_SWAP
- move M_SWAP to
Active Columns
Credit to this superuser post
Speakr For Recording and Transcribing at Home
I have been using Whisper-WebUI for several months in my homelab to record and transcribe myself thinking out loud. It’s been great. Then I came across speakr which is like that but more feature rich in what I wanted out of the WebUI. Specifically I get a nicer UI with transcriptions, a chat window, built-in summarization, and diarization support (WebUI has this too but it’s a little nicer in Speakr in my opinion). Pic # The UI is a little busy but handy for what I’m after in the mornings or when I’m trying to mind-dump somewhere I can conveniently explore later. Speaker Identification # Requires HuggingFace Token to pull the models that perform Speaker diarisation - ie. identifying different speakers Here’s an example from an episode of Hybrid Cloud Show.
RepoFlow Robot User
I’m trying to lean into repoFlow at home, and model some slightly better patterns than open borders to artifacts across all my services. As I’m getting repoflow going I see that I can make users in the console, but then I do have to invite users to workspaces with a manually generate invite link. The workspaces an abstraction layer, and in each workspace can be many kinds of repositories. For my purposes I’ll probably have 2 workspaces, even though 1 would almost certainly suffice. There doesn’t seem to be a way to add a user to a workspace from the admin setting so for a while I was pretty confused why I couldn’t add my robot user to a docker repository in my main workspace… After generating the invite link and accepting though then I see in the workspace settings a simple click to give the robot user access to all repos (if you want) allows the user to mutate tags (ie. push docker tags). If the user only has then they can only create new artifacts (ie. not mutate any tags)
Jellyfin brings in ratings and allows you to set custom ratings for shows, which is nice for things like “block anything worse than TV-14 for my kid’s account”. But what if my firend’s kids can watch shows I don’t want my kids watching? Turns out tags exist and are great!
Tag the content #
First is to actually tag the content - in the UI it’s simple.
- Login with admin
- Manage Metadata
- Click the content you want to tag and find the
Tagssection - Add your tag… for example
blocked:girls
Filter on the account #
- Go to
Dashboard->Users->Library Access->Parental Control->Block items with tags
Chili Notes
I could’ve sworn I had a chili list going but alas… 2025-10-04 2 lbs ground beef 1 big can of pinto beans 3 small cans of black beans 3 cans diced tomatoes 2 onions diced This is last minute chili for church pot-luck… poor planning I browned the meat and seasoned similar to how I might for tacos, but lighter on cumin and added chili powder. Dumped the browned meant, tomtoes, and beans into crock pot. Seasoned with a healthy amount of garlic powder, chili powder, cumin, and salt. Browned the onions, and dumped in. Let stew for a few hours. Eat. Review # 1 bowl was great. The yellow onion still seem to add a little bit of heat, maybe could’ve sauteed them longer
Sending SMS with SMTP
I’m cooking something up over here that will include SMS message notifications as a feature and I’ve been doing some reading on different providers… Many specialize in bulk SMS messaging, like for campaigns and promotions. So this pricing model doesn’t work for me. The providers that do quick single SMS messages are often $0.005 to $.04 cents per message which isn’t insanity but I’m not exactly backed by anyone… Well today I learned that you can actually send SMS messages via SMTP! I wouldn’t bank on total reliability here but for testing and initial roll out of what I want I think this will be perfect. And because I’m just that kind of guy, here’s some code you can and get yourself a handy little text. I’m going to build a simpler module but you can get a and within about 10 minutes. see here