Monthly Archives: May 2010

Health, Accountability and Technology

Anyone that’s been following me on twitter (or for the few of you left, facebook) for the last month has probably seen my status updates talking about jogging so many miles, etc etc. Some of you are probably annoyed by … Continue reading 

Posted in Community, Product Reviews, Tools and Vendors | 5 Comments

Violations Of The “Tell, Don’t Ask” and “Don’t Repeat Yourself” Principles?

In the last few years, I’ve written a lot of code that looks like this: 1: public class IsThisATellDontAskViolation 2: { 3: public void DoBadThings() 4: { 5: if (something.CanHandle(anotherThing)) 6: { 7: var response = something.GetThatFromIt(anotherThing); 8: DoSomethingWithTheResponse(response); 9: … Continue reading 

Posted in .NET, Analysis and Design, AntiPatterns, C#, Principles and Patterns | 25 Comments

The Dangers Of AutoMocking Containers

Louis Salin commented on my original post about the Ninject.RhinoMocks automocking container, and brought up a very good point. Here is his comment, reproduced in full: I’ve heard (or read…) that automocking is equivalent to taking weight loss pills while … Continue reading 

Posted in .NET, Analysis and Design, AntiPatterns, AutoMocking, C#, Craftsmanship, Quality | 5 Comments

Simplify Your Unit Tests With Automocking: Part 2 – Establishing Context

Following my helper methods in the base context specification class that we use, I decided to simplify the entire process of setting the context in which the tests are running. Specifically, I wanted to get rid of the constant declaration … Continue reading 

Posted in .NET, AutoMocking, Behavior Driven Development, C#, Ninject, Refactoring, RhinoMocks, Unit Testing | 3 Comments

Simplify Your Unit Tests With Auto Mocking: Part 1 – Helper Methods

After working on the Ninject.RhinoMocks automocking container, I started using it in my current project right away and it wasn’t long before I started simplifying the usage of it with helper methods in my base test class.   From “MockingKernel.Get<T>()” … Continue reading 

Posted in .NET, AutoMocking, Behavior Driven Development, C#, Ninject, Refactoring, RhinoMocks, Unit Testing | 8 Comments

Albacore: Should We Continue To Support Ruby v1.8.6?

Ruby 1.8.6 seems to be an outdated version at this point… but I can’t find any official information on the life cycle and support plans for this version. I’d like to drop support for Ruby 1.8.6 from albacore, but I’m … Continue reading 

Posted in Albacore, Ruby | 3 Comments

Ninject.RhinoMocks: Auto Mocking Container For .NET 3.5 and Compact Framework 3.5

Earlier today, I decided I was tired of calling RhinoMocks directly. I love RhinoMocks. It’s a great tool and I don’t want to write tests without it (or another mocking framework like Moq or whatever…). But I’m tired of all … Continue reading 

Posted in .NET, Behavior Driven Development, Brownfield, C#, Compact Framework, Ninject, RhinoMocks, Unit Testing | 4 Comments

Book Review: Web Design For Developers

I recently finished reading Web Design For Developers: A Programmer’s Guide to Design Tools and Techniques and while I would like to have seen a few more specific details in a few places, the book overall does a great job … Continue reading 

Posted in Books Reviews | 1 Comment

Managing Bug Fixes Across Multiple Releases With Git Cherry-Pick

One of the problems I’ve faced in my software development career is managing bug fixes across multiple releases. If there are multiple versions of the software in development, test, production, out at client sites and deployed to internal servers, it … Continue reading 

Posted in Git, Source Control, Workflow | 3 Comments

Class Definitions: Binding Contracts And Agreements To Get Things Done

I’ve been reading the Metaprogramming Ruby book from Pragmatic Press off and on for a few months now. It’s really helped me understand a lot about how Ruby works and how I should go about using the language to do … Continue reading 

Posted in .NET, C#, Ruby | 2 Comments