Blog

Featured Articles

An interactive crosshairs component for D3

on 29 Sep 2014

In my last article I put together an interactive chart that could be panned and zoomed, but there was one obvious omission - crosshairs. In this article I'm going to create a D3 crosshairs component, and show you how to add it to a chart.

Functional Swift and Memoization

on 22 Sep 2014

This post is a continuation of my previous which looked at implementing Conway’s Game of Life using functional techniques. Here I look at how memoization can be used to cache the return value of a function in order to improve performance.

Strong Typing With AngularJS

on 26 Aug 2014

This article demonstrates a successful integration of TypeScript with AngularJS to provide a strongly-typed environment for development of HTML5 apps.

An OHLC Chart Component for D3

on 19 Aug 2014

An open-high-low-close chart is a type of financial chart used to show price movements in a financial instrument over time. In this post, we'll make a reusable D3 component for an OHLC chart series.

Functional Reactive Programming with Bacon.js and D3

on 23 Jul 2014

Reactive programming is a paradigm which allows you to better represent a work flow where changes in one part of your data model propagate down to other parts of the model. This blog post demonstrates an example of this, by listening for updates to Wikipedia and reacting accordingly.

A Statistical Comparison of the iOS and Android Stores

on 10 Jul 2014

A few months ago I published a blog post which showed the results of analysing the meta-data of 75,000 apps from the iTunes App Store. This blog post continues the analysis by adding 60,000 Android apps into the mix.

Schools of Testing

on 07 Jul 2014

Which school, which certificate? It’s a minefield for testers. Are any certifications worthwhile?

Latest Articles

Jekyll Pagination and Infinite Scroll

by Colin Eberhardt, on 14 Oct 2014 Colin Eberhardt

Recently I updated the Scott Logic blog to implement infinite scrolling using a combination of Jekyll pagination and jScroll. Both of these components are quite fussy about their respective configuration, meaning that integrating them took longer than expected. I thought I'd share my solution in this blog post, hopefully saving others from the hours I spent digging into jScroll code or cursing Jekyll!

An interactive crosshairs component for D3

by Andy Aiken, on 29 Sep 2014 Andy Aiken

In my last article I put together an interactive chart that could be panned and zoomed, but there was one obvious omission - crosshairs. In this article I'm going to create a D3 crosshairs component, and show you how to add it to a chart.

Swift and the curious case of AnyObject

by Colin Eberhardt, on 24 Sep 2014 Colin Eberhardt

Swift, as I am sure you are aware, is quite a strict, safe and strongly-typed language. However, because the language needs to maintain Objective-C compatibility it has some rather curious features, and the behaviour of `AnyObject` is one of them!