You have released applications with CityRail schedules for three different platforms — is there a particular reason?
It's kind of just evolved from one app to the next. Back in about 2003 I was interested in routing and graph search algorithms, so I wrote a CityRail timetable parser and a route calculator to find the shortest paths between stations. It was running on both Windows and PalmOS, but the Palm version was never really polished enough to be released. I added a CityRail screensaver later and released it as TrainDB.
TrainView came a few years later when I was learning J2ME [Java 2 Platform, Micro Edition]. I'd just bought a new Sony Ericsson phone, and thought that having the CityRail plasma display on it would be a neat gimmick. TripView was kind of the next logical step — there was a lot of buzz about iPhone applications at the time, much more than I'd seen with J2ME apps, and I thought it would be cool to be a part of that.
There are lots of J2ME apps available, but I don't think that the average user really bothers to download many of them. It's way too hard — you need to visit an external site, download a JAR file, and the payment process is different for every vendor. I think Apple has done an excellent job of streamlining the whole process and making it easy for the end user.
The other nice thing about iPhone development is that there's a massive target market, and a very small number of different hardware devices. Compare this to J2ME, where every handset is slightly different, and you need to deal with different screen resolutions, different fonts, different performance characteristics. Each device has its own set of features and its own set of firmware bugs. It's no fun trying to track down a crash that only happens on a customer's phone when you don't have access to the physical device. There are emulators but they vary in quality and can't always reproduce problems that happen on the real devices.
What do you see as the biggest obstacle to contributing and interacting with the App Store in terms of pricing, competition and working within Apple's guidelines?
My experiences with the App Store have been quite positive so far, and I don't really have much to complain about. It would be nice if the turnaround time for application approval was a bit faster. It's kind of a worry that if you need to push out a fix for a critical bug, it still takes about a week before you can get it approved. Overall I'm pretty happy with it though; I think the good things far outweigh the bad.
You received a fair amount of attention in the media a few months back in regards to conflicts with CityRail over your use of its timetables. How has that affected the reception of TripView and its uptake by iPhone users?
I don't think it had that much effect, because I didn't have any applications for sale at the time. I did get a bit of Web traffic, so that might have helped to boost awareness, but when I did eventually release, my sales were initially quite low.
After the first week or two, they dropped off almost to nothing, so I made it free for a week, then followed it up with a Lite version. That seemed to make a big difference. I think having a free version that people can evaluate is really important — at least initially.
Has your full version of TripView been affected by the "race to the bottom" in App Store pricing?
Sort of. I priced it initially at $2.49 because that was the price point for most of the other CityRail applications. It did seem a bit cheap, considering I had been selling TrainView for $10. But TripView is currently selling more units each day than TrainView has sold in the last six months, so it's worked out ok.
Now that CityRail has become more open to others using its timetabling information, do you see room for competition from other individuals or companies or even from CityRail itself?
Sure, and I think this is a good thing. There's already a handful of CityRail applications, and some of them are very impressive. Having some competition keeps me motivated to improve my app, and I'm sure it's the same for the other developers. I'm not sure whether CityRail is planning its own app or not, but this would be interesting to see. Another one to watch will be Google Transit.