David Johnstone

Things I've made


Occasionally I create a single page to try something new and be creative. Sometimes they're even useful.

Tweet wall visualisation

Here was a visualisation for Twitter. Give it something to search for and it will show those tweets. It was very pretty, but time and Twitter have not been kind to it, and it is now broken.

Barnsley's fern on a HTML5 canvas

Barnsley's Fern on a HTML5 canvas. It's 180,000 green dots drawn using a simple formula, and it ends up looking quite nice.

Hash collision calculator

A tool to calculate the probability of a hash collision. It was meant to be a simple bit of code with lots of CSS to make it pretty, but that was before I started looking at JavaScript big number libraries…

Lch and Lab colour and gradient picker

A colour and gradient picker that uses a variety of colour spaces for choosing and interpolating gradients, including Lch and Lab.

Cubehelix gradient picker

A gradient picker that uses the cubehelix method.


David Johnstone's website


This is the website that you're looking at now. As you might be able to tell, this is where I keep a blog, make the occasional fancy web page, and might someday do a bit more.

Cycling performance analysis

Cycling Analytics

This is a website I'm building for serious cyclists to track their riding. It's the ideal intersection of web development, cycling and analytical goodness for me to be working on.

A searchable directory of Presbyterian churches in Australia

Find a Presbyterian Church

A directory of Presbyterian churches in Australia. Like most things I make, I can think of plenty of ways to improve this.

Note taking website


This is a note taking website that I created because I wanted to use it. I think it's really useful.

Hawthorn Presbyterian Church

Hawthorn Presbyterian Church

The website for my church.