TL;DR: Use GitHub Copilot CLI to batch-update old blog posts—fix broken links, modernize code examples, convert screenshots to text. Free tier gives you 50 files/month. 1Get-ChildItem *.md | Invoke-AITool -Prompt .\blog-maintenance.md Write a prompt doc with your rules, run the command, review the diffs, commit what …
Read MoreI just rebuilt dbatools.io in a day. The new site is developer-focused, modern, and actually useful. And I did it all with Claude Haiku, which until recently was completely useless to me. The Origin Story: Notepad++ When I first designed dbatools.io back in 2016, I based it on Notepad++. At the time, I had no idea they …
Read MoreTL;DR: I used Claude Code CLI to batch-update 100+ dbatools blog posts from 2016-2025. It fixed broken links, converted old PowerShell screenshots to text, updated deprecated commands, and even found new websites for people mentioned in old posts. 1Get-ChildItem *.md | Invoke-AITool -Prompt .\blog-refresh.md The AI …
Read MoreWhen someone asks about SQL Server architecture, the reflexive answer is usually 'High Availability,' as if it's a requirement rather than a choice. But after 20 years of managing SQL Server environments, I've found that HA often creates more problems than it solves, especially in certain types of organizations. The …
Read MoreTL;DR: In Windows, many AI CLI tools (Aider, Claude Code, Gemini, etc.) work unreliably with PowerShell's standard output capture. The solution is write to temp files instead of variables or add a -Raw flag for when you need the tool to actually commit changes instead of just previewing them or hanging forever. The …
Read MoreTLDR: dbatools is moving to Azure Trusted Signing, which means Microsoft backs our reputation and dbatools won't trigger as many antivirus false positives. Users upgrading from older signed versions will need -SkipPublisherCheck only once during the initial transition. PowerShell users with strict ExecutionPolicies …
Read MoreRecently, I wrote about a system I created that automatically classifies SharePoint documents, but only briefly touched on the most important part—the Azure Function that does all the heavy lifting. This post walks through the technical part of this document processing engine and demos how to build an Azure Function …
Read MoreGetting users to enter metadata is THE challenge when managing SharePoint document libraries. The moment we set up custom columns for proper document classification, we create a burden for our users who just want to upload files and move on. As an on-again/off-again SharePoint dev, I find metadata super useful but even …
Read MoreIf you read my post on asking tiny questions, you're already familiar with how structured output turns LLMs into pretty reliable data processors. We saw how requesting boolean responses or specific JSON formats made local LLMs actually useful for automation tasks. In this article, we're taking that same structured …
Read MoreFor the longest time, I thought AI would never apply to me as a developer. I don't excel at math, and AI is pretty much all math. But then I realized that I don't need to understand the math to use AI effectively - there's plenty of applied intelligence that's directly relevant to what I do every day with PowerShell. …
Read More