Skip to main content

Paired Programming

Have a day off today and just having a quick sit at the pc. Have been doing paired programming at work. Something I have been reading about in Extreme Programming Explained by Kent Beck.

I think it has been working out really well. We took it in turns to write code with one doing the the tests and the other satisfying the tests. Whilst this is undoubtedly good practice I find it strange that it has to get a special mention in programming circles in a way. When I was doing CAD and estimating work we would always sit together, work out the costs, draw it up together and talk about what we were doing ect. I think that was one of the fundamental reasons why I learnt so much about construction in a small space of time.

I definitely think the paired programming gave me a better understanding of how to approach Test Driven Development. Up to now I have approached unit testing the other way round by writing my code and then writing unit tests to cover it. I think that is the main reason why my unit tests did not have full code coverage. The other great thing about paired programming is the confidence it gives you in your code. You have written your tests, they pass and someone has looked over it at the same time. Gives you a very good feeling that nasty defects aren't going to bite you in the ass in 3 months time. I hate that question around the office "who wrote this crap piece of code" and all you can do is close your eyes and say "please don't make it me!"

Comments

Popular posts from this blog

My home office upgrade wish list.

My home office is almost due an upgrade. I have been holding off until my youngest daughter is out of her cot as then we can finally dispatch the enormous monstrosity of a cot out from the kids bedroom and the drawers that are in my office can be banished giving me better access to my wonderful whiteboard. My other improvements will be purchasing a new, larger monitor. I currently work from a single 22ich Samsung which just doesn't cut it anymore, I did have two at some point but I can't recall what I did with it. I really enjoy using a touch screen so I think I will go for one of these 27inch Hannspree models that I have used before. I put a lot of hours in at home and whilst I have a reasonable chair I still tend to suffer with some back problems, so my next port of call will be to get a Varidesk for home. It works an absolute treat at work and just lets me switch stuff up when I feel like it. they take a reasonable amount of desk space up but I tend to leave my desk fairly

Arduino ethernet shield

My ethernet shield arrived this morning from Hong Kong. Looking forward to making a little Arduino based Web server! The price for the shield was only ?5 on ebay including delivery :-) super cheap considering how much they cost a couple of years ago.

Specflow

After listening to .Net Rocks with Scott Millett this week I felt a renewed enthusiasm for trying out some BDD. I downloaded Specflow and got straight on with the screen cast they have on their website. The video acts as a good introduction into how to get up and running in Specflow. Interestingly it also gave me a better insight into how bowling works. I have never really thought about it. I normally just wang the balls down the lane until the game is over! Specflow introduces the idea of writing the specification first. It uses a specific language called Gherkin which comes from Ruby land. You will need NUnit installed as well. An example of it is:  [edit: NUnit is what I have used up to now but Specflow is compatible with other testing frameworks aswell. See the comments section below.] Feature : Passwords In order to have a strong password As a new user or existing user changing my password I need to check if my password is alphanumeric and is greater than 6 characters Scenario