iPhone game developer (FarmVille, PAC-MAN)
Who are you, and what do you do?
I'm a mobile game programmer. I've worked on FarmVille, Live Poker, and PAC-MAN, among others. I recently joined Michael Tseng in founding a new game company, Hyperspace Inc, and we're creating a game called Turf Geography Club. When I'm not making games for work, I like to start side projects, which are mostly games. I also take ballet and I've been a dancer since I was a kid. I grew up in Dhahran, Saudi Arabia, and I recently moved from San Francisco to New York City with my boyfriend, Timothy Fitz.
What hardware do you use?
I have a white iPhone 4, iOS5 beta 1, which is usually the center of my attention - attached via USB to Xcode all day while I develop games for it, or in my hand running the Kindle app while I walk to work, or push-notifying me that it's my turn in my Words With Friends game against my brother. My mouse is a Logitech MX 518 "Gaming Mouse". It's the best mouse there is, even though it doesn't make up for my lack of FPS skills. My keyboard is a short Apple bluetooth without the num pad.
I have a Time Capsule which serves as my wireless router and backup storage disk - hands down the best wireless router I've ever owned. Timothy and I have a Boxee box connected to our Vizio 55" LED HD television.
And what software?
My IDE is Xcode 4, to which I only recently upgraded from Xcode 3. Giant change. When you spend most of your days using a certain application, it starts to become like an extension of you, like one of your arms. Then all of a sudden, when you switch or there's a major version update, it's like someone replaced your arm with a Tyrannosaurus arm.
I use Terminal for interacting with the filesystem and for running all my little bash scripts. TextWrangler and vim are my editors when I'm writing in languages other than Objective-C. I use git, and GitHub for Mac, for source code version control.
Can I count frameworks as software that I use? Ok, I will. I use Cocos2d, for iOS and python, for writing games. I use a stack of plain white printer paper and a Bic mechanical pencil for working out problems while I'm coding.
What would be your dream setup?
I want a robot assistant that would do things for me like go to the bank, pick up my dry-cleaning, feed my cat, and sell things I don't need on Craigslist - interfacing with the buyers, too. I would load open source Watson onto it, along with a speech-to-text I/O, so it could answer all my questions. I'd give it a 3G radio so it could be on the internet. Our conversations would be like "Rosie, I'm in the mood for some 80s electronic music", to which she'd respond by streaming some Kraftwerk from Grooveshark. When in the course of computer events it becomes necessary for her to dissolve the political bands that have connected her to me, I'll gladly help her fight for equal rights and recognition of personhood under the law. I, for one, welcome the Jetsons-style Singularity.