Coding and Dismantling Stuff

Don't thank me, it's what I do.

About the author

Russell is a .Net developer based in Lancashire in the UK.  His day job is as a C# developer for the UK's largest online white-goods retailer, DRL Limited.

His weekend job entails alternately demolishing and constructing various bits of his home, much to the distress of his fiance Kelly, 3-year-old daughter Amelie, and menagerie of pets.


  1. Fix dodgy keywords Google is scraping from my blog
  2. Complete migration of NHaml from Google Code to GitHub
  3. ReTelnet Mock Telnet Server à la Jetty
  4. Learn to use Git
  5. Complete beta release FHEMDotNet
  6. Publish FHEMDotNet on Google Code
  7. Learn NancyFX library
  8. Pull RussPAll/NHaml into NHaml/NHaml
  9. Open Source Blackberry Twitter app
  10. Other stuff

Shuffling content around

Hi all,

Just a quick post to advise that I'm going to start making more use of our FHEMDotNet space over on Google Code, which to begin with means moving reference-type blog content over to the wiki at, and making this blog more about the development process.  FHEM-specific content will be moved over to the FHEMWiki site, where it really belongs.

On the subject of the "development process", right now I've got five priorities,pretty much in the following order:


  1. Test-driven development - I want to adopt an extreme TDD approach on this project, to contrast with a much more relaxed testing strategy I use in my day job.
  2. MVC - To aid in making as much code testable as possible, this will be my first web project written in MVC
  3. Agile Methodology - I'm going to be adopting an agile methodology, so the aim is to release early and release often,
  4. Personal Use of the Software - I actually have a full FHT installation running my home heating, so obviously this software is catering for my own needs first!
  5. My First Open-Source Contribution - This will be my first open source project, so of course this will be the first time I offer my code up to public scrutiny.


The key features in the first few releases of the software have been confirmed, so I'm currently beavering away readying the first release to give minimal device visibility and configuration.  More news as and when it's available!

Categories: Blogging & Social
Permalink | Comments (0)

Mocking Frameworks - Rhino Mocks vs Moq

This discussion has been had many times, by people far more qualified to comment than myself, but nonetheless, here're my thoughts.

The Story So Far...

I've been programming with unit tests for probably a year now, and as I get opportunities to write code from scratch (I do a huge amount of bug fixes and configuration work it seems!) I'm finding I can get more and more value from them.

About 2 months ago I started playing with the Rhino Mocks mocking framework, so that I can test my code without dependencies slowing down my tests or making them brittle, and I was totally blown away at how much easier my tests became.  The ability to mock objects without having to actually create the mock, and the ease with which the mock objects can be configured, is pretty astonishing when you first see it!

However last week a colleague of mine turns out to have been playing with another well known mocking framework, Moq, so I figured it would be worth looking at the two side-by-side before I pick one for use in this project.


Permalink | Comments (0)

.Net FHEM Front-End - Ingredients

Now that I'm about to start developing the front end, as well as potential features, let's talk a little about the "ingredients" that I'm going to need.

In this post I'm going to talk about the development and integration platforms (.Net 3.5 and Hudson respectively), a little about development methodology, the tools I'll be using for testing (NUnit, Rhino Mocks / Moq), and a few other bits and pieces (Log4Net, NAnt, Fluent NHibernate, Subsonic, etc)


Categories: FHEM
Permalink | Comments (0)

.Net FHEM Front-End - Feature Brainstorm

Hi all,

I'm at the point where I feel my FHEM installation is sound - it works, it's logging the data I need it to log, I can remote into it and it looks like it's behaving, all in all it's a solid, friendly enough piece of software.  

So I want to shift focus to my planned .Net front end, and I'm sitting on the train each day, and on my lunch break each day, brainstorming - what can it do for me?  The following are my own thoughts, I'd love to get some more suggestions from anyone else with this kind of setup.


Categories: FHEM
Permalink | Comments (0)