TDD

Separating the Work a System Does From the Interface to that Work

The work a system does and the interface to that work should be separated from one another. This is a concept that evolves from the Single Responsibility Principle and from Test Driven Development. Whether this work be hosted in a console program, a GUI program, exposed as a service for outside systems to utilize, or any other possible configuration, follow SRP and keep the work separate from the hosting interface that exposes the work to a client (a client in this case can be a person or another software system).

Deep Agile 2008

Rjae, Rob, Kasia Baron, and I went to the Deep Agile 2008 conference run by New England Agile Bazaar. The event was held over the course of two days at MIT's Tang Hall and was truly outstanding. The structure of it, as noted at Agile Bazaar's website, was a one-on-one discussion, debate-style, between Robert Martin and James Coplien and it focused on the realities of Agile software development.

Setting Up NUnit and Only Using the Files You Really Need

On any given project, we typically have a ThirdParty directory where we house all our third-party assemblies that we reference. Inside of that directory we create directories representing each assembly or set of assemblies. For instance, we usually have a ThirdParty directory that contains a directory for each NUnit version we've used on the project at any given time. If we were to start a project today, we'd have a ThirdParty directory that contains an NUnit-2.4.2-net-2.0 directory (since that is the latest NUnit version).

A Very Quick Resharper 3.0 Review

I'm currently working on a project that contains C# as well as VB.NET. 95% of my time is spent with C#, fortunately, since that is my strength, but since I do have to foray into VB and since I'm in love with Resharper, I downloaded the official release of Resharper 3.0 today and tried it out. Along with the VB.NET support it now has, I was interested in seeing any other cool features they've added to it.

Database Independent Development, Part II

06/27/2007 - 4:00pm
06/27/2007 - 6:00pm
Etc/GMT-5
EMC - Westborough

Database Independent Development, Part II

06/20/2007 - 6:00pm
06/20/2007 - 8:00pm
Etc/GMT-5
Boston .NET Architecture Study Group

Database Independent Development, Part I

06/19/2007 - 4:30pm
06/19/2007 - 6:00pm
Etc/GMT-5
EMC - Westborough

Testing Legacy Code

06/06/2007 - 4:00pm
06/06/2007 - 6:00pm
Etc/GMT-5
EMC - Westborough
Reference
  • Refactoring to Patterns, by Joshua Kerievsky
  • Refactoring: Improving the Design of Existing Code, by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
  • Working Effectively with Legacy Code, by Michael Feathers

Testing the User Interface

05/30/2007 - 4:00pm
05/30/2007 - 6:00pm
Etc/GMT-5
EMC - Westborough

Introduction to Test Driven Development

05/23/2007 - 4:30pm
05/23/2007 - 6:00pm
Etc/GMT-5
EMC - Westborough

This the first of five sessions will introduce many principles and practices of test driven development. The primary outcome for this session is to reveal how to ensure full test coverage and understand the incredible value that provides any project.

Update: The C# solution from this session as well as a Java version have been attached below.

Syndicate content