Developer Spotlight: James Thomson of TLA Systems
TiPb's developer spotlights are like DVD/iTunes Extras for the App Store -- a weekly look behind the scenes at the programers and designers that bring you the iPhone, iPod touch, and iPad apps and games you love. This week Rene talks with James Thomson of TLA Systems, and PCalc fame.
What's your name? James Thomson
What's your company called? TLA Systems - and yes, that does stand for "Three Letter Acronym". It was originally a fake company name I made up with friends to get us into trade shows while we were still students. I kept using it, and now it's a real company employing myself and my wife.
Where are you located? We're based in my native Glasgow, on the west coast of Scotland. It can be a bit dark, cold, and wet, but I wouldn't want to live anywhere else - you need the dark to appreciate the light.
What's your Twitter handle? I'm @jamesthomson - that's my personal account, but I tend to use it for work too.
What other apps do you currently like? NanoStudio is great for writing music on the move - it's more powerful than GarageBand in many ways, and runs on my phone. I'm not really a musician, but I do enjoy tinkering. Shazam still seems like magic to me - it's invaluable for identifying background music on TV and in shops. RedLaser is the best app I've come across for barcode and QR code scanning. The Chambers Dictionary and The Chambers Thesaurus apps are also both very good. I'm also still playing Game Dev Story - it's a game all developers and journalists should play!
How long have you been developing? Almost 20 years - I started programming Macs while I was at university, and have been doing it professionally for at least 16.
How long have you been developing for iOS? Since the very first iPhone SDK was released - three years.
Do you do any mobile development besides iOS? Just the Mac. The two are similar enough that i can keep both in my head at once.
What kind of rig do you use for developing? I do almost all of my development on a 3GHz eight-core Mac Pro with a 24” LG L245WP LCD monitor, and everything else on a very broken white second-generation 2GHz MacBook which needs a complete set of new plastics. Plugged into that currently is an iPad 2, an iPhone 4, and a 2nd-generation iPod touch.
What personal iOS device(s) do you use My iPhone 4 is my main phone, so I use it throughout the day.
Do you use any non-iOS mobile devices? Not sure it counts, but I still have a 4th-generation iPod nano which I use mainly for listening to podcasts and audiobooks when I'm out and about. I like the physical controls, and it doesn't break when I drop it. The iPhone has replaced everything else.
What's your favorite thing about developing for iOS? Well, if I'm honest, I'd say it's the fact that it's possible to make a living doing it! But I think it's having a physical device in my hand - it's a very different feeling to developing for the desktop. And iOS is a very nice platform - more modern than Mac OS X in a lot of ways.
What's your least favorite thing about developing for iOS? It's something of a cliché I know, but it's always the approval process. I certainly agree with it in principle, but it adds a layer of uncertainty which can make submitting apps a very nerve-wracking process. We haven't had any big problems or rejections so far, but I always hold my breath when pushing the button.
What feature would you most like Apple to add to the iOS 5 SDK? It's minor, but I'd like the ability to support hardware keyboards with PCalc - at the moment it's not possible to use a external keyboard with an app that displays its own onscreen keyboard. Actually, the real feature I'd like to see is support for the Apple TV - I'd love to develop a new app for my TV.
What feature would you most like Apple to add to the App Store? As a customer, I'd like to be able to sort by some metric of "quality" rather than just popularity. A lot of apps with really bad reviews stay in the charts for some reason, and I'd like to be able to filter them out. Of course, since PCalc gets a lot of good reviews, that wouldn't hurt me as a developer either!
*When something goes wrong while you're coding, ** I'd like to say that I swear entirely in obscure Scots, but in truth it's all very traditional and Anglo-Saxon. It also depends if I'm on my own in the office...
What do you do when you're not coding iOS apps? I like to get away from computers, but generally don't get too far away from screens in some form. I try to get to the cinema at least once a week, and I play a lot of video games. But my ideal would be to spend time with friends!
What should we look for from you next? A gentleman never tells... I'm currently putting the finishing touches on a small PCalc update for iOS, to be followed by a corresponding Mac update soon after. After that, I'm hoping to select the "New Project..." menu item in Xcode for the first time in a good few years. Like many iOS developers who play games, I keep thinking I could write a small game myself, but that's probably not the best plan given how many other excellent games there are out there!
[gallery link="file" columns="2"]