With all the publicity about the success of the Apple App store, you may have asked yourself about what you need to do to write an iPhone application. Here’s your answer.
For the last year or so, Apple conference extravaganzas have been full of spotlight interviews with iPhone app developers who have enjoyed a lot of success and made a lot of money. It is difficult to see those examples and not wonder just how hard it is to write an iPhone app. That thought crossed my mind as well. A bit of research and investigation ensued, and the answer to this burning question is laid out below.
Before we get into the specific needs of programming on the iPhone platform, we may wish to think more generally for a moment. For one thing, it would be handy if you were already a programmer. If you are not, you are going to have to learn to be one. Some people find programming to be easy. Others find it to be almost impossible. If nothing else, embarking on a project involving writing an application for the iPhone will tell you which group that you fall into. If you don’t already know how to program, this is probably going to take you a lot longer than it will if you don’t. So we are going to pretend that you have some programming experience. Now, what else do we need?
This is all-important. If you don’t have an idea for an iPhone app, the rest of this information is going to be wasted. You need to be able to see what you want to do in your mind. Don’t have one yet? We’ll wait.
( tap, tap, tap )
All right, then, there you are with an idea. It might be a game, it might be a business app, it might be a utility. It doesn’t really matter. What matters is that you now know what you want to do. Take a minute now and sketch out the interface. Think it through from the point of view of a user.
Your app needs to be of value to people. Maybe it is just fun, like a game. Maybe it makes their life easier, like a productivity program. It can be useful in one of many ways. But it must add value to your users’ lives in some way. Make sure, now, that your idea has something in it that will make people download it. There is little sense in writing an app if no one wants what you have written.
Yes, you need an iPhone. There is an iPhone simulator in the coding kit that you will be getting from Apple. But eventually, you are going to have to test your application on an actual piece of hardware. That piece of hardware may as well belong to you, since no one else is likely to give you one to play with. If you don’t have an iPhone, preferably the latest and greatest so that you play with all the newest features, you’d better start saving your money.
Windows users need not apply. The Xcode application that you are going to download and use to write your application needs someplace to live, and that place needs to be an Intel-based Mac, probably a MacBook, a Mini, or an iMac, although one of the bigger Mac beasts will do the job as well. Again, if you don’t have one, it is time to start saving your money.
The iPhone Development SDK
The iPhone Software Development Kit is a free download from the Apple Website. You will need an existing user account for the store and forums, or you can sign up for a new account. Once you have done that, you can download the development kit from this link. It is very large and will take a while to both download and install. This is the same development software that is used to write software for the Mac. It is very impressive indeed.
The same page contains a large number of links to information about using the Xcode framework and the rest of the SDK to write applications. You will need to familiarize yourself with most of this information at some point during the development process. A good place to start is the 12 iPhone development basics videos. They will give you a great overview of the process and the tools.
You will need to branch out from there into the more complicated material as you learn to write Objective C, the language in which iPhone apps are written, and as you need to make more extensive use of the more esoteric and complex parts of the development kit. Even if you have never programmed before, all of the information you need to write an app is at the Apple iPhone developers site. You may want to go out and buy a relevant book or two on programming basics in order to speed up the process if you are new to programming.
Approval from Apple
You cannot just download the SDK and become an instant iPhone developer. If nothing else, you need to join the iPhone Developer Program. That happens at yet another link. Unlike the other links, this one is not free. It costs money to become an iPhone developer. Unless you want to become an Enterprise Developer, and you probably don’t, getting Apple’s approval to start developing for the iPhone will cost you $99 and a bit of time filling out an application.
Strictly speaking, you can start without their approval once you have the SDK, but you won’t get very far. You need their approval in order to get the software that allows you to test your software on an actual iPhone. You also need their approval before you can send in your app to the App Store for their approval. So this is a pretty important step. And you should take it right now. Depending on your level of expertise and the app you want to write, you may have the app done before all of the ink is dry on your application to become an approved member of the iPhone Developer Program.
Although the Apple Xcode SDK is an excellent product, and one which does a lot of the work for you, there is nothing easy about software development. Prepare yourself to come up against problems and to spend the effort needed to solve them. Almost all things are possible with ample supplies of logic and creative intelligence. If you know what you want to do, and if you really want to do it, you will be able to build your dream app.
This process is not an ungraded test. When you think that you are done with your part, you will need to turn in your work, in the form of a finished application package, to the Apple App Store. If you have written an uncomplicated and uncontroversial app, and if you have written it according to the book, the approval process will only take a week or two. Even if you have not, Apple will tell you what is wrong and give you a chance to fix it. This can be an iterative process, going back and forth several times before your app is approved. Apple wants you to succeed and will help you in your quest.
At the end of this process, you will see your dream app in the App Store, developed from the germ of an idea to an actual product with your own two hands at the direction of your own brain. It is like building a bookshelf, or a house, or a space station: you come away satisfied, and with a taste for more.