Category: Programming
-
Back Up, Update, and Recover a Mailcow Server
Commands and a recovery plan for backing up Mailcow, updating it safely, and restoring after server loss.
-
Decode Before You Sanitise: The XSS Fix That Deletes User Text
A sanitiser that decodes HTML first is a common XSS fix. It also deletes real characters that users typed. Here is the failure, the measured results, and the…
-
What a Boundary Is in Amiga Reverse Engineering
A boundary is the repeatable instant where an emulator and a model can be compared. This post defines the four boundary types, shows why a debugger stop can…
-
Reverse Engineering an Amiga Application with WinUAE and Ghidra
A practical, repeatable workflow for inspecting an Amiga application with WinUAE and Ghidra, including checkpoints, scripted input, memory captures and low-level analysis.
-
Reliable Playwright Testing in AI-Assisted Development
A practical Playwright workflow for AI-assisted development: launch the right app, wait for real UI state, verify selectors, control async requests, and test without polluting shared data.
-
How a SHA-256 Manifest Makes a Deployment Safer
PowerShell examples for creating a SHA-256 manifest, verifying staged files, and switching IIS only after the release passes.
-
Getting F5 Working in VS Code with a Legacy ASP.NET MVC App
A practical Windows setup for building a .NET Framework MVC app with MSBuild, starting IIS Express from VS Code, opening the site in a browser, and attaching the…
-
From Amiga Code to Browser: Rebuilding Conqueror’s Opening Screen
We recovered Conqueror’s original title art, intro audio sequences, language selector, menu graphics, bitmap font and tank image, then connected them to a browser test scene. Here is…
-
When Data Exports Become a Treasure Hunt
Why important financial tools make simple date ranges feel impossible—and how export, security and account-recovery workflows can be designed with less friction.
-
GPT-5.6 Luna vs GPT-6 Luna: When the Cheaper Model Feels More Expensive
A practical comparison of GPT-5.6 Luna and GPT-6 Luna: why a lower per-token price can still mean higher credit usage and why newer does not always feel better.