Gavin Greig (ggreig) wrote,
Gavin Greig

One Day in History

As posted to One Day in History:

Today was dominated by work, where I'm a software developer. I work for Insights Learning & Development Ltd., an international training company based in Dundee that specialises in how people work together. I and my colleagues write software that supports the company's training programmes.

Today's achievement was migrating our mock objects (the crash test dummies of software testing) from the NMock 1.0 framework to the alternative Rhino Mocks. We started off using NMock as the "obvious" choice, but now that NMock 2.0 has a significantly different syntax we took that as an opportunity to look at what other frameworks were available.

NMock 2.0 is a definite improvement, looking more like English due to clever chaining of its methods, and it has useful functionality improvements over 1.0 as well. However, when we checked up on a couple of alternatives, we also found ourselves interested in TypeMock, a commercial framework, and Rhino Mocks, a free framework.

We chose Rhino Mocks in part because it has similar syntax and capabilities to NMock 2.0, but mainly because it has better support for refactoring. Refactoring is the process of gradually improving code whenever you touch it, and one common form of refactoring is to rename functions to be more meaningful.

Other mock object frameworks rely on storing function names as strings (text), which are not so easily found in amongst the code by refactoring tools that do the renaming. Rhino Mocks relies on actual calls to the functions, which can be more easily found and kept correct by refactoring tools.

As it's one of our goals to encourage refactoring and make it easy to do, this made Rhino Mocks the immediate favourite. So far we haven't found any killer functionality that would make any of the other options more attractive.

I came home in the usual way - a combination of a lift with a friend and co-worker as far as St. Andrews, and then a bus journey the rest of the way home - and sat down to watch a DVD and eat before returning to my computer to write this entry and carry on working on my out-of-hours project, which is a cut-down Windows Mobile version of our software.

It's nearly finished, which is just as well as it's due to be submitted for "Designed for Windows Mobile" logo testing next month and I'd like to get some of my evenings back! I think I've just cracked the last remaining significant problem, by moving some functionality into an event handler that is invoked later in the program's start-up process than the ones that I'd initially been trying to use.
Tags: history, livejournal, software development, work

  • 20 Years

    On the first of October, it was 20 years since I started work at Insights, and today I got my fourth block signifying a period of 5 years…

  • Open Live Writer

    When I first started blogging, I used LiveJournal’s own facilities to edit my posts, but for many years now, I’ve used Windows Live Writer instead…

  • It was 20 years ago today…

    …that the World Wide Web entered the public domain. I’m pretty sure I first used it later that year when I returned to university in Dundee (along…

  • Post a new comment


    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.