Chocolatey logo - 11 years old

Choco upgrade, y’all

Chocolatey is a package manager for Windows, like the built-in package managers on Linux, and third-party ones on macOS like Homebrew and MacPorts. The idea is this: when you’re setting up a machine, you don’t want to have to think about which applications you need installed to get up and running. This could be a
-> Continue reading Choco upgrade, y’all

There's your problem

The denial-of-service attack is coming from inside the house

A short post this week. While I was helping some friends recently, we experienced a curious thing where as soon as an application was started up, it was immediately followed by a denial-of-service attack that played out in the most mundane way you can imagine. The application itself is an API that is replacing the
-> Continue reading The denial-of-service attack is coming from inside the house

A Windows error message

Read the error message

This post is brought to you — indirectly — from a boss I loved working for, on a project which almost killed me, at a company which I had to walk away from to restore my mental health. I learned a great many things from my boss (and yes, we are still friends). I learned
-> Continue reading Read the error message

An keyboard and mouse

Convert legacy password storage without aggravating your users

In a previous post I wrote about storing password hashes in a database, which raises the question of how to convert an existing legacy password storage system to use hashes (or even no passwords!) without annoying the people who use your system. Dial ‘S’ for Secret Let’s assume that you have inherited a database which stores passwords
-> Continue reading Convert legacy password storage without aggravating your users

The easy way to handle UTF-8 in a .NET application when dealing with SQL Server 2019

A short post this week. On a mailing list recently, someone noticed that a .NET application writing to SQL Server did not have the expected behaviour with UTF-8 collation and data types. To refresh our memories, UTF-8 is newly supported in SQL Server 2019, and provides potential savings of up to 50% when storing strings,
-> Continue reading The easy way to handle UTF-8 in a .NET application when dealing with SQL Server 2019

Post image

Performance as a feature, software developer edition

Relational database management systems (RDBMS) like SQL Server and Azure SQL Database are very good at managing normalized data. Efficient storage and retrieval of data is the name of the game, so performance is a feature. That’s why SQL Server (and other RDBMS products in the market) keep as much of the data in memory
-> Continue reading Performance as a feature, software developer edition

construction

The cloud is not just someone else’s computer

A year ago, I wrote in a post that cloud computing is just someone else’s data center. I was wrong. Whether we like it or not, the cloud is more than just a bunch of 1s and 0s hosted on someone’s hardware. The problem with my statement was the word “just”. I’ve presented several times on
-> Continue reading The cloud is not just someone else’s computer

Post image

Why You Need A Test Environment

In 2017, there’s no excuse not to have at least a testing environment, and preferably a development environment as well, in order to create and deploy code changes (software, database, you name it) outside of a production environment. If you’re making changes in a production environment without testing them first, you’re doing it wrong. Some
-> Continue reading Why You Need A Test Environment