Monday, 30 May 2022

We're looking for Full Stack Software Engineers at ClickMechanic

Ideally we're looking in the UK, as we love a party! 🍾

However, as a fully remote business we're open to people in other countries with similar time-zones.

You can apply at, we'd love to hear from you!

Friday, 14 January 2022

If I Fell

Another lock-down cover version with Penny, this time we had a go at If I Fell by The Beatles.

Sunday, 27 September 2020

Close My Eyes Forever

Penny and I have been mucking about during lock-down again. This time doing our take on an eighties classic rock ballad

Monday, 25 September 2017

Summer's Over

Well, summer's over and the nights are drawing in.  I've enjoyed spending the holidays with the children, but now they're back at school it's time for me to get back to work.

I'm looking for a new opportunity, either within an hour commute of Poole, or remote working.

I'm a full-stack agile developer working in Java and Ruby with plenty of front-end JavaScript experience and a deep understanding of Linux based deployment platforms including AWS. I believe that dev-ops is critical to smooth delivery and have experience setting up an automated containerised deployment pipeline.

Although I'm happiest as a hands on developer, I've been coaching and managing Extreme Programming teams for the last 7 years.

My ideal job would also utilise some of my non-coding skills such as graphic design, video and sound production, music and art, but I'm enthusiastic about any problem I can get my teeth into!

So if you have something that might be of interest, please message me on Linked-in or email me.

Tuesday, 20 June 2017

Fight for a Secure Encrypted UK

I’m writing today because I’m deeply concerned about reports that the government is covertly planning to undermine the encryption tools that keep us all safe.

Home Secretary Amber Rudd's leaked plan shows that she wants to force tech companies like WhatsApp to "remove electronic protection" and Internet providers to allow "near real time" access to our private online communications.

The Tories appear to see encryption purely as a way for terrorists to hide from scrutiny, but it also plays an absolutely essential part of everyday internet use.  I use encryption whenever possible to reduce my risk of identity theft which could lead to financial ruin.  It protects my business partners' and clients' trade secrets from corporate espionage.  It keeps my connection to my bank secure and my medical records private.  For the most vulnerable members of our society, encryption is the difference between life and death, safety and abuse.

I urge my representative in parliament Robert Syms MP to fight against putting back-doors into encryption technologies and communication services that don't just allow the government to spy on us, they break encryption entirely.  There is no such thing as a back-door that can't be exploited by hackers; if one is added, it's only a matter of time before someone finds a way to exploit it.

Breaking widely used encryption won't expose terrorists, it will just push them further underground into the "dark web" where their activities will be harder to track.  The only people who will suffer are peaceful civilians.

Thursday, 6 August 2015

MythTV not running mythfilldatabase on Arch Linux

I run a MythTV PVR server on Arch Linux and have struggled to get mythfilldatabase running automatically as it's supposed to.

In the mythfilldatabase log file the error message was

(Run) - tv_grab_uk_rt  --capabilities failed or we timed out waiting. You may need to upgrade your xmltv graber(Run) - Grabbing XMLTV data using tv_grab_uk_rt is not supported. You may need to upgrade to the latest version of XMLTV.

  • tv_grab_uk_rt is a python script that grabs the the UK Radio Times XMLTV listings
  • mythfilldatabase runs the above (expecting it to be on the path)
  • mythfilldatabase is run from mythbackend
  • mythbackend is run as a systemd service (without the python folder on the path)
Solution was to edit /usr/lib/systemd/system/mythbackend.service to add the following line under the [Service] section:

Environment=HOME=/var/lib/mythtv PATH=/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:$PATH

Which adds the Python path to the environment for mythbackend.  Now tv_grab_uk_rt works fine.

Wednesday, 29 April 2015

Are We Nearly There Yet: The Agile Struggle

My four year old twins are sat in the back of the car, asking "Are we nearly there yet?"

This would seem a reasonable question, but the answer isn't the one they're looking for - we've only just turned out of the end of our street at the start of a three hour journey. So I encourage them to look out of the window and tell me what they can see and soon they're enjoying spotting ponies in the New Forest.

At work, people sometimes ask "How agile are we?"... essentially "Are we nearly there yet?", but agile is a journey not a destination. Agile is a set of ideas that help you with the steps along the way, not a fixed state to be attained.

Even the project you're working on usually won't come to a deliberate fixed end. There may be a short period of bootstrapping to get to an MVP, followed by a much longer period of iterative improvements. The end is most likely a decommissioning of servers that have become irrelevant; a whimper rather than a bang.

A philosophy is not a way of reaching death as efficiently as possible, it's a way of getting the most value out of the life you live.

Don't be disheartened if your agile practice doesn't seem to be going smoothly. Agility requires a constantly self-doubting critical eye that doesn't accept the status quo and questions everything. If, day to day, you don't have disputes about the right way to do things, then you're probably not working in an agile team. When the process becomes static, you may have a simple life, but you really aren't delivering the best value to the business or yourself.

You will never reach agile nirvana, but you may find enlightenment and a sense of tranquillity along the way, because the way you handle the bumps on the winding road makes them seem flatter and the curves smoother.