
Recently, I dealt with a strange bug around PDF downloads. The functionality was simple: The user fills out a form, clicks a button, and a PDF opens in a new browser tab. This was working as expected for every browser and every device, except Safari on iOS. Some digging led me to realize that Safari…
Read more…

Imagine being able to ask your database questions in plain English and getting visualizations quickly. Traditional SQL analysis requires expertise in SQL query language and separate visualization tools. However, by combining MSSQL and Charting MCP servers in VS Code with natural language, we can enable data analysis for both technical and non-technical users. This powerful…
Read more…

This post will walk through the steps needed to connect a Google Workspace account with a Microsoft Entra External ID tenant. The phrasing and direction can be confusing from tutorial-to-tutorial, so to put it plainly, this post is for you if: This post assumes you have an Entra tenant, a Google Workspace account, access to…
Read more…

Serializing your custom objects in C# is quite simple, and there are several powerful tools at your disposal for crafting the exact XML object you need. Let’s take a look at a few of the ways we can harness the power of C#’s built-in XmlSerializer. Setting Up Your Classes Let’s see how to set up…
Read more…

SAS stands for Shared Access Signature. A SAS style link is a URL that contains parameters needed by the API call as well as a signature that verifies the parameters in the link are correct and haven’t been tampered with. These links can be made to expire, and the key used to create the signature…
Read more…

You can’t talk about software right now without talking about AI or, more accurately, LLMs. These are helping us write software faster. But can they help us be much faster? The common way they help us is by autocompleting code for us. I start writing a method called upsertUser, and then the AI will automatically…
Read more…

In my previous post, I covered my quest to build a shareable component library, using Vue 3. In this post, I will cover taking the current library and turning it into a Monorepo that can handle multiple libraries with Lerna. Prep the Repo To this: Note: You have a package.json file in the root folder…
Read more…

What follows is my quest to build a sharable component library using Vue 3. A project came along that required a way to share components between two Vue projects, but that was also supposed to lay the foundation for using some of the same components across more projects in the future. As this is a…
Read more…

There is a wonderful template in Visual Studio to create a FullStack application that serves Vue 3 as the frontend and .NET core as the backend. Microsoft even provides a tutorial on it. But as usual, once you want to customize, things get complicated. I’ve spent hours trying to understand why I could not change…
Read more…

Many people I’ve talked to know how to find a dummy credit card number for testing. And if you don’t, here’s a link: https://docs.stripe.com/testing Fewer people that I’ve talked to know where to find dummy email addresses, and this info was more difficult for me to find online. If you’re working in a legacy codebase…
Read more…