The goal is simple: keep notes that are useful to future me, and maybe useful to you too.
Bringing Back the 1971 Social Network: A Quick Guide to Finger
Long before algorithmic feeds, engagement metrics, and push notifications, the internet had a radically simple way to see what people were up to: Finger.
Originally conceived in 1971 at Stanford and formalized under RFC 742 (and later RFC 1288), Finger is a minimalist, plain-text networking protocol running over TCP port 79. When you query a user via finger user@host, the remote machine returns status metadata alongside the contents of a simple text file: .plan.
...
Uncovering a Massive GitHub Supply Chain Attack: When a Friend's Repo Bites Back
During a routine code review of a colleague’s GitHub repository, I identified an anomalous, highly obfuscated block of code embedded within a standard Python file. The use of randomized variable names and dense encoding strongly indicated malicious intent. Upon further investigation, this isolated finding revealed a sophisticated, large-scale supply chain attack currently affecting hundreds of repositories across GitHub.
This article details the discovery, the reverse-engineering process, and actionable mitigation strategies to secure your development pipelines.
...
Introducing Django AI Validator: When Regex Isn't Enough
Regex is perfect for emails, postal codes, and other tidy little strings. It completely falls apart when the requirement sounds like, “make sure this bio feels professional” or “double-check that the listing actually describes a car.” You can throw more patterns at it, but you’re still judging syntax, not meaning.
Django AI Validator is my answer for the semantic gap. It’s a fresh PyPI package that lets your Django fields tap into modern LLMs (OpenAI, Anthropic, Gemini, or even local Ollama) for on-the-fly validation and cleaning.
...
TermForge: Modernizing My Terminal Workflow
I’ve always liked the original jazik/termenv project—it’s a clean Ansible playbook that bootstraps a great terminal environment. But after living in it for a while, I found myself wanting tighter macOS support, automatic iTerm2 provisioning, and some Kubernetes-focused tooling. I decided to fork the project and build out those extra pieces. The result is TermForge, my refreshed take on the “terminal in a box” idea.
Why Fork Instead of PR? Initially, I explored incremental improvements to the upstream repo. Pretty quickly the changes snowballed—new playbooks, an opt-in name change, macOS-only roles, documentation rewrites, and Kubernetes helpers that modify multiple files. Rather than disrupt the original’s scope, I forked it and leaned into a new project identity while crediting the original work.
...
C++ Resource Management: The Complete Picture
Let’s talk about keeping our C++ code clean and safe, specifically focusing on preventing those nasty memory leaks using Smart Pointers.
1. The Headache: Raw Pointers and Leaks The biggest headache with raw pointers (like int* data = new int(10);) is that you have to clean them up yourself (delete data;). If your function bails out early because of an error, a return statement, or an exception, that delete statement gets skipped.
...