A Better Cursor Pattern for SQL Server: Cursor Variables and @@CURSOR_ROWS
Replace the traditional WHILE @@FETCH_STATUS cursor loop with a cleaner pattern using cursor variables, STATIC cursors, and @@CURSOR_ROWS for more readable, less error-prone T-SQL.
Self-Hosting Forgejo on Windows Server Hyper-V Step-by-Step
A complete walkthrough for running Forgejo on Debian 13 inside a Windows Server Hyper-V VM, with Docker Compose, Let’s Encrypt TLS, GitHub repo mirroring, and automated backups to a Windows network share.
Setting Up Your Three-Layer Backup
This is Part 3 of a series. In Part 1, I argued that open source licenses protect your code but not the infrastructure around it. In Part 2, I surveyed the landscape of options for…
Where Should Your Code Live Besides GitHub?
This is Part 2 of a series. In Part 1, I made the case that open source licenses protect your code but not the infrastructure around it. GitHub, npm, and the platforms we depend on…
Your Code Is Open Source. Is It Yours?
Open source licenses protect your code’s freedom. But when the platforms that host, distribute, and discover that code are controlled by a handful of US corporations, how free is it really?
Schedule Jobs in Azure SQL Database with Azure Functions
You don’t get SQL Server Agent in Azure SQL Database. If you’ve been a DBA for any length of time, that sentence probably made you twitch. Agent is the workhorse that runs your index maintenance,…