Blog

Our thoughts on technology and design

UX Design
An examination of the current state of in-car UIs, and how Apple, Google and Tesla are significantly shaking things up.
Tech
My previous blog post took a first look at ReactiveCocoa 3.0 (RC3), where I described the new Signal interface, and the pipe forward operator. In this blog post I continue my exploration of the RC3 APIs and turn my attention to signal producers. I also discuss a few points around the overall clarity of the new ReactiveCocoa APIs.
Tech
This blog post takes a look at the new ReactiveCocoa 3.0 swift interface, which introduces generics, a pipe-forward operator and an interesting use of curried functions.
Tech
This post shows how 'single file generators' can be used to generate type-safe email templates
Tech
A few months ago Facebook announced React Native, a framework that lets you build native iOS applications with JavaScript. I've been spending the past couple of months building am app with this framework, which I have finally been able to share!
Tech
I've been building a React Native app for the past few months, which was published as a tutorial yesterday. A number of people have asked about my thoughts and opinions about React Native - which I am sharing in this blog post.
Tech
When it comes to coding style in JavaScript, what makes most sense - one var declaration, multiple at the start or scoped?
Tech
ZeroMQ is an opinionated, light weight, blazing fast messaging library. Here I take a look at how to get up and running with it and the building blocks it provides you with.
Tech
For some reason, everybody and their dog has written about how to parse JSON in Swift. Not wishing to be left out, I thought I'd throw my hat into the ring.
Tech
A quick run through of the steps involved in integrating a Node.js client with Active Directory Federation Services for authentication using OAUTH2.
Tech
Localising a web application to a high standard is difficult. Why is that? Consider the following differently formatted numbers...
Tech
I'm relatively new to the world of single page applications and have just finished a project built using AngularJS.
Tech
This blog post explores the novel approach taken by the React.js team, where the UI is expressed as a function of the current application state, and re-implements it with Swift.
Tech
Avoiding broken promises with WebDriverJS - a quick guide to avoiding some of the framework pitfalls.
Testing
When Malcolm Gladwell wrote a book called Blink about the power of the subconscious in 2005, a heuristic was named for it. Read on for how blink testing works, and some further thoughts on how other ideas the book contained can influence your testing.
Tech
I have recently been using a set of tools called fastlane, developed by Felix Krause. fastlane helps to automate the steps involved in building and deploying iOS applications to the App Store.
Tech
I mentioned in the previous post that I would create a plugin for less which converted from LTR to RTL. Here is a tutorial post on creating that plugin.
Tech
Some languages of the world (Arabic, Hebrew etc.) are RTL, meaning they are read right-to-left, instead of left-to-right. Typically in web applications supporting one of these languages, everything is reversed, meaning scroll bars, progress indicators, buttons etc.
Tech
Swift has access to all of the Objective-C APIs, which means that anything you could do with Objective-C you can now do with Swift. However, there are times when it is worth exploring a better, pure-Swift, alternative. This post explores the pros and cons of KVO versus a couple of Swift alternatives.
Tech
Swift does not have a built in eventing mechanism. This post explores a few different ways events can be implemented in Swift and how to avoid problems of retain cycles and closure reference equality.

Authors