The Agile Visitor

When working with object structures, you may at times encounter the need to perform some operation across all the elements within the structure.  For instance, given a compound piece of machinery, you may want to perform some operation which requires … Continue reading 

Posted in Uncategorized | Tagged | 4 Comments

Double Dispatch is a Code Smell

If you’re using Double Dispatch in your code, this may be a symptom of an underlying design issue which may impact the maintainability of your application.  Due to the fact that Double Dispatch is at times confused with a form … Continue reading 

Posted in Uncategorized | Tagged | 13 Comments

Getting Started With Cygwin

With the increasing popularity of the Git version control system, many .Net developers are being introduced for the first time to Unix-like tools for Windows by way of two popular Git client platforms: msysgit and Cygwin. The more substantial of … Continue reading 

Posted in Uncategorized | Tagged | 6 Comments

¡Hola, Mundo!

I’m excited and honored to have been invited to join Los Techies! A bit about me – I’m a software developer currently working in the beautiful Nashville Tennessee area and aspire toward software craftsmanship.  My professional career has been a … Continue reading 

Posted in Uncategorized | Leave a comment

Git: Anonymous Access Under Windows

The Git version control system provides a simple protocol for sharing Git repositories anonymously over a TCP port. This can be useful for providing read-only access to a repository, or for facilitating pull-based collaboration within teams. The following is a … Continue reading 

Posted in Uncategorized | Tagged | Leave a comment

Resharper Naming Style for Machine.Specifications

If you’re doing BDD-style specifications and using underscores within your variable names, the default Resharper settings will warn you about violating the naming style rules as shown below: Fortunately, Machine.Specifications (MSpec) extends Resharper to allow for the creation of custom … Continue reading 

Posted in Uncategorized | Tagged , | 8 Comments

Embracing Dependency Injection

Recently, a fairly notable icon within the software development community posted some thoughts on Twitter which I found surprising. The individual stated: “What’s the right number of dependencies to inject? A few. In a very large system, perhaps a few … Continue reading 

Posted in Uncategorized | Tagged | 2 Comments

The Arrow Anti-pattern

The Arrow Ani-pattern is a name given to the resulting structure produced by using excessive nested conditional operators. The following pseudo-code demonstrates why the name is apt: if( … ) { if( … ) { if( … ) { if( … Continue reading 

Posted in Uncategorized | Tagged | 1 Comment

Composite Applications with NHibernate

Composite application architecture is an approach to software development which seeks to produce applications which can be constructed from pre-built components, thus allowing a single platform to be more easily customized for end users. The pre-built components, or modules, comprising … Continue reading 

Posted in Uncategorized | Tagged , | 2 Comments

Unity: The Static Factory Extension

The Unity Inversion of Control container comes with an extension called the StaticFactoryExtension. The purpose of this extension is to add the ability to register types within the container while deferring the instantiation of the type to a factory method. … Continue reading 

Posted in Uncategorized | Tagged | 4 Comments