First Post
Introduction
After just over 12 years working as a Microsoft technology centric backend developer, I have finally decided to publish my very own blog!

Not so unique, I’ll admit. There are loads of tech blogs out there. But now that I have started the process I’m wondering what took me so long. Actually that’s not entirely true, I know exactly why it took me so long. Working all day at a desk, on a computer made it less than appealing to spend evenings sat at a computer.
That being said, I was recently made redundant and with redundancy comes idle hands, copious amounts of free time and a realisation that since I last looked for work the developer job market has become highly competitive, which is why I decided to set up a blog site as a side project to keep me busy, maintain my skill set and learn some new tech while I search for future employment opportunities.
I may have also nonchalantly said to my girlfriend one evening that I could build her a portfolio website to host all here old photography work, which so far I have not materialised and I’m certainly not an accomplished front-end dev 😬.
So (dis)armed with a money/mouth idiom and some honest intention, this is where I’m at!
My Background
I studied electronics engineering at college in the late 90’s/early 2000’s which included a micro-controller course using Z80 assembler, then later I learned OOP using JavaScript and Java as part of my Computing and Psychology (Bsc) studies with The OU. During this time I also tinkered with C# and Microsoft’s XNA gaming framework, but beyond that I had not applied any of my programming knowledge in a real world job.
My (professional) developer career began in 2010 when I wrote some C++ for an Arduino based POC at my then employer, Lumacoustics (now YR). We were developing a Digital Graffiti Wall system that used IR LEDs mounted on an aerosol can ‘controller’ which was tracked and mapped onto a rear-projected digital canvas.
All the IR tracking, mapping and rendering was achieved using VVVV and an OptiTrack mo-cap camera. The system worked very well except the physical interface was essentially just an X-Y coordinate on a 2D plane and we wanted to produce a more realistic analogue experience by tracking the virtual spray nozzle (IR LED) angle and distance relative to the surface of the canvas (screen) and model the physical behaviour of a jet of paint.
One of my colleagues had previously interfaced a generation 1 Wii remote with the platform to control 3D assets in virtual space but Wii remotes were and still are quite expensive. Too expensive for us to have butchered the internals and mount into one of our cans. We needed a custom solution that was cheap and could be integrated into our controller.
While researching various solutions I came across a reasonably priced 6-DoF IMU (the MPU-6050) from a Silicon Valley company called Invensens (now owned by TDK). We purchased one of their dev kits, wired it up to a voltage regulator and SMT developer board I found at AdaFruit, connected it to an Arduino and exported the accelerometer and gyroscope values from the Arduino serial port into VVVV to get some digital effects from the real world interactions.
Along side the IMU controller I also developed a basic proximity sensor using a reverse podiatry LED and an op-amp to detect the IR light reflecting off the surface of the rear-projection screen. It was a bit flaky at extremely oblique angles but it worked ok up to about 6 inches off the surface, much like an actual aerosol spray nozzle.
Unfortunately cost, time and other commercial commitments meant the project was shelved indefinitely, but at the time I had the idea of using the same IMU sensors in specialised clothing to measure the physical position of the wearer’s joints and limbs, with the intention of using the captured data to do things like gait analysis, assist physiotherapy, mo-cap animation or athletic performance analysis.
But my software/electronics development experience was minimal and I possessed absolutely none of the data science knowledge and skills required to build such platform, so it remained an aspirational folly. In the end the business went in a different direction and I left the company in 2014 to join (what was back then) the UK’s largest independent web agency to begin my career as C# developer.
Full Circle
Fast forward to 2022; I joined the elite sportswear start-up, KYMIRA as a senior developer alongside a talented team of hardware engineers and data scientists and we set out to develop such a product.
The result was Panthion. A system of sensor enabled garments (which coincidentally implemented Invensense IMUs), custom Iot Edge hardware, a single page web application and cloud-native data processing platform that captures the wearer actions from real world environments and interprets the raw data into useable metrics.
Such a shame that no one wanted to buy it!
The Future
Now I have the challenge of updating my professional qualifications to better reflect the last 6 years of workplace experience I’ve gained while architecting and developing cloud native applications. So, I’m focused on achieving Microsoft AZ-104 & AZ-400 qualification certificates in parallel with finding a new job.
I’ve had a number of ideas for personal web projects over the years. I even attempted to launch digital art gallery and Cardano NFT trading platform with friends a few years back (note; don’t start a company with a friend who has no business or marketing experience, no mater how enthusiastic they may seem at first!) but looking back, building a personal blog site and hosting it using free Azure credits seems like a much more sensible undertaking. So I bought a cheap domain from IONOS, installed Hugo on my dev machine and generated a static website.
The next step was to develop an IaC template (using Terraform) that could deploy an Azure Static website, set up an automated build/publish pipeline in Azure DevOps,configure SSL and DNS and, voila! I can now subject humanity to my ramblings while also increasing my chances of getting a job!
These are all things that I have done before (with the exception of using Hugo) but not in the context of a personal project, only for work.
Watch this space for updates on my personal projects, my miscellaneous thoughts and ideas, general grievances, cool stuff I’ve seen and done or anything else I feel like sharing with the world.