The 12 Books I Most Enjoyed Reading in 2020

So that, then, was 2020. Good riddance. One might imagine that the enforced downtime offered by the pandemic lockdowns would have afforded me the opportunity to read many more books than I did in 2019. But a displeasing proportion of my evenings in 2020 were spent relentlessly doomscrolling Twitter, eager for the latest morsels of information about the pandemic, US election or (sigh) Brexit. Besides, most of my “reading” in 2019 was actually achieved by listening to Audible while commuting or at the gym, two activities which barely featured in my life this year. ...

18 December 2020

Temperature Blanket – A Rare Opportunity for My Coding to Assist Jocelyn's Crafting

As the resident geek in our family, it won’t surprise you to hear that I am occasionally approached by Jocelyn and our kids to provide tech support. Sadly, most of these queries are invariably of the “how do I print from my phone” or “the Sky box stopped working” ilk, and rarely trouble my software skills. So it came as a pleasant surprise when I recently encountered a genuine reason to use .NET, APIs and Docker in support of one of Jocelyn’s craft projects. ...

16 February 2020

How to Install RabbitMQ Server in Docker on a Synology NAS

One of the game-changing features of Synology‘s NAS (Network-Attached Storage) devices is their ability to run Docker, the industry-standard containerization technology. This opens up the possibility of running all kinds of applications on the NAS, turning them into home servers with boundless possibilities. One of things I wanted to run on my own Synology NAS is RabbitMQ, the popular open-source message broker. I intend to use this as the heart of a distributed home climate measuring project, with a bunch of low-cost Raspberry Pi devices sending regular sensor readings to a database, or directly to a real-time web application. ...

25 January 2020

The 20 Books I Most Enjoyed Reading in 2019

Near the end of 2018, I stumbled upon a thread of tweets by First Minister of Scotland Nicola Sturgeon in which she shared some of the many books that she had enjoyed during that year. I was both amazed and ashamed that a leader of a nation could consume so much literature whilst I, a mere sellsword codemonkey, barely got through a book every month (or two). It wasn’t that I didn’t enjoy reading – I have always loved reading (and buying) books – it was just that I had somehow convinced myself that I didn’t have the time to read. I realised that this simply wasn’t true, that I could easily make time to read if I so desired, and vowed to consume more books during 2019. ...

5 January 2020

Scotland With A Son – Into The Highlands With My 10 Year Old

Day One – Saturday 26th May 2018 Twenty years after bagging my first Munro – the dreary Meall a’ Chrasgaidh – and somehow developing an affinity for the Great Scottish Outdoors, I found myself heading northwards once again. Not this time in the company of my university friends, but instead with a ten-year-old boy in tow, namely my eldest Son, Benjamin. It was half-term holiday, he had just finished SATs, and I was hoping to prise him away from screens for a few days and to pass on some of my latent enthusiasm for the Highlands. ...

1 June 2018

DDDNorth 2014 Review

I had no excuse for not attending DDDNorth this year, as it was held at Leeds University, a relatively short drive from home. Not that I’d be looking for an excuse – these free events are always superbly organised and provide a valuable opportunity to see sessions from a wide range of speakers without having to take time off work. It’s no wonder the tickets are always snapped up so quickly. ...

22 October 2014

Back To Basics: On The Use And Abuse Of The Humble Boolean

“We who cut mere stones must always be envisioning cathedrals” — Stonecutter’s creed Consider for a moment, if you will, the humble Boolean. Taking only two possible values, it is the most basic of all the data types we programmers use, and its existence is fundamental to all the code we write. At the end of the day, when all is said and done, everything we do is just a big bunch of ones and zeroes. ...

1 July 2014

Star Of The Week

As a lowly sellsword amongst the ensemble cast that make up the incestuous York/Leeds IT scene, I am not usually one to be influenced by the promise of titles and honours. Time was, long ago, in my first graduate job, that I yearned for a promotion from “Solution Developer” to “Development Specialist”. Now I give little consideration to what I’m called, and sell my services on the basis of what I can do, and the value I can bring to a project and an organisation. ...

8 May 2014

Friday Retrospective: My First Printer

My first printer was a Star LC-20 nine pin dot matrix that I received as a Christmas present when I was 15 years old. That’s the kind of nerdy teenager I was, folks. All yuletide long our home rang out with the deafening noise made by those pins rapidly and repeatedly punching through a flimsy ink-soaked ribbon. Incidentally, Radio 4 are forever running features about the ongoing decline in audible birdsong in the English countryside. Personally, I think it’s a travesty that a whole generation of kids will grow up unfamiliar with the nerve-shattering noise of a built-to-last dot matrix, the inimitable caterwauling of a 33.6 kbps modem connecting to a dial-up BBS, or the satisfying clunk as a 3.5 inch floppy is gleefully accepted by a disk drive. Moving to an SSD may have provided an incredible boost to my development productivity, but there’s a part of me that misses hearing the faint humming and scratching sounds of traditional hard disk heads moving across a highly-polished platter. But I digress… ...

25 April 2014

One Reason Why NCrunch Is Worth The Cost

I have been merrilly using NCrunch – an “automated concurrent testing tool for Visual Studio” – for almost three years now. I ponied up for a paid license when it made the transition from beta to RTM, and I recently shelled out again for an upgrade to version 2. Why?! Why do this when plenty of test runners are free, or bundled with software I already own such as ReSharper and Visual Studio itself? ...

22 April 2014

Matthew Henry Nelson

Proudly presenting a new addition to the family – Mr Matthew Henry Nelson: He arrived at 0624 local time on the morning of Saturday 1st September, and weighed in at 7 pounds 6 ounces. This was 17 days sooner than expected, and his early arrival literally caught his Daddy napping – while Jocelyn was giving birth in York, I was sleeping soundly in a Reading Novotel ahead of the DDD10 conference. Needless to say, when I woke to find eight missed calls, a voicemail, text message, and even posts on my FaceBook wall trying to alert me to Matthew’s imminent arrival, I decided to give the conference a miss and head quickly back up the M1. ...

26 September 2012

Available Again For Contract Work

Are you plagued by bad code smells? {#are-you-plagued-by-bad-code-smells} Troubled by slow-running database queries and ETL routines? {#troubled-by-slow-running-database-queries-and-etl-routines} In need of some scalable and maintainable enterprise integration solutions? {#in-need-of-some-scalable-and-maintainable-enterprise-integration-solutions} ...

12 March 2012

A Personal Stack Overflow Milestone

In the grand scheme of things, ’tis but a minor achievement, but I was quite chuffed with myself this evening when my Stack Overflow reputation finally reached the 10,000 mark: My girls made me a special “10K” cake to celebrate 🙂 Kudos to Jeff, Joel and the team for creating a site that I have found engaging, entertaining and very useful for the last 3 years and 4 months. ...

4 January 2012

Wacom Bamboo

Almost everyone who has wandered past the various desks that I’ve occupied over the last year has passed comment on my Wacom Bamboo Pen Graphics Tablet. So, let me say a few words about my experiences with that. For the longest time, I had been perfectly content to use various Logitech VX / MX mouses as my secondary input device, occasionally using a Microsoft Arc Mouse (very convenient to carry around in my rucksack). ...

13 September 2011

Schoolboy Error Of The Day

This dumb mistake just cost me an hour spelunking around in the debugger: var status = source.Substring(source.LastIndexOf("/" + 1)); (where source is e.g. “http://foo.com/status/all-is-good“) Fortunately the ramifications were picked up in the acceptance tests, but the root cause wasn’t at all obvious from such a high level. Lesson for the day – code is never too trivial to warrant unit testing.

17 August 2011