Knowledge: Tech Blog

Where we share our thoughts on technology and design.

Latest Articles

Darren Smith

Consumer Driven Contracts using Pact

In this post I will talk about Consumer Driven Contracts in Microservices architectures. I will also give an example of how to use Pact in a modern JavaScript application.

Chris Price

Efficient SVG layout with d3

When creating d3 visualisations it's common to want some form of responsive layout. However, SVG and canvas don't provide a native way to do this. Most examples found online either use fixed dimensions or resort to some form of manual layout to achieve the required effect. This post introduces an alternative approach using CSS and custom elements.

Drew Theasby

Fiddler's Autoresponder to mock API Responses

Fiddler's AutoResponder is a great tool to mock API Responses when you're testing front end logic. It's simple but provides some powerful testing options. This is a short post to show you how.

James Dunkerley

Unaffordable Country In Apache Spark

Recreating the data used for the Guardian's Unaffordable Country visualisation in Apache Spark.

Colin Eberhardt

Semantic Versioning is not enough

A few days ago the roadmap for future Angular releases, starting with v.4 in March 2017, was unveiled. It once again made me re-visit my personal doubts about semantic versioning, the underlying issue being that it is great for computers, but bad for humans. Considering that people are the primary...

Colin Eberhardt

A Journey Through Sound Synthesis with AudioKit

For the past four years I’ve been an author on Ray Wenderlich’s website which provides tutorials for iOS developers. I don’t do much native iOS development these days, However, I do like to keep my skills up to date. As part of this team I sometimes find myself being assigned...

Andrew Jones

Scottcoin, centralising the decentralised

We’ve recently been investigating uses for the blockchain and as part of this, we’ve developed our own system called Scottcoin. This post will explore the core components of the Bitcoin system, how a transaction goes through it, how our internal version differs and what advantages and disadvantages it brings.

Darren Smith

Using Rally to benchmark Elasticsearch queries

In this post I describe how to use Elastic's Rally to generate benchmarks for your private Elasticsearch queries and clusters. I'll be creating a benchmark which allows comparison of an unscored query with one where scoring is enabled.

Bartosz Jedrzejewski

Spring Boot and MongoDB - a perfect match!

The popularity of Spring Boot in the Java world is undeniable. In this post I will show you yet another reason for this. Using Spring Boot makes working with MongoDB an absolute pleasure.

Rosie Hamilton

Deconstructing Test Bash with R - Twitter Mining and Sentiment Analysis

How I used R to collect and analyse all of the tweets made about Test Bash Manchester, a recent software testing conference.

Sam Hogarth

Design, Data and Redux at Bristech

Yesterday I attended (and spoke!) at the 2016 Bristech conference, an event aimed at polyglots, innovators and the “tech curious”. It was a full house at the Watershed with over 400 tickets sold. I had a great time at the conference, attending quite a few talks myself. What made the...

William Ferguson

Creating a Simple Particle Simulation with Go

In this post, I take a look at writing a simple particle simulation as a way of learning some of the basics of the Go language.

Rosie Hamilton

Test Bash Manchester 2016

I was lucky enough to attend Test Bash Manchester recently. This is my first hand report of the experience. Find out what happened when testers from around the world all came together to talk about testing.

Rosie Hamilton

Learning to talk - Finding your voice and telling a story

Having never given a technical talk before, I agreed to speak in public then found myself figuring out how I was going to do this.

Ali Sheehan-Dare

The Power of the Higher Order

A practical look into higher order components and what they bring to the table, along with a general discussion of code reuse in React

James Dunkerley

Highlights from the Inspire Europe Conference

My highlights from attending the Alteryx Inspire Europe conference, hosted in London.

William Ferguson

Creating a Pebble Watchface with JavaScript

In this article, I take a look at writing a watchface for Pebble using their newly released JavaScript SDK.

Jon Harris

Why does no one agree on a definition of MVC?

If you look up the MVC pattern on the web you can easily find definitions that differ and contradict each other. In this post I'll look at some definitions of MVC and consider what the differences mean for applying the pattern in practice.

Nick Soper

Hosting .NET Core on Linux with Docker - A Noob's guide

This blog describes my experience of upgrading a basic RESTful API from .NET Core RC1 to .NET Core 1.0, and using Docker to host it on Linux. Docker is completely new to me so I'll give my thoughts as a noob.

Graham Odds

Do You Need A Conversational UI?

Despite all the excitement around chatbots, conversational UIs and conversational commerce, you need to take a step back and consider whether they could be appropriate for your services. This post weighs up the potential against the current reality and highlights aspects to consider.