Showing items from Blog

How to Use CTRL+D To Close A PowerShell Window

If you’re familiar with using CTRL+D to exit out of your shell and want the same functionality for your PowerShell, here’s how to do it.

Open your PowerShell profile (Documents\PowerShell\Microsoft.PowerShell_profile.ps1):

notepad $PROFILE

and add this line:

Set-PSReadLineKeyHandler -Key Ctrl+d -Function DeleteCharOrExit

That’s it. Now reload your profile (or open a new terminal):

Continue Reading

Fixing GitHub Copilot Agent Mode Hang in Visual Studio 2022

I was running into an issue with GitHub Copilot’s Agent Mode in Visual Studio 2022 where it would hang indefinitely after executing a command. This was particularly frustrating as it disrupted my workflow and made it difficult to use the tool effectively.

As it turns out, the issue is pretty straightforward to resolve. Apparently it tries to use the Powershell 7 terminal. In my installation, this was misconfigured and was pointing to some non-existent path. In my case, it was pointing to C:\Program Files\Microsoft\Azure Functions Core Tools\workers\powershell\7.4\zh-Hans\pwhs.exe, which does not exist on my system. You can check the path by opening the terminal window (CTRL +` or View->Terminal).

Continue Reading

The Buck Stops Here: Why Ownership Builds Better Engineering Teams

In any software engineering organization—whether a fast-moving startup or an enterprise-scale platform—leadership style doesn’t just shape the culture; it defines it. And when things go wrong (which they will), how leaders respond sets the tone for how teams grow, communicate, and deliver.

Over the years, I’ve seen two dramatically different approaches play out: one where leaders instinctively point fingers when things go off the rails, and one where leaders step up and say, “The buck stops here.” The difference between these styles is more than philosophy—it’s a deciding factor in whether your team thrives or erodes under pressure.

Continue Reading

Genius vs. Hubris in Leadership: Innovation with Humility

In software engineering leadership, one of the trickiest balances to strike is between bold innovation and grounded execution. The best leaders often have “genius” ideas—those that challenge assumptions, break with convention, and offer transformational value. But when those ideas become immune to feedback or revision, genius can tip dangerously into hubris.

Continue Reading

The Real-World Trade-Offs of Natural Language to SQL Systems

Natural language to SQL (NL2SQL) systems are one of the most compelling applications of language models—but also among the hardest to get right in production. Turning messy human questions into precise, performant SQL queries touches nearly every challenge in AI: ambiguity, domain context, schema evolution, and validation.

Here’s a breakdown of the core lessons learned from real-world implementations—and why building a robust NL2SQL stack requires more than just dropping an LLM behind an input box.

Continue Reading