Dec21

Building an iPhone app. Setting up

I recently was talking with some friends all of whom were iPhone users.  Someone asked me "Can you build an iPhone app?"  After a little thought I said "I don't see why not".

Now to give you some background I am a web developer, and have primarily been focused on building websites using the Umbraco CMS.   The language that I use everyday is C# and I work on a PC.  This was the first issue, and straight away I could see that this was going to be somewhat of an expensive mission as iPhone apps can only be compiled and deployed on Apple gear.  I'm probably going to get someone tell me that I am wrong about this and that you can build iPhone apps on a PC but I wanted to do this the correct way.

Thankfully I was in the market for a new personal home machine as our equipment at home was beginning to get a little tired.  I settled on a MacBook Pro 15" 2.8 with 500GB HD and 4GB of ram.  It was a good balance of power for dollars especially since apple had dropped the price on their equipment significantly in the past couple of weeks.  The MacBook arrived and I went about downloading the iPhone SDK from the apple developers site.  You can get this for free but they suggest that you sign up to the iPhone Developers Program as this will give you access to more help and a clear deployment pathway at a cost of $99USD.  I haven't done this step yet as I still have a few things to sort out.

Ok… according to Apple I have everything that I need to build an App.  Problem.   I don't know Objective-C which iPhone apps are written in.  Solution, MonoTouch.  This is a project developed by Novell and runs on the MonoDevelop environment.   MonoTouch is an iPhone SDK for C# developers.  Perfect, but it has a price tag of $399USD.  I've decided that this is the price I have to pay as I don't really have the time to learn a new language, and I want to get up and running as quick as I possibly can so I will be shelling out for this shortly.

Anyway this is currently where I am up to.  I have a number of different ideas for what I can deploy as my first app and one of those that I think will be useful I will blog about next time when I will talk through the design process and how I am going about planning this thing.  Hint.  Its going to have something to do with Umbraco :)