Featured Articles

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?

A Colour Analysis of the Apple App Store

on 12 Apr 2014

This blog post presents the result of analysing 250,000 screenshots from the Apple App Store, looking at hue, lightness and saturation histograms for each category.

A Statistical Analysis of the Apple App Store

on 20 Mar 2014

The App Store continues its rapid growth, with approximately 300,000 apps added each year. I decided it would be fun to download as much app metadata as possible in order to see what patterns and trends I could find. This blog post describes the results.

Developing large scale KnockoutJS applications

on 28 Feb 2014

It's easy to get started building data-bound user interfaces in the browser using the KnockoutJS MVVM library. This post covers some practices and techniques that help with using it successfully in large single page applications.

Arrow functions in Knockout.js

on 28 Feb 2014

Recently, Knockout’s original author Steve Sanderson released a plugin called knockout-projections which optimises the performance of the observable array methods filter and map. In this post, I’ll take a peek into the future by combining this plugin with the forthcoming ES6 arrow functions to produce some very terse and...

On Running a Code Club

on 04 Dec 2013

Scott Logic have been helping out with a Code Club at a local primary school. As one of the developers involved, I'd like to share my experiences and tips for running your own Code Club!

Latest Articles

Functional Reactive Programming with Bacon.js and D3

by Dan Gorst, on 23 Jul 2014 Dan Gorst

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.

MVVM with ReactiveCocoa

by Colin Eberhardt, on 07 Jul 2014 Colin Eberhardt

I've recently had a two-part tutorial published on Ray Wenderlich's website that details how ReactiveCocoa can be used to implement the MVVM pattern within iOS applications.

Swift Sequences and Lazy Evaluation

by Colin Eberhardt, on 26 Jun 2014 Colin Eberhardt

In this blog post I want to take a quick look at the Swift Sequence protocol, which forms the basis for the for-in loop, and see how this allows you to write code that performs sequence operations that are only evaluated on-demand.

White Paper - HTML5 At Enterprise Scale

by Colin Eberhardt, on 19 May 2014 Colin Eberhardt

Moving from desktop or plugin technologies (Flex, Silverlight, Java Applets) to HTML5 is a challenge for developers of large-scale enterprise applications. This White Paper discusses the challenges and offers potential solutions.