Getting going with functional programming in JavaScript

Functional programming has made a strong resurgence in recent years and for good reason too. Functional software breaks code down into composable deterministic functions, resulting in code that is often simple, elegant, and expressive. It can lead to code that is easier to understand and maintain, and straightforward to test.…

Visual Regression Testing Your Component Library

I recently gave a lightning talk at React Advanced titled "Visual Regression Testing Your Component Library", where I discussed: the need for visual regression tests where they work well a tool called BackstopJS how we've utilised visual regression tests within our teams workflow If you have a spare 10 minutes,…

Book Review: "The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win"

About the book The Phoenix Project is an IT leadership fable, using the story format to demonstrate the growing role of software engineering within businesses today and showing the reader how best to work across disciplines to help their business win. The book follows Bill, an IT manager at Parts…

Here's why you SHOULD be using currying

Currying is a technique that makes use of partial application to transform a function with multiple arguments into a sequence of functions, each with a single argument (aka single arity). The inner functions are closures, having access to their own scope and the scope of their outer functions, and in…

A basic testing strategy overview in 5 minutes

Your testing strategy will form the basis of your requirements validation and verification, and is essential to providing both developer and business confidence in the system produced throughout it's lifecycle. You'd be hard pressed to find an individual or company within the software industry that does not buy into this…