iPhone App Development – Where to Start

iPhone App Development - Harder Than You'd Think

[October 4, 2012 Update]

On September 27, 2012, Apple accepted my first app, Fine Tip – Tip Calculator (buy it here, read about it here) into the app store. For reasons I won’t get into, I abandoned iPhone app development back in the fall of 2009. In August 2012, I took up the torch again. Within one month I was able to complete my first app.

Much has changed in three years. While most of what I wrote below still stands, ignore the book recommendations below. Instead, I strongly urge you to buy the two books below. Had they existed three years ago, I would have been able to develop my first app much quicker. I purchased them in August 2012 and had my first app done in less than a month:

[End October 4, 2012 Update]

[Original Post Last Updated: April 2009]

How hard could it be, I asked myself. I’ve developed my own applications in Basic and C. I can configure an Apache Server, install and use PHP, MySQL and other server apps. I develop and maintain websites and blogs from my home server. Over the last 15 years I’ve taught myself HTML, PHP, MySQL, CSS and the basics of Java. How hard could it be to develop a small application for the iPhone?

Let’s step back for a moment.

I have a very particular program in mind that I’ve wanted for years. It’s a very simple program – perfect for the iPhone (more on that in future posts). I could whip it up in C or PHP in about a day. I’ve never owned, or even used, an Apple computer of any kind in my some 27ish years of computing. I regard the iPhone App Store as a revolutionary new idea that pries control of mobile device apps from the big-bad telco giants and puts it in the hands of average consumers and developers — where it belongs. I see cloud computing as a very important part of our collective computing future. I want to get in on the ground floor. If my first simple program works out, I want to develop an iPhone app to work with my wishhh.com service. After that, who knows.

So, in August 2008 I registered to to join Apple’s standard developer programpurchased a Mac Mini (subsequently replaced it with an iMac) and set out to develop my first portable application for use on the iPhone.

Minimum Hardware

To develop for the iPhone you will need an Intel-based Mac running Leopard (OS X 10.5.3 or later). Any Mac released since 2006, laptop or desktop, should work.

Piece of Cake for Mac Cocoa Developers

If you have a solid grounding in Cocoa development (Apple’s Objective-C framework) with the xCode development on the Mac platform, developing iPhone Apps should be a breeze. Not so much for the rest of us.

Learning Curve for the Rest of Us

Below is a discussion of the  hurdles I have had to overcome and the online resources I’ve found useful in my bid to become the newest iPhone App developer:

Continue reading “iPhone App Development – Where to Start”

I Traded-Up to an iMac

iMac with Leopard and iPhone SDK

I took advantage of the Apple Store’s 14 day return policy and traded up to a 20" iMac ($1,299 Cdn).  I returned the Mac Mini that I purchased two weeks ago.

I’m using the Mac as an iPhone App development platform. The Mac Mini just wasn’t quite enough for my needs.

Extended Desktop

Mac Mini with Red XThe Mac Mini was gorgeous on, and took full advantage of, the 1920 x 1200 screen resolution of one of my 24" Dell monitors. But, you cannot extend the Leopard desktop to a a second monitor with a Mac Mini.

[Update March 3, 2009: The new Mac Mini that came out in the beginning of March 2009 supports dual monitor setups with a Mini DVI port and Mini DisplayPort on the back.  With this change it now makes the Mac Mini more suitable for iPhone development. Here are the full new Mac Mini specs.]

I am used to having my Vista desktop extended across four monitors. Having just one monitor on the Mac Mini (even a 24" monitor) was just too small for comfortable application development.

You can extend the iMac desktop to a second monitor and that’s exactly what I’m doing. The iMac has a mini-DVI port on the back for this purpose. I purchased a mini-DVI to VGA dongle and extended the iMac desktop to my second Dell 24" monitor (I switch that monitor back and forth between my iMac and my Dell XPS PC as needed – its my furthest right Dell monitor and to the left of my iMac). For now my XPS Vista machine is plugged into that 24" Dell monitor’s DVI input.

Continue reading “I Traded-Up to an iMac”

Purchased a Mac Mini for iPhone App Development

Mac mini

Hell has officially frozen over. After 28 years of PC ownership, I purchased my first Apple computer yesterday – a mac mini.

I’d like to try my hand at developing iPhone Apps for the App Store. The SDK only works on the Apple platform (no SDK for you, PC developers). The big challenge for me won’t be the iPhone SDK so much as figuring out how to use a Mac. I’ve never spent more than a few frustrating minutes with the platform.

The Mac Mini Decision

Originally I was going to purchase an iMac hoping that I could use it in my growing array of PC monitors (ie: use its screen to switch back and forth between the iMac and just another screen in my array of PC screens). But, there’s no VGA, DVI or any other video input on the thing.

After an hour or so on the iPhone Developer site on my own and then another half hour with an Apple Store rep, we determined that the Mac Mini must be able to run the iPhone App SDK. Hence, as the cheapest way to go I decided that the Mac Mini was the best bet. After all, I have no intention to use the thing for anything other than Apple App development. And if it doesn’t meet my needs I have 14 days to return it.

I was a bit surprised that the Mac Mini doesn’t even come with a keyboard or a mouse. The Mac Mini was $649. The two extra peripherals were $49 each. And it cost me $99 fee to join the iPhone Developer Program. For $846 plus tax, I’m off.

Continue reading “Purchased a Mac Mini for iPhone App Development”