iPhone Application Developer Interview
Writer of Baby Tracker: NursingQ: You wrote Baby Tracker: Nursing. How long did it take you? How many lines of code is the program? Written in what language?
What started out as a pleasant chat with someone who was writing some
iPhone applications has rapidly blossomed into an extraordinary outpouring of interest from the iPhone developer community. As a result, I've decided to run a series of developer spotlights, probably 20 or more, over the next few weeks. It'll offer you insight into the time involved, complexity and rewards of developing a game or utility for one of the most interesting software sales environments on the planet: the Apple iPhone. I hope you enjoy the series!
A: Baby Tracker: Nursing has ~2,500 lines of code, and I've spent over 100hrs creating the application. Baby Tracker: Nursing was written in a language called Cocoa (Objective-C) which is an Object-Oriented that extends the C language. You can get all the technical information here.
In layman's terms it is simply the language used to write all Mac OS X (Apple's OS) and iPhone applications.
Q: Tell us a bit about the application, including your target market and what problem or problems your application solves?
A: Moms have a lot to remember when bringing a new baby home. The stress of caring for a newborn, the sleepless nights, along with keeping track of breastfeeding sessions can be overwhelming. Baby Tracker: Nursing, a new app for
Baby Tracker: Nursing allows mom to easily record important details of the nursing session including the duration, and side nursed on (or both) while always noting which side was nursed on last. This complete nursing history is permanently stored in daily logs for future reference and doctor's visits.
Toss out your lists, notebooks, stop watches, safety pins in bras, extraneous ribbons and bracelets! Since your iPhone or iPod Touch is always with you, a complete detailed nursing history is only a click away.
Baby Tracker: Nursing is a real time tool and available on the iPhone App Store.
Q: The iPhone Software Development Kit has been written about quite a bit, but I'd like to know your opinion: was it easy to get up to speed with this SDK? Is it sufficiently complete that you weren't stumped as you developed your application?
A: Apple has a NDA (Non-Disclosure Agreement), which makes it hard for developers to talk much about the SDK (Software Development Kit). Because of this, information is sometimes hard to come by and can make programming difficult. Unfortunately, there are not many ways to find solutions or help. Apple does, however, supply excellent documentation, videos and examples, and also provides the SDK for free. This is a great way to start learning how to develop for the iPhone; all you need is a good idea, lots of free time, and obviously a Mac computer...which I find to be the best computer out there (but I digress...) There are also lots of great online resources and books available to learn Cocoa.
To create applications for the App Store, either free ones or those for purchase (70% goes to the developer /30% goes to Apple) you must pay $99/yr to be a developer. This will then allow you to install your application on your iPhone or iPod touch for testing as well as attaining the ultimate goal of getting your application out to the world.
Q: Tell us about the experience of submitting your program to the iPhone Application Store and how long it took to gain approval. Did you have to demonstrate that you weren't accessing external data like the Address Book?
A: The experience was a lot better than I expected: just a lot of specific directions and steps to go through to make sure everything was in order. I heard rumors of the process taking over a month, but for Baby Tracker: Nursing it took less than a week. You do need to fill out a contract before you are allowed to sell your products so I recommend doing that as soon as possible since that did take a few weeks to approve.
As for demonstrating what the application does or what APIs it uses, Apple only wants to know if you are using encrypted information because they are selling Applications globally. Baby Tracker: Nursing uses its own database to store the information. Baby Tracker: Nursing does not use the internet or other external protocols so it is a fairly straightforward Application.
It was very exciting and rewarding to see Baby Tracker: Nursing live on the App Store! Reading the comments by mothers who are against timing is interesting but I would prefer it if the comments section was not used like a debate forum to give personal opinions about one's individual nursing beliefs. It would be much more useful if the postings were real reviews by people who actually purchased the application and then gave their critiques.
Q: Did you create all the graphics yourself or contract with a designer to make the look-and-feel of your application?
A: Yes, I created all of the graphics for Baby Tracker: Nursing. I have a graphic design background, which helped immensely in this department. I think Apple sets a very high standard with the iPhone and it is important to create easy to use applications, and also ones that are enjoyable to look at.
Q: Are you inspired to write more iPhone applications now that you've released Baby Tracker: Nursing into the wild? What's in the pipeline?
A: I have lots of new ideas in the pipeline and I am currently working on a new iPhone app that I hope to have out in the next few weeks. I think eventually the App Store will be flooded with Applications and it will be difficult to stand out from the crowd, so I'm working hard to get quality products out as soon as possible.
Q: What's your day job anyway?
A: When I am not working on Baby Tracker: Nursing I am a User Experience Lead in Web Design and Development for a Fortune 500 company.
Thanks a bunch, Darren, for being our first featured iPhone application developer in the spotlight series! If you're interested, I also have a companion interview on my parenting blog with Darren's co-developer, Heather Bancroft, which you can find here: Why track your nursing schedule?. Finally, if you're an