Go With The Flow [updates]
Update Summary - Flowchart Maker v3.0 (free)
A New Package Manager
Status update and new package manager announcement
Mixing KEM into Noise
pre.handshake { add { color: green; font-weight: bold; text-decoration: underline; } del { color: red; font-weight: bold; text-decoration: line-through; } } This is a draft. It’s a notepad for…
Build vs buy in the age of AI
Whatever your thoughts on AI, it’s pretty clear using LLMs to generate code is here to stay in the workplace. AI models have got so good at writing code, that at first glance, it seems trivial to…
Mediation Analysis and (In)Direct Effects with PyMC
Mediation analysis goes beyond asking “does the treatment work?” to ask “how does the treatment work?” Understanding the mechanisms by which an intervention achieves its effect can have important…
Building a microkernel in Rust (Part 3): Concurrency, interrupts and preemption
5-Part Series: Part 0: Why build an OS from scratch? Part 1: Foundations Part 2: Communication Part 3 (this): Concurrency Part 4: Memory and beyond GitHub Repository: bahree/rust-microkernel — full…
How I Made the Typewriter Effect for the Search Section
Adding a little “extra” to a blog often makes it feel more alive. For my search page, I decided to implement a typewriter effect that cycles through my post titles as placeholder text in…
Using agents and Wine to move off Windows
How I used Claude Code to fix Linux desktop issues, get 'garbage'-rated Windows apps working in Wine, and what it means for software ecosystems
Build the RAG with Golang and Local LLM
RAG stands for Retrieval-Augmented Generation. It's a way to make AI assistants smarter by giving them access to specific information when answering questions. I've a good library of articles about…
Live Verify
Nobody cares about a thing in the tech world until it is successful, and I have something here that could be, but isn’t yet. Its a brand new idea and has an immense chasm to cross. Most of it is an…
llmuxer
Every LLM-backed tool I built started the same way: wire up an API client, handle key storage, paper over provider quirks. hn-jobs-evaluator had Gemini baked in. Next tool, same plumbing from…
It can't even _____
I just had two really different feelings at the same time. I am working on a web app, and I’d say I’m doing quite a bit to make the whole app and team function. I’m committing tons…
I wanted the best GitHub notifications in Slack, so I built it 😎
GitHub notifications are noisy where they should be quiet and silent where they should be loud. I built GitNotifier to prioritize human signal, reduce Slack channel spam, and let developers act on…
tanstack-router-ga4: Clean Google Analytics for TanStack Router/Start
A tiny, type-safe Google Analytics integration for TanStack Router and TanStack Start with automatic page views, typed GA4 helpers, and clean SSR-friendly setup.
A Thin API Layer for React Apps on Vercel
Not every React app needs Next.js. A single rewrite rule and Hono give you auth, rate limiting, and AI integration without changing your frontend stack.
The Secret Life of a Java String
String is the most-used type in any Java codebase, without much competition. And yet, most developers don’t know much about what actually happens under the hood.
Thermal bowing in Caesar 2
How to handle thermal bowing in Caesar 2 for cryogenic piping systems
Migrating from Sprockets to Propshaft: Is It Worth It?
Rails 8 ships with Propshaft as the default asset pipeline for new applications. If you just upgraded an existing app to Rails 8, nothing changed. Propshaft is opt-in for existing apps, full stop.…
Training a Small GPT-2 Model Under 20M Parameters
5 min guide to GPT-2 decoder intuition and training for practical tasks
I Built a 100% Private, On-Device AI Audio Stem Splitter (No Servers!)
How I implemented a browser-based AI tool to split songs into vocals, drums, and bass without uploading a single byte to any server.
A sufficiently detailed spec is code>
Specifications do not address the limitations of agentic coding
Howto Use IMask.js for Input Masking in JavaScript Forms
Learn how to implement input masking for cards, dates, currency, and more using IMask.js with real-world examples and best practices.
Update: oledump.py Version 0.0.85
Fixing newlines in some plugins. oledump_V0_0_85.zip (http)MD5: D972CE411B395EF77DBCE9A63059E8C1SHA256: 721C095F3126745A42720316A0B3AC1BCCB9DCDBBA9FF59F5FE1F70F8BA3A1AB
Writing a .NET Garbage Collector in C# - Part 9: Frozen segments and new allocation strategy
Using NativeAOT to write a .NET GC in C#. In this part, we look at what the GC must do to properly handle frozen segments, and we change the allocation strategy to make it more efficient.
Code with AI the Hard Way - 8 month update
Code with AI the Hard Way - 8 month update
The System: Three Repos, One Stack
filepath does the work. Gateproof proves it. Deja remembers. How three small projects became one development system.
Love Letter to the Claude Code Docs
Tips from the docs that changed how I work.
Audio Steganography with miniDSP
Hide secret messages inside audio files using three different techniques - LSB encoding, ultrasonic frequency-shift keying, and spectrogram text art.
Nominal Connect: Shipping Realtime Desktop Software With Rust, Bevy, and egui
A little different than my usual graphics-related posts, but I've written about how my company uses Bevy/egui/Rust in production. Go give it a read!…
SF Symbols in React Navigation, Nitro Powered Grids, and Howard Carter’s Archaeological Android Dig
6,900 Ways to Say ‘Goodbye’ to FontAwesome React Navigation has been slowly building up its Alpha—and I’m not talking about the team piling onto Satyajit Sahoo during some sort of alcohol-induced…
claude-statusline: a configurable status line for Claude Code
Claude Code lets you customize the status line at the bottom of your terminal. The default suggestion is a bash script, which works but gets clunky fast and difficult to maintain for more complex…
v9.27.0.1 double_drummer
Updated bouncing: Added bounce mode "Flip2D", which can be combined with other bounce modes. The Emergency Alert System will now trigger if you try to bounce a window that is too tall or wide. Bio:…
Pulling the Lever
Walk through a casino and you will see rows of slot machines. Someone sits down, pulls the lever, watches the reels spin, and waits for the result. Most of the time nothing happens. Occasionally a…
buffer-guardian.el – Automatically Save Emacs Buffers Without Manual Intervention (When Buffers Lose Focus, Regularly, or After Emacs is Idle)
The buffer-guardian package provides buffer-guardian-mode, a global mode that automatically saves buffers without requiring manual intervention. By default, buffer-guardian-mode saves file-visiting…
Build Everything
Claude is changing how I write software dramatically.My biggest worry, as someone who's been writing software for a long time, is that I will be so blinded by my hard earned intuition on complexity…
Look Bro, I Know How to Write Good Code
One challenge I have, doing what I do, is getting into "discussions" with enterprise engineers who like to throw the weight of their enterprise position at me. This happens a lot.…
How I fixed my WebStorm workflow on a MacBook Pro 16"
Only code visible by default. Tools appear one at a time, on demand, then disappear. No plugins are needed.
From Layerpad to Glide
The project did not start as a Kanata fork. It started as Layerpad: a standalone experiment in using touchpad activity as a modifier signal. The source lives at github.com/tompassarelli/glide. The…
Mandy hacking (March December Adventure day 1/2)
It's the first day of March December Adventure (really the second day, but I was busy yesterday), and my goal for this week is to learn more about how Jessica Tallon's Mandy prototype works so that…
PyPI stats 2026
Back in 2021 I did some analysis of PyPI package names and version strings in the post The rinds of the Cheese Shop menu. Five years on, let's see how things have changed. At the time of writing,…
Zaita
# The weirdest compiler bug Published At: 2021-01-26 Cummary: When the same code produces different results in a thread... Categories: [mingw64, compiler, C++, threading, IEEE-754] --- Th
Zaita
# The weirdest compiler bug Published At: 2021-01-26 Cummary: When the same code produces different results in a thread... Categories: [mingw64, compiler, C++, threading, IEEE-754] --- Th
Attend PyCon US for a day of Trailblazing Python Security!
PyCon US is coming to Long Beach, California in 2026. This year for the first time ever there is a day-long talk track devoted to the latest in Python security . This new talk track is titled “…
How a Background Task Ate 324 GB of Disk Space
A background task in Claude Code silently grew a single .output file to 324 GB in 16 minutes on my Mac. I went through the session logs to understand why. Turns out others have seen up to 740 GB from…
Celebrating Tony Hoare’s mark on computer science
Tony Hoare at the LASER summer school, September 2007 (All photographs in this article are by the author) Had they included just one of Tony Hoare’s major achievements, many scientific careers would…
Rewriting the Mamba-2 SSD Layer in Triton
Mamba has been a key figure in the topic of efficiency; the SSD layer is a linear recurrence that scales better than attention at long contexts. The recurrence itself is sequential, each hidden state…
The BlackDuck API: A Love Letter Written in 406 Errors
The first time I opened the BlackDuck API documentation, I thought building a vulnerability collector would take a couple weeks. Fetch some projects, grab their vulnerabilities, write them to a…
Python
Picked up learning Python again. I learn it daily with codecademy.