Disabling language changes in Visual Studio

On a recent project I used a workstation given to me by the client. It was typical “big enterprise” setup with support for multiple languages. I discovered there’s a keyboard shortcut “Ctrl+Space” for changing your language that I would keep accidentally activating in Visual Studio. This post explains how to disable that. Go to the…
Read More

Dogfooding

As soon as your software project has a useful feature or two, it’s time to start eating your own dogfood. The usual advice is to use your own software in order to get early feedback, but there’s another major benefit to dogfooding that usually goes unmentioned: To dogfood your software, you have to treat its…
Read More

Leaky Abstractions Rot Code

Over the past month, we’ve seen the inception and early development of my ongoing side project, the Fixie test framework. As of last week, it was far enough along to run all of its own tests. Although I’m pleased with the progress so far, last week’s success introduced an exceptionally leaky abstraction. Today, we’ll see…
Read More

Bootstrapping

Last week, I covered the first several commits to Fixie, resulting in a reliable build script. This week, we’ll see how I’ve “bootstrapped” Fixie to the point where it can run all of its own tests. Bootstrapping comes from an old saying. To “pull oneself up by one’s bootstraps”, though literally absurd, is to improve…
Read More

MVC Custom Unobtrusive Validator Attribute (Date Range Validation)

There are some useful attributes in MVC that help render dynamic unobtrusive validation to the browser.   The more you can accomplish by simply adding an attribute to a property on a view model the less duplication of JavaScript you have to manage.  Out of the “MVC” box validation for date ranges would require custom JavaScript. …
Read More

Socks, *then* Shoes

A couple weeks back, I announced the start of development on Fixie, a .NET test framework. Last week, I covered some early proof-of-concept work performed with throw-away code. This week, we’ll take a close look at the first several small commits to Fixie on GitHub. The commits we cover today are all about preparing the…
Read More

Creating Windows Installers with the WiX Toolset – Summary

This article is part of a series exploring how to create installers for Windows software.  Here’s the complete contents of the series. Part 1 – What Kinds of Software Projects Benefit From an Installer? Part 2 – An Overview Of Windows Installer and its Features Part 3 – Tooling Options for Building Installers Part 4…
Read More

Creating Windows Installers with the WiX Toolset Part 8

This article is part of a series exploring how to create installers for Windows software.  Here’s the complete contents of the series. Part 1 – What Kinds of Software Projects Benefit From an Installer? Part 2 – An Overview Of Windows Installer and its Features Part 3 – Tooling Options for Building Installers Part 4…
Read More

Creating Windows Installers with the WiX Toolset Part 7

This article is part of a series exploring how to create installers for Windows software.  Here’s the complete contents of the series. Part 1 – What Kinds of Software Projects Benefit From an Installer? Part 2 – An Overview Of Windows Installer and its Features Part 3 – Tooling Options for Building Installers Part 4…
Read More

Strongly Typed Whiteboarding

Last week, I announced the start of a new open source project, a test framework named Fixie. This week, we’ll see how to mitigate technical risks during the early days of such a project. In short, you do the hard work first. When starting a new project, it’s easy to spend all of your time…
Read More