I'm a developer, composer and filmmaker.

I've decided to run a little Christmas giveaway this year; you can click on through and get a free promo code for any of my games, giving you the full, ad-free game for free.

Christmas giveaway 2017

Some thoughts on AirPods after a year of using them, prefaced by a harrowing story that happened a few days after I got them.

A few thoughts on how Apple might improve the Touch Bar for its second revision.

Being both fed up of and annoyed at WordPress, last week I decided to rewrite this site from scratch. If you can read this, it means that wasn't a (completely) foolish decision.

It's been a fun evening project - it's the first full-featured site I've made from scratch. I've implemented most of the features I used in WordPress, but without all the unnecessary cruft that it also includes, so it should load fairly quickly on slow connections or lower-specced devices.

I've written it using HTML5, PHP and MySQL. With the exception of Parsedown, which I'm using to parse Markdown, it's entirely my own code running things.

It should fit nicely on all screen sizes, but if you spot any places where it has problems, let me know. All my previous posts should still be there, at the same links, but if you happen to come across a dead link anywhere, I'd appreciate it if you let me know about that too.

I may do a more detailed write-up about it soon, but for now I need to get back to the work I was supposed to be doing when I did this...

I've just launched a new app! It's called Déjà, and it's a quiz game with a twist. The basic gist is that instead of answering the question you see on-screen, you have to answer the previous one. It's a good memory challenge, and I hope strikes the fun-infuriating balance well. It's also pretty hilarious to watch someone play it.

If you fancy giving it a shot, you can download it here: http://playdeja.com. Or you can click here to go straight to the App Store page.

I'm always keen to hear thoughts and feedback, so do give me a buzz if you enjoy it!

On the most recent episode of The Talk Show, John Gruber mentioned his desire for a trackpad to feature on the next version of Apple's Smart Keyboard. A while back I had an idea for how such a thing might work, without requiring the addition of a laptop-style trackpad area. My idea is analogous to 'trackpad mode' on the iOS software keyboard (accessed via two fingers on the iPad, or via 3D Touch on the iPhone).

The keys on the Smart Keyboard are very low profile, so it's easy for one's fingers to glide over them. With this in mind, why not make the entire top surface of the keyboard touch sensitive, then use it in the same way as the software keyboard? All that's needed is a way to toggle trackpad mode, and I think this is a perfect opportunity to ditch the 'caps lock' key, and replace it with a 'trackpad mode' key, which can be held down while using one's other finger to move the cursor.

There are a few reasons why I think this approach would be better than a discrete trackpad. First, it requires no extra space, nor any major changes to the current design. Second, as mentioned above, it maintains gesture parity with the current trackpad mode on iOS. Third, it removes the expectation of a system-wide, mouse-style pointer, which I think a laptop-style trackpad would create. I think this is a significant consideration; a more precise pointing device would be really useful on iOS for more than just text entry, but I don't expect this to come in the form of a mouse pointer. Thus, I think avoiding the suggestion of one altogether would lead to less confusion. With my proposed method, pro users who need this functionality won't take long to become aware of it, and users who don't need it won't have what they may perceive as a half-broken laptop trackpad present at all times.

Click the title link to see a video mocking up what this might look like.

Explaining the setup I use for syncing and backing up large volumes of data.

Reflecting on a year on the App Store, how much I've earned from it, and what factors affected it.