The Art of Giving and Receiving Code Reviews (Gracefully)

Monday, June 25, 2018

The research on code reviews is pretty clear: they reduce code defects at an incredible rate, typically around 80% to 90%1. Harder to measure, but clearly valuable, are the learning opportunities of reading others’ code and having others read your code, the enforcement of readable code, and the maintenance of code standards and consistent architectural… Full post

Using TransactionScope in .Net – a pattern for integration testing

Wednesday, August 3, 2016

Integration testing is a valuable check on methods that talk to a database, and a good way to check that stored procedures or sql queries are behaving as expected. I often see one of 2 mistakes with integration tests. The first is reliance on live data that is liable to change. This is easy to… Full post

Animating ticks and crosses with SVG

Friday, April 1, 2016

Firstly, I love this article on animating SVGs because it really de-mystified them for me: I wanted to add a really simple animation effect to a quiz app I wrote for the Labour Party (see: ). A little bit of animation goes a long way in making something more visually interesting and therefore engaging, so I… Full post

4 Ways to Speed Up Your Angular App

Monday, November 30, 2015

There are two challenges to managing performance for Angular websites – the time spent performing intensive logic in the client, and the time spent actually rendering content. When writing an app recently that involved displaying a lot of constantly changing data, I found a few quick wins. 1. Use ‘track by’. The ng-repeat directive is… Full post

Should you use Typescript for your next project?

Monday, October 5, 2015

TLDR; yes. As a C# developer, I instantly loved Typescript for its features that make object oriented programming easy. I also love that it supports a lambda syntax for functional programming (which will actually be vanilla Javascript in ECMAScript 6.) But after developing in it for a few months now I thought it was also worth pointing out the other… Full post

Dynamically generated robots.txt and sitemap.xml files in ASP.NET

Wednesday, September 17, 2014

A robots.txt file and a sitemap are important additions to a site from an SEO point of view. You can of course just serve static files but it’s easy to imagine cases in which you’d want the content of these to be dynamically generated: 1. You are regularly adding/changing site content. Certainly on, we’re adding new… Full post

The 2 most useful things I learnt at JQuery UK, 2014

Monday, June 30, 2014

It’s been over a month since JQuery UK but I’m using things I learnt there all the time. Here are the two most useful techniques I took away from it. 1. Event delegation. Instead of attaching an event handler to a specific element on the page, letting the event bubble up and handling it on a parent element, usually… Full post

Responsive circles with CSS

Wednesday, April 16, 2014

We recently released a dashboard for the Hire Space venues’ CMS and the layout involves lots of circular badges with numbers in. I’m no CSS whizz, but I did have fun styling this and it turns out that creating fully responsive circular badges with nothing but CSS is easy. Here are the classes to create… Full post

Why I love my standing desk

Wednesday, February 12, 2014

I am such a convert to standing desks that it’s hard not to proselytise! If I had to sum up why they’re so great I’d say this: you try it for the health benefits and you get hooked on the psychological benefits. Although academic work meant a fair amount of sitting at a desk, it… Full post