Using puzzles to find good developers

Posted by andy in : Agile, Software, Teams on May 31, 2007

As a follow up to my post on pair programming based interviews, I noticed this on a recent job advert:

In chess it is possible to place eight queens on a board so that no one queen can be taken by any other. Write a program to determine all such possible arrangements for all eight. I am not looking for a Chess Games Developer. I am looking for Java Developers who have the OOA and OOD skills to solve this problem….

Which one would you prefer (to receive if going for an interview, or to use to find a good candidate to work in your team)? A test that’s abstract and has nothing to do with the work involved, or one that that involves doing the job you are interviewing for?

I wonder if they have run this test on all of their existing staff to see if their is any useful correlation.

Add to del.icio.us , Digg this , 1 Comment »

Pair Interviewing

Posted by andy in : Agile, Teams on May 6, 2007

I noticed an interesting discussion on the IXP mailing list about pair programming with developers during an interview. I was surprised by the number of people who thought it was a bad idea.

I have done a lot interviewing for various companies and one of the best ways to find out the beliefs and values of a software developer is to look at their code. The best way to know what someone is like to work with is to work with them! This is why I really like pair programming interviews. It’s one of the best interview techniques I know.

Another nice feature of a pair-programming interview is the continual conversation you have with the candidate. It provides you with ample opportunities to ask sensible questions about the code you are writing. This gives the candidate a better understanding of why you are asking the question. There’s nothing worse than crazy interview questions that make no sense!

There are certain things you have to be aware of. You have to be very good at putting people at ease. You need to explain why you are running the interview like this. Some people get very nervous at an interview. You have to treat it as if you are pairing with a colleague. If people get stuck, you should help them out.

An interview is a two way process . The candidate also gets a much more realistic idea of what it would be like being in the team. They see what it’s like working with the team and experience the development environment first hand.

Add to del.icio.us , Digg this , No Comments »

New Look & Feel

Posted by andy in : news on May 1, 2007

I’ve been wanting to update the site for some time now. At long last I have managed to migrate everying to wordpress and hack out a new theme along the way!

Please let me know if there are any problems on your browser.

Add to del.icio.us , Digg this , 3 Comments »

Unified Theory of Testing

Posted by andy in : Humour on April 1, 2007

Writing build tools is a nightmare these days. As the recent post on mockobjects.com points out, there are just sooooo many different java test frameworks to choose form (Junit 3, Junit4, TestNG, EasyMock, JMock1, and JMock2…).

Thankfully there will soon be a solution at hand…. The post explains that commons.testing and commons.mocking will provide a common, framework-agnostic API for writing tests and using mock objects.

Developers will be able to write to a single API and then select a test framework and mock object library to execute the tests at runtime by annotating their tests with the commons.testing annotations, writing a few dozen lines of XML configuration.

Furthermore, commons.testing can run tests that are defined entirely by XML configuration files instead of complex Java code. This will enable IT departments to greatly reduce the cost of pair programming and test driven development by having lower-cost, non-technical staff author the test cases that specify what the developers must implement in Java.

I think this is a little simplistic. The commons team have missed a trick. It’s not just testing frameworks that vary. There’s also a plethora of development tools that need to support commons.testing before developers can start using it in anger. What we really need is a commons.plugin framework.

With this, a cool new open-source project would automatically work on all development tools (IDEA, Eclipse, Bamboo, Cruise Control, Ant, Maven…). Now we’re talking…

Add to del.icio.us , Digg this , No Comments »

Test Driven Development with JMock 2.0

Posted by andy in : Agile, Design, Software, Testing on March 27, 2007

Nat Pryce, Romilly Cocking and I have just run a session on Test Driven Development using the new (so new, it has only just been released) JMock 2.0 library at SPA2007.

We got a lot of positive feedback, so I thought I would share the slides and some example code that we developed for the session.

Add to del.icio.us , Digg this , No Comments »

Interesting experience report

Posted by andy in : Agile, Coaching, Learning, Teams, books on February 1, 2007

Jennitta Andrea has published a wonderful experience report in http://www.stickyminds.com/BetterSoftware called The Case of the Missing Fingerprint.

Well worth reading. Nice work.

Add to del.icio.us , Digg this , No Comments »

Amazing what you can buy on Ebay

Posted by andy in : Humour on December 21, 2006

I was searching for James Strachan’s blog to show a friend. Apparently, you can buy him on ebay.

Cool.

jamesstrachan2.JPG

Add to del.icio.us , Digg this , No Comments »

Defining acceptance test criteria

Posted by andy in : Agile, Testing on December 8, 2006

The best part of XPDay is talking to people about what they do. I managed to catch Joe Walnes and Dan North’s talk on Awesome Acceptance Testing.

For as long as I can remember, Chris Matts and Dan North have been saying A user story’s behaviour is simply its acceptance criteria. If the system fulfils all the acceptance criteria, it’s behaving correctly; otherwise, it isn’t.

What I had missed is their really nice acceptance criteria template.

Given some initial context,
When an event occurs,
then ensure some outcomes.

For example

Given Joe has a current account with a balance of £1 and an overdraft limit of £100,
When Joe withdraws £50.00,
then the balance will be £49.00.

This is so expressive and so wonderfully simple that anyone in the business can write them. Thanks to Joe for showing me this.

Add to del.icio.us , Digg this , 6 Comments »

Agile teams need sheep

Posted by andy in : Agile, Humour, Teams on December 6, 2006

The team I’m working width decided to organise their Christmas party and sent out the following email invite.

party-invite.png
This apparently innocent email triggered the following amusing sponsored links!
party-adverts.png

Add to del.icio.us , Digg this , No Comments »

Wonderful User Stories

Posted by andy in : Agile on December 4, 2006

I recently had the opportunity to help Rachel Davies run a class on User Stories (I was more the unglamorous assistant). The class produced some wonderful examples that we wanted to share. Rachel has blogged them. These are some of my favourites.

As a boy I want a big garden that can house a kennel so that my mum can buy me a dog.

As a teenage daughter, I would like my own bathroom so I don’t have to share with my younger brother (Kevin).

As Grandma, I want big windows to watch what is happening in the neighbourhood so that I can gossip.

As a dog, I want to live close to the park so I can go for walks and sticks to play with would be nice.

Fantastic.

Add to del.icio.us , Digg this , No Comments »

Site Map | design by twothirty