DevOps Practices for Continuous Deployment

Continuous Delivery is a way of working which ensures our code is always in a releasable state. It encourages us to commit small iterative changes to our codebase, ensuring we are delivering value quickly to our customers and the likelihood of change failures and subsequent re-work is low. From a …


Web Analytics with Cloudfront and GoAccess

Here is yet another answer to the perennial question of who is accessing my website and what pages are they looking at? A long time ago this website ran Google Analytics but I got put off by the privacy impact it has on users. I’ve since switched to another client side tracking solution Goat …


ANZAC Day Sunrise

Blue Hour at Oriental Bay

Blue Hour at Oriental Bay

Golden Hour over Wellington Harbour.


Building a Crossword in F# - Part II

In the first post we built a basic crossword engine in F# using Fable, Feliz, and React. In this post we’ll refactor the code to make it more idiomatic F#.

Link to this section Data Types

First a recap on the data types which make up the …


Building a Crossword in F# - Part I

Friends and I compete at the NYT Mini Crossword, a daily crossword published by the New York Times which can be completed in a couple of minutes. The crossword is made from a mixture of cryptic, pop culture, and typical crossword style clues. When you begin the crossword the timer starts and when …