One-on-one with Nick Maher: the Aussie iPhone developer behind TripView

Nick Maher: by day a financial solutions programmer and by night the mind behind the TripView iPhone app
The TripView iPhone app.

The TripView iPhone app.

An increasing number of companies, such as Australia's Collect3, are dedicated to iPhone development. Not all developers have the resources of a whole company behind them, however. Many toil away at iPhone apps as a hobby outside of work hours, using little more than their home computer and iPhone. This doesn't mean that their apps are poor quality, however: some of the best iPhone apps have come from solo developers who have a good idea.

One such developer is Nick Maher: by day a financial solutions programmer and by night the mind behind TripView, a public transport schedule and route planning app for Sydney iPhone users. We have a chat to Nick about his company, Grofsoft, TripView and how he juggles iPhone development with daily life.

Can you tell us a little about yourself and what got you into programming for the iPhone?

I work as a programmer in the finance industry, mainly on applications related to real-time market data. I've also spent some time working in the games industry, and I like programming just for fun — I started off on a Commodore 64 back in the early 80s, and I've kind of been addicted to it ever since.

I bought an iPhone last August mainly to write software for it. I was really impressed by what Apple had done with the App Store, and it looked like it was going to be an exciting platform to develop for. I had an existing mobile application (TrainView), and thought that I'd have a go at porting it to the iPhone.

What is the inspiration behind the Grofsoft name?

There wasn't much inspiration behind it to be honest — I'm hopeless at coming up with names! I needed to register a domain name back in 2003, and was stuck for ideas, so I ended up naming it after one of my characters in EverQuest, an online game I was playing at the time.

Grofsoft and iPhone app development isn't your full-time job and yet you are able to update and provide support for your apps. How do you cope with juggling both commitments and how has this affected your development schedule?

I don't have as much time to work on TripView as I'd like, but I try to do a little bit each day just to keep it going. A lot of it is actually written on the train. I travel 45 minutes on the train morning and afternoon, and I've found it's a pretty good development environment. There are not too many distractions: I don't have Internet access on my laptop, and there's nothing else to do, so I can usually just put on some earphones, zone out, and get some work done. Also I have an awesome wife who puts up with me spending too much time coding at home.

Page Break

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.

Page Break

Have you experimented with the iPhone 3.0 beta? If so, what benefits do you see for your work, and what do you see as the biggest development for users?

I've only just recently installed it. I was kind of worried it would screw up my development environment, but apparently Apple is now checking app submissions against 3.0, so I've had to bite the bullet it and install it just to make sure TripView runs okay. I don't think there are any features that I really need for TripView, but I love the new spotlight search feature, and cut and paste and tethering should be handy too.

Do you see Grofsoft moving into other areas in terms of iPhone development, or sticking to the public transport area? Are you planning to expand TripView's coverage to other Australian areas?

I would like to try something totally different, but I think TripView will keep me busy for a while. I might add support for other cities once I'm happy with the functionality in the Sydney version, but Sydney is my main priority right now. There's also the maintenance side to consider: the actual parsing is all automatic, but it does need to be updated whenever the timetable format changes.

Many programmers are eager to get into iPhone app development for financial reasons. Is this the main motive behind TripView?

Not so much. It's a really nice side effect, but mainly just it's my hobby and I do it for fun. It's also quite rewarding getting feedback from people who find it useful.

Do you see the Australian iPhone development community as a particularly strong one? How do you think it compares with communities elsewhere?

I'm not sure how it compares with international communities, but I did get a chance to go to the iPhone developer day last year, and if the turnout there was anything to go by there are a lot more Australian iPhone developers than I would have guessed.

Finally, for those who are trying to get into the iPhone development game to make a quick buck, what is your advice? Is there pot of gold at the end of the rainbow or is it just a few exceptions to the general rule?

You probably want to build something that you can sell globally if possible. My app has a limited market (Sydney), so while I'm happy with how it's doing on the Australian App Store, I'm not going to be able to retire anytime soon!