Technology Blog

All Posts

Title Date
Context Transference Friday 30 May 2025
7 AI Predictions (AI, We Really Need To Talk: Part 2) Thursday 29 May 2025
Notes on the Synthesis of Form Monday 6 January 2025
Coverage is not correctness - but it helps! Tuesday 12 November 2024
Lo-Fi Service Discovery in .NET8 Tuesday 21 November 2023
The Surface Area of Software Sunday 4 December 2022
Notes on the Monorepo Pattern Sunday 4 December 2022
Open-Source Software, Licensing and Enterprise Procurement Friday 24 June 2022
Storing growing files using Azure Blob Storage and Append Blobs Saturday 16 April 2022
Writing User Stories Monday 10 January 2022
Open-Source Exploitation Monday 13 December 2021
A Love Letter to Software Friday 3 December 2021
Hiring is broken! Let's fix it with empathy. Thursday 30 September 2021
How to write a tech talk that doesn’t suck. Sunday 20 June 2021
Agile software estimation for everyone. Wednesday 10 February 2021
Writing good code by understanding cognitive load Tuesday 2 February 2021
9 time-management tips for developers Monday 16 November 2020
Does Functional Programming Make Your Code Hard To Read? Wednesday 14 October 2020
An introduction to TypeScript and ES Modules Thursday 17 September 2020
The happy path – using Azure Static Web Apps and Snowpack for TypeScript in your front end Tuesday 1 September 2020
Does remote work make software and teamwork better? Monday 10 August 2020
Azure Static Web Apps Are Awesome! Wednesday 29 July 2020
.NET Templates for C# Libraries, GitHub Actions and NuGet Publishing Monday 4 May 2020
Deploying Azure WebApps in 2020 with GitHub Actions Sunday 3 May 2020
The Quarantine Project Sunday 3 May 2020
Running .NET Core apps on Glitch! Thursday 26 March 2020
Small thoughts on literate programming Friday 28 February 2020
Hardware Hacking with C# and JavaScript Wednesday 29 January 2020
Music Streaming and the Disappearing Records Sunday 15 December 2019
Architecture for Everyone Thursday 12 December 2019
Creating Spark Dataframes without a SparkSession for tests Tuesday 26 March 2019
Building .NET Apps in VSCode (Not .NetCore) Thursday 17 November 2016
Get Coding! - I wrote a book. Tuesday 28 June 2016
Why code reviews are important Thursday 7 April 2016
Projections in Agile Software Development Saturday 28 November 2015
Using C# 6 Language Features In Your Software Tomorrow Monday 20 July 2015
Passenger - A C# Selenium Page Object Library (Video) Monday 27 April 2015
Page objects for browser automation - 101 Wednesday 1 April 2015
We need to talk about configuration. Thursday 5 March 2015
Cutting CODE!-A livestream show for programmers Sunday 1 February 2015
Deployments in .NET 2014/2015 Report Friday 16 January 2015
Testing an ASP.NET WebAPI app in memory Wednesday 7 January 2015
Thoughts about delivering platforms from Nick Dentons leaked memo Thursday 11 December 2014
NuGet 101 - A Bootcamp Tuesday 9 December 2014
Deployments on Windows / .NET in 2014 Thursday 13 November 2014
Garbage Collection in .NET - Workstation vs. Server GC. Thursday 6 November 2014
Code dojos as a learning tool Wednesday 5 November 2014
Performance Tuning and the Importance of Metrics Sunday 26 October 2014
Lessons learnt running a public API from #dddnorth Sunday 19 October 2014
Deferred execution in C# - fun with Funcs Thursday 16 October 2014
How to make it harder for people to steal your users accounts (and data!) Wednesday 3 September 2014
Inverting the FN keys on a Microsoft Wedge Keyboard Monday 11 August 2014
A summer in the wilderness; on not working; volunteering; taking clients Wednesday 6 August 2014
Continuously deploying Azure services using AppVeyor and GitHub Tuesday 13 May 2014
Exploring QueueBackgroundWorkItem in ASP.NET and Framework 4.5.2 Friday 9 May 2014
Slidedeck + Video - Profiling applications with dotTrace Friday 2 May 2014
Writing technical stuff that people want to read Wednesday 23 April 2014
Doing Open Source Right Monday 31 March 2014
ASP.NET MVC 101 - Extensibility Points Thursday 20 March 2014
HTML Image tags and onerror javascript handlers Wednesday 5 March 2014
Introducing:ReallySimpleFeatureToggle Monday 3 March 2014
SSL Termination and ASP.NET Wednesday 12 February 2014
The Assassination of OR/Ms …by that coward, relational storage Tuesday 11 February 2014
Azure WebJobs and continuous delivery Thursday 23 January 2014
Definition of 'refucktoring' in English Saturday 4 January 2014
Lessons Learnt Authoring Software Libraries Tuesday 3 December 2013
Instant Nancy Web Development - A book review Wednesday 27 November 2013
Using build failure conditions in TeamCity to ensure "improving" test coverage in .NET apps Monday 18 November 2013
Announcing:System.Configuration.Abstractions Wednesday 6 November 2013
Writing great user stories Wednesday 6 November 2013
Lessons learnt scaling a big mainstream RESTful API Sunday 27 October 2013
JustGiving's love affair with Nancy - A case study Monday 7 October 2013
Using SimpleServices to build a runnable and installable windows service Friday 27 September 2013
Using #NancyFx to make "invisible" applications visible Wednesday 25 September 2013
Building software that’s easy to monitor and administer Monday 23 September 2013
A source control strategy for Git that “just works” Wednesday 11 September 2013
How did [some bug] pass QA? Friday 2 August 2013
The Pragmatic Polyglot Monday 24 June 2013
Think people aren’t communicating? Remember you have the privilege of looking at the code Tuesday 18 June 2013
Composition over inheritance at a macro level - composing applications from packages Thursday 28 March 2013
A quick ASP.NET MVC Extension to support CDNs Wednesday 20 March 2013
...from the trenches - 01 - Profiling a C# web app with dotTrace Sunday 24 February 2013
The Anatomy of a Continuous Deployment System Wednesday 13 February 2013
A prettier way to parse strings in C# Friday 11 January 2013
Should I train as a programmer or learn how to code? Friday 7 December 2012
Easy Google Analytics Event Tracking-Do it by convention! Wednesday 5 December 2012
Can I delete *.regtrans-ms files from c:\windows\system32\config Friday 26 October 2012
Effective software delivery–Tips for keeping your releases predictable Sunday 29 January 2012
Effective software delivery–Short, consistent release cycles Sunday 29 January 2012
iTunes Persistent Id Cloner - Sync one iPhone / iPod with many computers Wednesday 25 January 2012
JustGiving Direct Debit SDI–Y U NO WORK?! Sunday 11 December 2011
Configuring Windows Server 2008 R2 as a non-domain file server Monday 28 November 2011
CouchDb using C# in 15 minutes Monday 14 March 2011
The perils of outsourcing software development Monday 29 November 2010
Pluralization (Pluralisation!) in C# Monday 15 November 2010
JustGiving <3 CharityHack 2010 Thursday 9 September 2010
Serving different views for mobile devices in ASP.NET MVC Monday 3 May 2010
Automatic Html Encoding in ASP.NET 4.0 Tuesday 13 April 2010
What Are APIs Anyway? Friday 19 February 2010
C# Access Modifiers Are Type Specific, NOT Instance Specific Wednesday 17 February 2010
ASP.NET MVC View Engine That Supports View Path Inheritance Tuesday 19 January 2010
I don’t understand Bayonetta Sunday 10 January 2010
Albums of the year… 2009… Tuesday 15 December 2009
Writing Presentable Code Pt.1 – Properties and Variables Wednesday 4 November 2009
Reusable Editable Fields for ASP.net MVC Using jQuery Thursday 8 October 2009
Creating a WCF Proxy to talk to Magento Monday 5 October 2009
Designing Client Facing APIs – Best Practices Wednesday 30 September 2009
In defence of current-gen game design Saturday 5 September 2009
Localizing ASP.Net MVC Pages without the need to RunAt=”server” Thursday 20 August 2009
MobileTFL 1.0.0.9 Sunday 9 August 2009
MobileTFL 1.0.0.8 Friday 31 July 2009
After some radio silence – videogames! Monday 6 July 2009
Xml Comment Hell – A Software anti-pattern Monday 6 July 2009
How far has A.I. in games really come? Monday 1 June 2009
C# Extension Methods To Get Enum DescriptionAttributes And Other Custom Attributes Thursday 23 April 2009
Installing certificates using WiX / Voltive (A Code Sample) Wednesday 22 April 2009
Using A Wiki To Replace Requirements And Produce Documentation For Your Agile Projects Tuesday 7 April 2009
Controlling Your Software Development Environment And Release Cycle In An Agile Way Sunday 22 March 2009
Custom HTC Diamond ROMs Not Waking Up To Email Alerts Friday 20 March 2009
XNA Game Development:Coding For Multiplatform Multiplayer Thursday 12 March 2009
XNA Game Development:Coding For Multiplatform Multiplayer 2 Thursday 12 March 2009
Game Development Tuesday 10 March 2009
Why I Love Stand Up Meetings And How To Make Them Work For You Friday 27 February 2009
Simple C# HTTP Server for Windows Mobile Tuesday 17 February 2009
Bargain Bin Games:“Stranglehold” and “Kane and Lynch” Wednesday 11 February 2009
Installing Certificates using Wix (Windows Installer Xml / Voltive) Wednesday 11 February 2009
So I finished Fallout 3 finally... Tuesday 3 February 2009
C# Subversion ChangeLog Generator Monday 19 January 2009
SEO Lies & Real Solutions (Or Why SEO Experts Are All Hacks) - A Case Study Thursday 15 January 2009
Late Night Therapy Tuesday 13 January 2009
Microsoft, thankfully, standing firm on BluRay and the 360 Friday 9 January 2009
A Few Of My Favourite Things (Of 2008) Wednesday 7 January 2009
The Death of Middle Tier Games Studios Thursday 18 December 2008
On How I Learnt More About Business And People From World of Warcraft Than From "Corporate Life" Monday 1 December 2008
XBox Live Connection Bug - Live won't automatically connect until you perform a network test Wednesday 19 November 2008
Peer to peer networking using Windows Communication Foundation (WCF) Peer Channels and the Peer Mesh (C# .Net) Monday 17 November 2008
Do Good Things (Fable II) Thursday 30 October 2008
Protecting Your Software - Authorisation and You Tuesday 30 September 2008
StackOverflow, Bloodstock and The Clone Wars (Catching Up) Monday 18 August 2008
Vintage Game Club:Grim Fandango Monday 14 July 2008
Embrace, Extend, Extinguish:Integration with Uncooperative Systems Saturday 12 July 2008
The Vote Of No Confidence In The Entity Framework Wednesday 25 June 2008
The Dangers Of Pushing The "Cloud" To Market Saturday 21 June 2008
C# Developers Toolbelt Sunday 8 June 2008
Selecting a mostly portable notebook Thursday 5 June 2008
Beyond Good and Evil 2 Wednesday 28 May 2008
Web 3.0 Data Silos and Identity Portals - Overthrowing social networks Tuesday 20 May 2008
Stop Holding My Data Hostage - Data Ownership and Web 3.0 Tuesday 6 May 2008
Nine Inch Nails - The Slip Tuesday 6 May 2008
The Church of VB.Net Monday 28 April 2008
Discipline Tuesday 22 April 2008
Sharepoint Tuesday 22 April 2008
Ashes Divide samples appear online Wednesday 2 April 2008
RunAsRadio - Scott Kveton Shares His OpenID! Friday 28 March 2008
Fractured Online Identities Wednesday 26 March 2008
Singularity Wednesday 5 March 2008
Self Hosted WCF Services Revisited Wednesday 5 March 2008
LucasArts adventures reincarnated Saturday 1 March 2008
Development Tricks:Debug View Friday 22 February 2008
Using C#, Inversion of Control and WCF to produce a generic host for use in distributed systems. Thursday 21 February 2008
Pigs are flying and Microsoft are opening APIs Thursday 21 February 2008
Mass Effect Sunday 3 February 2008
Game Development in C# (XNA Woes) Monday 28 January 2008
2008 Sunday 6 January 2008
Duke Nukem Forever Trailer Wednesday 19 December 2007
After such radio silence... Sunday 29 July 2007
Moving Forwards Friday 4 May 2007