Agile Yorkshire @ The Pub – Exploratory Testing, May 13th

If I can get a pass out from helping to look after the burgeoning Nelson family for an evening, I’ll be going along to this Agile Yorkshire session next Wednesday. May 13th – Ralph Williams: Exploratory Testing Details In this session, Ralph will provide an overview of some techniques that bring Agility into the world of testing. (The world of testing is a strange place: regarded by most people as a nice place to visit but you wouldn’t want to live there, it is an unmapped wilderness where the waterfall methodology still roams unfettered.) ...

7 May 2009

Isla Grace Nelson

It gives me the utmost pleasure to announce the birth of Miss Isla Grace Nelson. Following a ludicrously speedy labour, Isla entered the world in an ambulance on the eastbound A64 near Bilbrough services on Tuesday 28th April at 18:09 local time (see this time in your time zone). Her birth mass was 3.750 kilograms (8 pounds 4 ounces), and length was 50 centimetres (20 inches). ...

4 May 2009

Alt.Net UK In The North

I spent much of this weekend over in Bradford, talking shop with the good folks at the Alt.Net UK ‘in the North’ conference. I had a great time, learned much, and am grateful to Richard Fennell of Black Marble and the other organisers and sponsors for making the event possible. This was the first Open Spaces event I’ve attended, and I was pleasantly surprised at how orderly and productive the sessions turned out to be. Unlike conventional sales-pitch conferences of the MSDN roadshow variety, this was more of an open forum, with an expectation that all of the relatively small number (25ish?) of participants would, well, participate! ...

19 April 2009

Seeking Kindred Spirits

I’m coming round to the realization that my hugely enjoyable first contract at Ventura last summer might have been something of an anomaly. That project was decidedly agile, test-driven, and used a bunch of modern technologies including Monorail, ExtJS, Subversion, NUnit and NHibernate. The requirements were well-defined, and the team was highly effective, with a pragmatic project management team who kept the development team free from bureaucratic processes, leaving us able to get on with delivering some cracking software in double-quick time. ...

12 April 2009

Failed MCP Exam 70-553 :(

My current primary client has an annoying habit of closing for random days and half-days, including last Thursday afternoon. I decided to try to make the most of this time off, by taking Microsoft exam 70-553, which has the snappy title “UPGRADE: MCSD Microsoft .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft .NET Framework: Part 1”. I’ve already passed the second part of the upgrade process (70-554), so passing this exam would give me no fewer than four new certifications, including the prestigious MCPD Enterprise Application Developer. ...

12 April 2009

ASP.NET Just Became a Legacy Platform

One of the least surprising but more significant announcements to come out of Mix ‘09 last week was the general availability of ASP.NET MVC 1.0. The development process for this framework has been very transparent, with no fewer than eight previews, betas and release candidates made available over the past year or so. Microsoft are being careful to tout ASP.NET MVC as being “an alternative, not a replacement, for ASP.NET Web Forms”, but just look at their list of some of its benefits: ...

22 March 2009

Zero Interest Bug Arrives

So, base rates are now down to 1.0%, and the Zero Interest Bug is not just conjecture. From The Times: “About 1,500 customers who took out a tracker mortgages pegged at 1.01 points below the base rate with Cheltenham & Gloucester (C&G), owned by Lloyds Banking Group, will be paying no interest at all on their home loans from next month. It is the first time that a mortgage lender has been forced to reduce the interest on their home loans to zero. ...

5 February 2009

NDepend

OK, dear readers, today I’d like to talk about tools. Software development isn’t really so different from traditional skilled crafts in that it is important to have an understanding of the tools available to help you create a quality products in the least amount of time possible. For .NET developers, the Visual Studio IDE is usually just the starting point, and most of us will come to rely on some of the tools listed in Scott Hanselman’s famous tools list. Personally, I can’t imagine coding without first installing Refactor Pro, editing text files in anything other than TextPad, or working on a machine that doesn’t have Snag It installed. ...

4 February 2009

.NET Coding Standards

Sometimes, when you join a new team as a .NET developer, the team lead proudly points you in the direction of a Word document or wiki page detailing the team’s house coding standards. In my experience, these documents are invariably: Incomplete. Subjective. Not enforced. Largely copied from the interweb. Obsessed with the trivial (e.g. whitespace) while failing to mention the genuinely useful (e.g. boxing/unboxing, avoiding use of deprecated classes, Dispose pattern, etc). I know this because I’ve been involved in creating such documents in the past 🙂 ...

23 January 2009

SQL Server Point-in-Time Restore

One of the multiple hats that I’m currently wearing for a client is that of SQL Server DBA. In this guise, I have recently fielded a couple of email queries from users concerned about the data recovery options available to them, should application data be inadvertently deleted: “What kind of database backup and restore mechanism is in place for [application]? If someone deletes any data from [application] front end is it possible to restore it? Generally the way to recover data would be to restore the database from a database backup file, however this would restore all data held in the backup and would overwrite any changes made since the time of the backup.” ...

23 January 2009

On 64-bit TFS, Virtualization, and Conchango SCRUM

Earlier this week I picked up a hire car and headed over to deepest Cheshire to install an instance of Team Foundation Server 2008 for a client. Before setting off, I tried to make sure that all the prerequisites were in place – i.e. that there was a suitably-specced server available for use, which was connected to the domain, that all the necessary service accounts were created, and firewall ports opened, etc. ...

23 January 2009

Zero Interest Bug

I started my career in professional software development a decade or so ago by testing and fixing banking code that had fallen victim to the millennium bug. Could the prospect of zero percent interest rates create a similar boom in demand for software developers? From Contractor UK: Interest rates have plummeted from 5% to 2% since early October and are heading lower. Some analysts say 0% is not out of the question. ...

19 December 2008

MSB3247 – Dependent Assembly Conflicts

Earlier today a dev came over to ask me about a compiler warning he was getting when building a .NET solution: MSB3247: Found conflicts between different versions of the same dependent assembly. This is basically telling you that one project or dependency in your solution is referencing one version of an assembly, whilst another project or dependency is trying to reference a different version of the same assembly. Unhelpfully, the message and build output don’t tell you which dependent assembly is causing the problem! ...

4 December 2008

Performance of Loops on Collections

Interesting article from Patrick Smacchia (the NDepend guy) in which he runs some benchmarks on the cost of looping in different ways over different constructs and comes to the conclusion that: “looping on array using for is 5 times cheaper than looping on List using foreach (which I believe, is what we all do)” Well worth a read, although I suspect that in my solutions the bottlenecks will remain the out-of-process calls, i.e. database access and web service calls. Still, a 5x gain is not to be sniffed at. ...

28 November 2008

12 Reasons Why I Love Unit Tests

On my continuing journey through this thrilling world of professional software development, I frequently encounter teams who hold no truck with this crazy new-fangled concept of unit testing. Heck, truth be told, I sometimes come across teams who don’t use source control, but that’s by the bye. In these situations, I try my best to lead by example, continuing to practise TDD on any new code that I cut, and insisting on covering with unit tests any pre-existing code which I have to modify. Sooner or later, this prompts someone to ask why I am doing this (often insinuating that I am wasting my time, and by implication the client’s money). At that point, flustered, I invariably struggle to remember or adequately articulate the many and various ways in which unit testing makes me a better developer. So, consider this blog post a personal aide-mémoire to help me the next time this occurs (as well as being a homage to Jake Shillingford’s second-best song). ...

11 November 2008