Magical adventures in nerdery.

Galway Bus RTPI API

The website has access to real-time data for the Galway Bus √Čireann transit system. Unfortunately, this data is not officially accessible to developers, and is in a weird, proprietary, JSON-ish format. The aim of this project is to provide a simple API to access this data, returning it in a valid JSON format. It was also a good excuse to finally learn how to use node.js :)

A couple of notes/caveats:

Live demo available at

Source code available on Github. Please feel free to send pull requests!

Usage -----


Lists all the available bus routes in the Galway transit system. This list is hard-coded and would need to be updated manually, should the routes ever change.

Returns a list of stops on a given route. Use the timetable_id retrieved from the routes.json API. In the reponse, the stops key will contain all stops, separated into two arrays — the separate arrays represent the opposite directions taken by the bus on the route.


Lists all the available bus stops in the Galway transit system.

Returns a list of departure times for a given bus stop. Use the stop_ref retrieved from the stops.json API.


Lists all the available bus routes in the Galway transit system, including links to their PDF timetables on the Bus √Čireann website. This list is hard-coded and would need to be updated manually, should the routes ever change.

iOS Developers Need to Know Objective-C | Big Nerd Ranch

The Swift language lets the compiler do more work for the programmer.This is great—less typing for the programmer, right?—but it means thatwhen you look at a line of code, it won't mean much without a deepunderstanding of the context in which that line lives. Explicitlanguages are easier for beginners to understand.

So far, I've found Swift to be a tricky language to grasp from reading code samples alone. However, writing Swift code against frameworks I'm already familiar with through Objective-C, has proven much easier.

Aaron Hillegass literally wrote the book on Objective-C, so he should know.

Dynamics, Transitions, Animations

As a follow-on from this post, I wanted to link to a few excellent articles that run through my favourite additions to the iOS SDK —the majority of which were added, or vastly improved, in iOS 7.

Actually, that entire "Animations" issue of is well worth reading, if you haven't already checked it out.

iOS 7 Squandered a Year of Third-Party Development on Superficial Changes

I'm frustrated with the current state of affairs on iOS. It's beenalmost a year since version 7.0 was announced, yet as a developer Ifeel like a year's worth of work has brought about only superficialchanges to the apps I work on and the apps I use…

It's been a frustrating year for iOS devs and Jared Sinclair sums up perfectly my own feelings on the matter. I disagree, however, that the aesthetic changes were "unnecessary"— there's never a good time to perform a UI overhaul. At least with that now out of the way, Apple can focus on making the OS even better. I have high hopes for iOS 8.


BBUDebuggerTuckAway - Xcode plugin for auto-hiding the debugger onceyou start typing in the source code editor.

Awesome! Get it using Alcatraz.

Exposing NSMutableArray

Inserting object at index 0 uses the circular buffer magic to put thenewly inserted object at the end of the buffer[…] This is fantasticnews! It means that __NSArrayM can be processed from either side. You can use __NSArrayM as either stack or queue without anyperformance hits.

This is a fascinating deep-dive into how NSMutableArray works.

Castro's playback scrubber

Castro is an exercise in bold restraint. It eschews buttons whereverpossible in favour of gestural interactions allowing the screen deferto the content, rather than the controls.

Castro is my go-to app for playing podcasts and I use it literally every day. This article shows the ridiculous amount of thought and hard work that goes into creating just a tiny, but crucial, part of the app.

How to write an app press release

Dan Counsell has some great tips on writing a press release for your app. He's even created a press release template on Github to get you started.

Free embeddable fonts for iOS apps

Want to spruce up your iOS app with a non-standard font? Dave Addey explains how, using free Google Fonts.

Most apps to be considered financial failures by 2018

Fewer than 1pc of consumer apps will be considered financial successesby their developers, technology analysts at Gartner predicted in areport released today.

While this sentiment does ring true, I had to laugh at the closing paragraph:

Future developments are also seen in the continuing development of HTML5, which Dulaney predicted will change the smartphone market froma restricted one operating system-only ability to a multi-platformmodel.

HTML5 has been "almost there" for several years now, so you'll have to forgive my skepticism. It's in danger of becoming the new "year of linux on the desktop".