Getting Started With TDD in Your Existing Project

This post was written for the NCrunch blog. You can find the original here. Test-driven development is a technique to drive the development of your project. TDD enables you to verify your code, it provides confidence for refactoring, and it enables a cleaner architecture. But what if you already have an existing codebase that wasn’t developed with […]

Read More

How Long Should Unit Tests Take to Run?

This post was written for the NCrunch blog. You can find the original here. When you first start writing unit tests, all is well and the few tests run in a matter of seconds. After having written hundreds or thousands of tests, running them might take…long. Too long. But when is long too long? How […]

Read More

The Importance Of Tests For Newcomers

I’ve sung the praise of TDD/automated testing many times before, but recently encountered an angle I hadn’t considered yet: the importance of automated tests for onboarding. Automated tests have several benefits: if you’re practicing TDD, it generally drives your design in a good direction it provides a safety net for refactoring it can catch bugs […]

Read More

App.Config: Basics and Best Practices

Note: I originally wrote this for SubMain. You can find the original here. In one of my previous posts, I wrote about the .NET build configuration system. I mentioned the app.config file, but didn’t really dive into it. So let’s take a closer look at this file now.¬†When you create a (non-web) .NET Framework application […]

Read More

Declarative Programming In Depth

Editorial note: I originally wrote this for the NDepend blog. You can find the original here. Most people that start programming learn to program in an imperative way. Shortly after, they will probably learn a declarative language too. Many developers go a long way without knowing the difference. Many will probably never know. And they […]

Read More