Sending IR codes on Raspberry PI Buster

This summer rather than do my usual trick of creating an app I decided to get a Raspberry Pi and investigate interacting with the real world. Or, specifically my TV. The key items relating to this post are: Raspberry PI 4 Model B with Raspbian Buster Infrared receiver module Infrared transmitter module It appears that… Read more »


In the world of Foreign Exchange there are a range of products that customers can choose to hedge their currency requirements against rate moves alongside a wider set that allow for out-performance of the market and speculation. Some of these products are complex but the most used follow a set pattern: On a set date… Read more »


Back in 2014, while taking a break between roles I began building a web-application to display your financial transactions and allow you to group and categorise them. I find it much easier to learn technologies while using them for a specific purpose so this project became a great place to test those out. The app… Read more »

Developer Tools on BrowserStack devices

Recently I was asked to look into a pair of issues that could be seen in a live environment but not in test. After a bit of further investigation we discovered it could be replicated but only using BrowserStack, and only in their Simulators, not physical devices. This was a bit of a problem as… Read more »

Serving SSI content with Grunt and Connect

Having recently tried to search for the answer to this question, and found that one guy had partially answered the question on every post, here’s how to serve SSI / SHTML content through Grunt and Express. The Grunt Task Pretty straight forward, add connect with a server. Change the port and hostname as per your… Read more »

Center a Google Map on a point

I’ve always been surprised that centring on a point/LatLng isn’t a function in the Google Maps API, although the fitBounds method does tend to interfere with the zoom it’s a useful tool to have in the box.

AngularJS Karma testing

Last year I was involved in making a prototype web app using AngularJS, and as it there was the possibility that it may end up as the foundation to production code we wrote unit tests for it’s internal functionality. Whilst there is a ton of examples for testing AngularJS apps we still ran into a… Read more »

Using MarkerClusterer and MarkerWithLabel with Google Maps

Both MarkerClusterer and MarkerWithLabel are great libraries, but they do have their quirks; MarkerClusterer What is a cluster marker? MarkerClusterer doesn’t use Google Markers or pin styles, it takes an image path and creates HTML on a layer. The resultant markup is given a class of ‘cluster’ that you can target in your CSS. Do… Read more »

Using jQuery.ajax rather than jQuery.load

jQuery.load is an incredibly useful method, but if you want to do more with the returned source than put it into a div then you may want to use jQuery.ajax directly with your own callback. The source code for the load method is a great starting point for writing your own callback, in particular how… Read more »

iOS 7 and 412 precondition failed

With every release of iOS there tend to be some gremlins lurking in Safari, iOS 7 was no different. When first testing the site I’ve been building in iOS 7 I was getting a failure when resubmitting an AJAX POST request, the response was 412 (Precondition Failed). Eventually I found this issue explained related to… Read more »