Posts from 2012

Dec 19, 2012

Remian: a modern virtual machine

Anyone who follows me on Twitter has probably read that I’m building a virtual machine of my own, named Remian. I’ve reached v0.1.1 and an initial release, so now is the perfect time to talk about why you should try it.

Continue reading…

Nov 14, 2012

Two weeks with Go: an initial review

As someone who grew up with scripting languages, C and it’s closer brethren always felt incredibly backward. The result of all their decades of history seems to be that obscure compiler flags and awkward syntax are an affectation of the entire community. I don’t care for it, much as I like how fast the code can execute.

Continue reading…

Nov 1, 2012

Building services with iMessage

Earlier this year, David Kendal and I discovered you can fairly easily send and receive iMessages using Ruby. The key is to interact with OS X’s Messages app, more specifically it’s AppleScript bindings. We built and released iREPL, a Scheme programming environment that you can use on your iPhone/iPad without having to jailbreak. I’ve been using it for months when I fancied hacking some Lisp.

Continue reading…

May 1, 2012

On efficiently pairing socks

Anyone who has done an appreciable amount of laundry has probably noticed the time commonly taken matching up socks of different styles and colours.

My efforts to optimise the process have led me to the curious practice of un-matching: making pairs of socks so as to deliberately not be a matching pair. It’s much faster, much simpler to compute and yet because there is a process behind it you have a defence against allegations of laziness.

Continue reading…

Apr 13, 2012


A couple of months ago, whilst playing with Messages Beta for Mac, it occured to me that it’d be a lot of fun to programmatically send messages. After I built a basic, insecure Ruby Shell for iMessage, David Kendal decided to rebuild it and switch to Scheme - for which a secure sandboxed version existed in the form of Heist.

Continue reading…