Technical and Programming

Banner image for the article

HTTP Status Codes

Here's a cheat sheet I use to translate the official RFC HTTP code descriptions to something more understandable. It's a little sweary, but all the good things in IT are.
Read More
Banner image for the article

What Can Software Development Learn From Formula One

Surely there isn’t anything in common between software development and Formula 1 car racing.
Read More
Banner image for the article

The Importance of Build Artifacts

Without build artifacts, many deployment processes are forced to rely on 3rd party services. What happens when these are experiencing an outage?
Read More
Banner image for the article

MSA, TBD, DDD, TDD, BDD, WTF?

An introduction to microservice architecture, trunk based development, domain driven design, test driven development and behaviour driven development.
Read More
To reduce the chance of a human error affecting the a production site (especially in a team environment) it is good practice to implement a CI/CD pipeline. This post covers the implementation of a CI/CD pipeline for the AlphaGeek site. In future I will provide a more generic post about CI/CD pipelines.
Read More
When developing any dynamic functionality it is best practice to implement testing. This will ensure anytime the code is deployed it is in a working state and will provide a good user experience to the visitors/users of your service.
Read More
After implementing an AWS CloudFront distribution for serving content from AWS S3 it is best practice to prevent direct access to the S3 bucket. This will prevent duplicate content issues on search engines and will also mean your content can only be accessed by the domains you expect.
Read More
A number of months ago I was involved in the migration of a message sending system to utilise SMPP for SMS sending. During this process I sent several pull requests through to a GitHub repository, but it appears the repository has been abandoned. This post will cover the process of forking this repository, merging the Pull Requests and submitting it to Packagist.
Read More
It's very common to have some sort of test/SIT/UAT environment(s). Often this site should't be made public. When using AWS there are a number of strategies to secure the test environment(s) from limiting access by IP address (this works well if you have a static IP and/or can VPN to a fixed IP address), only permit access via a VPN connection (which can be useful in a corporate environment), or set-up the web browser and AWS WAF (works for Chrome and FireFox in a small business environment).
Read More
This post was initially going to be the first post on this blog, but during writing it became apparent that it was necessary to describe the development environment first. This post will describe the process used to create the blog and publish it to AWS. Each step will describe the process for an Apple Mac, but links will be included to enable the process to be completed on any common operating system.
Read More
This site and a number of side projects are developed on Apple Mac hardware. This post covers the hardware and software used.
Read More