iOS app development and PHP web development aren't just my job; they're also my hobby. As well as the apps I've built in my spare time and the work I've done commercially, I spend a lot of time on the various projects listed on this page. These vary from podcasts to coding, and APIs to voice control hacks. I try and give back to the development community so you may find my GitHub profile useful for code samples and downloads. If you have any questions about my various projects, please get in touch.
In 2022, I decided to start a fortnightly newsletter to help me focus on some of my own app ideas and projects I'd been neglecting. Every issue, I show a roadmap for the various things I'm working on as well as revealing the thought processes that convert an idea into a digital reality. There are also exclusive early access invites for my new apps along with interesting links related to the topics I discuss.
Subscribe now - it's free! »
In 2019, Apple released an updated version of their TV app for iOS, macOS, and Apple TV featuring an all new design where artwork for TV shows and movies was displayed as 16:9 rather than the 1:1 squares they had been using in iTunes. Over the summer, I received a lot of emails asking when my iTunes Artwork Finder would be updated to support this new artwork and I'm happy to say that this is the result.
This new tool not only fetches the new 16:9 artwork used in iOS 12.3 and macOS Catalina, but also fetches a whole host of extra high resolution artwork from ultrawide banners and background imagery up to PNG logos and parallax files.
Use the Apple TV Shows & Movies Artwork Finder »
Spatial Audio is one of the killer features of Apple Music, but it is not easy to discover which songs have been updated. Apple provide a number of Spatial Audio playlists that get updated every so often and you can see on an album-by-album basis if all songs have been updated or not, but this does not cover a huge swathe of tracks and is very slow to check. I've therefore built a system which constantly scans Apple Music looking for updated tracks and then added them to my own database to make them easily searchable. The Spatial Audio Finder is the only way to quickly see which of your favourite artists tracks have taken advantage of this improved audio feature. I also tweet any upgraded tracks via @NewSpatialAudio.
Use the Spatial Audio Finder »
I have a large number of TV shows stored in iTunes but not all of them were purchased there. The only issue I've had is that I lacked hi-res artwork for each show to display on my Apple TV so I knocked up a script to pull the artwork down from iTunes. Whilst this project was originally for TV shows, it gained so much popularity that I've updated it to include movies, iBooks, app icons, podcasts, and music albums along with searching across international iTunes stores.
Use the iTunes Artwork Finder »
The #1 request I get from people using my iTunes artwork finder is to find a way to retrieve the playlist artwork from Apple Music. I've finally found a way to do it and present this new tool that lets you enter an Apple Music URL to retrieve the artwork in incredibly high resolution. I also added the ability to fetch artwork for albums and radio stations.
Use the Apple Music Artwork Finder »
In January 2017 I started doing a fortnightly podcast with Jason Kneen on the topic of freelancing and our shared passion for Apple products and design. Each show is 1-2 hours long and covers a variety of topics including recent news and discussions about our freelance life. New episodes launch every other Wednesday - you can also follow us on Twitter via @thecheckedshirt.
Subscribe via iTunes | Listen online with Overcast
In April 2016, I started doing a fortnightly podcast with Dr John Wordsworth on the topic of co-operative video games. We play games with each other regularly and now we'll be publishing game reviews specifically from the co-op and multiplayer point of view. New episodes launch every other Sunday with a full list available at connectingtohost.com - you can also follow us on Twitter via @CTHCast.
Subscribe via iTunes | Listen online with Overcast
I had always assumed that there was an API for Wikipedia that would allow you to search for entries based on geo-location information. It turns out that there is such a service (from a 3rd party) but it is woefully out of date and contains less than a fifth of the geo-coded data that is available on Wikipedia.
I intended to change that.
WikiLocation is a full REST-ful API service for developers wishing to search for Wikipedia articles by location. The data is gathered by downloading the Wikipedia database on a weekly basis and then parsing all of the geocoded entries. This data is then stored in a database where it is able to be accessed via the API. At present, there are almost 1 million entries from en.wikipedia.org and this number increases every week (at a rate of about 3000 entries). Over time, I will be adding support for other languages provided by the various Wikipedia locales.
In addition to searching via location, you can also search via the venue and spot IDs of the two most popular geo-location networks; Foursquare and Gowalla as well as by Yahoo! WOEID. I will be adding other networks as and when they become available. There is also the ability to download a full MySQL dump of each of the 37 locale based databases that power WikiLocation.
Ever since the Transport For London site was updated, I've wondered why they didn't provide a basic way of accessing their data which so many developers could make use of. I expected that they would have an RSS feed of the tube status updates but instead the only way to access this information was through a set of pre-built widgets. Not any more!
I created a full REST-ful API service for developers wishing to get better access to the TFL data on tube updates. The data is gathered using a custom built crawler (codename 'lemmiwinks') which scrapes the TFL site every minute of every day. This data is then stored in a database where it is able to be accessed via the API. I've been storing every single update since 1st Jan 2009 which should allow people to build some great apps whilst being able to look back over historic data (e.g. you could build a graph to show reliability for each line)
If you have an iPhone 4S, you may want to take a look at SiriProxy-TubeUpdates, a SiriProxy plugin I built that allows you to ask Siri for the latest updates on the London Underground.
In 2006 I spent a fair amount of time playing around with writing extensions for Firefox. Since then, I've written a few more and also written extensions for Safari 5 and Google Chrome. These vary from extensions to help identify fonts to those that replace your 'stop' button with MC Hammer (downloaded over a ½ million times and I was sued by Hammerman himself - bonus!)
jTARDIS is a jQuery plugin I wrote which allows you to see what sites a user has visited by going back through their browser history. This highlights a fairly major security flaw in modern browsers today.
phpMyOpenID is a simple to use install routine I wrote for the popular phpMyID library which allows you to host an OpenID server on your own hosting package. This project is no longer maintained but may be useful to someone!