Developing for the iPhone

Published on November 16, 2010 by Toran Billups

I've had an iPhone for 3 years now and finally got the urge to write my first application for it recently. I have no professional experience with c based languages and for some odd reason I was afraid to do memory management and pointers. But sometime last month I decided to learn something outside of my comfort zone and objective-c is just the language to get me thinking again.

If you asked me what I thought about mobile platform development a few months ago I would have said that I prefer web development because developing for iPhone/Android/Palm/WP7/RIM is a rewrite of the code base per platform. But then I came to realize that people are using these devices as their primary computing platform. And if your content or application isn't available on these devices you don't exist.

So with that said I decided to start learning the objective-c language, Cocoa Touch, and how to be productive in Xcode. In the future I also plan to develop for the Android platform as it's the number 2 player in my mind. But at this point in time I think your average consumer would buy an iPhone over any other device if they had the option. And if this theory is true, why not develop for the best platform first?

In the coming months I hope to learn the objective-c language in depth. In the past I've spent time learning more about platforms than programming languages but this time around I want to really grok the language. I plan to blog the various Aha moments along the way so stay tuned.

In retrospect I find it interesting how much our own personal preferences change in such a short period of time. I joined my current employer last year to develop test-first software in c# and I couldn't be happier. But now that I've seen just a glimpse of the mobile world I already have an itch to develop for iPhone full time if the opportunity presented itself.