Author Archives:

JavaScript Closures Explained

If you write any code in JavaScript then you’ve probably used closures, but do you actually understand what they are and how they work?  Taking the time to understand closures and how they’re implemented can add a deeper dimension to … Continue reading 

Posted in Uncategorized | Tagged , , | 23 Comments

Acronyms and Ubiquitous Language

Acronyms are often employed within organizations as a way to abbreviate frequently used phrases in an attempt to expedite communication.  Unfortunately, their use often does the exact opposite.  Many programming language style guides discourage the use of acronyms.  For instance, … Continue reading 

Posted in Uncategorized | Tagged , | 2 Comments

How To Produce Bug-Free Software

Many are resigned to the fact that all software is destined to contain some “bugs”, but did you know it’s possible (and arguably pretty easy) to always produce “bug-free” software?  In this article, I’ll explain how. Terms To begin, let’s … Continue reading 

Posted in Uncategorized | Tagged | 4 Comments

Dependency Management in .Net: install2

Inspired by Rob Reynolds’ awesome post on extending NuGet’s command line, I decided to create my own extension for facilitating application-level, build-time retrieval of external dependencies along with all transitive dependencies. I struggled a bit with what to call the … Continue reading 

Posted in Uncategorized | 8 Comments

Dependency Management in .Net: Get

[Update: This article refers to a tool which will no longer be maintained. Until such time as NuGet is updated to naively support these capabilities, consider using the plug-in described here.] In my last article, I demonstrated how my team … Continue reading 

Posted in Uncategorized | Tagged | 7 Comments

Dependency Management in .Net: Using NuGet without Visual Studio

In my last article, I discussed some of my previous experiences with dependency management solutions and set forth some primary objectives I believe a dependency management tool should facilitate. In this article, I’ll show how I’m currently leveraging NuGet’s command … Continue reading 

Posted in Uncategorized | Tagged | 6 Comments

Dependency Management in .Net

I started my career as a programmer developing on Unix platforms, primarily writing applications in ANSI C and C++.  Due to a number of factors, including the platform dependency of C/C++ libraries, the low-level nature of the language and the … Continue reading 

Posted in Uncategorized | Tagged | 18 Comments

Effective Tests: Acceptance Tests

In the last installment of our series, we discussed the topic of Context Obscurity along with strategies for avoiding the creation of obscure tests. As the final topic of this series, we’ll take an introductory look at the practice of … Continue reading 

Posted in Uncategorized | Tagged , | 1 Comment

Effective Tests: Avoiding Context Obscurity

In the last installment of our series, we looked at the Expected Object pattern as a way to reduce code duplication, eliminate the need to add test-specific equality concerns to production code and to aid in clarifying the intent of … Continue reading 

Posted in Uncategorized | Tagged | 4 Comments

Introducing the Expected Objects Library

Introduced in the Effective Test Series, the Expected Object pattern is a technique involving the encapsulation of test-specific logic within a specialized type designed to compare its configured state against that of another object. Use of the Expected Object pattern … Continue reading 

Posted in Uncategorized | Tagged , | 7 Comments