Interactive Media: iPhone App Development, Step 4

This is the last step. You had a great idea and used what you learned about X-Code and Objective-C to build it. You’ve tested it extensively on the iPhone Simulator (one of the components of the iOS SDK) and now it’s time to test it on an actual device. Why, you might ask? There are … Continue reading “Interactive Media: iPhone App Development, Step 4”

This is the last step.

You had a great idea and used what you learned about X-Code and Objective-C to build it. You’ve tested it extensively on the iPhone Simulator (one of the components of the iOS SDK) and now it’s time to test it on an actual device.
Why, you might ask? There are two primary reasons.
1) The iPhone simulator uses the memory and processor of your Mac. Yeah, that makes it a SUPER iPhone. So, while your app might run nicely on the simulator, you might find that it crashes on a device since it doesn’t have the memory resources available when it was running on your computer. You MUST know if it works on a device. So test it there.
2) The iPhone simulator can simulate some movement, but it cannot do put the accelerometer to any real test. For that you need a device.
So what’s the play?
It’s now time to join the Apple Developer’s Program. I imagine you’re thinking, I’m already an Apple developer; I have an account and everything. Yeah, but this is different. You need to go to the iOS Developer Program website and enroll for $99.00 (click the “enroll” button). Yup, you have to pay now and it’s a cold, hard bummer. I know it’s tempting to complain, but just remember that everything up to this point has been free: the SDK, all the resources and all the research materials. Time to cough up. And just think, if you make $100.00 selling your app (not at all unheard of), its paid for itself.
Because you DO have to pay before you can test your app on a device (and all the instructions on how to do this are clearly indicated on the site once you enroll), I recommend that you wait until you have completed and tested your app on the simulator before you join. Why pay for a year and let the days dwindle by while you write code?
After you have tested extensively (and you should try it both the iPhone 3G, the iPhone 4 AND an iPod touch if possible) you’ll need to submit it to the app store. Again, all the instructions for this are on the site once you enroll.
Happy apping and good luck.

Interactive Media: iPhone App Development, Step 3

So now that you know how to work with XCode and how to program in Objective-C. What’s next? Next you need to come up with a viable idea for an app. And that begs the question, how do you know if your idea is viable? That’s a tough question to answer. There are currently 350,000 … Continue reading “Interactive Media: iPhone App Development, Step 3”

So now that you know how to work with XCode and how to program in Objective-C. What’s next?

Next you need to come up with a viable idea for an app. And that begs the question, how do you know if your idea is viable?
That’s a tough question to answer. There are currently 350,000 apps on the app store. Now, as I said in an earlier post on iPhone development, Apple is pretty loose about what sorts of apps they allow on the app store. There are a few exceptions though, and the two most notable are: no pornography and no apps that are carbon copies of others.
So what does this mean for you? It means you need to get out there and do some research.
There are already a zillion Twitter clients on the app store and unless your Twitter client does something totally new and amazing like posting tweets onto the back of a user’s eyelids, then you better think of something else. Apple will turn you down.
A great place to start is a website called Mobile Orchard. They run a podcast and a blog about new iPhone apps. But here’s their hook: instead of just clipping off opinionated reviews of whatever app they happen to come across, they search out true innovations in app design and then present interviews with the developers. Here’s a great example: check out the second interview with Pete Schwab who created an app that tells you the temperature based on the chirping of nearby crickets! Seems esoteric, but for anyone wanting to work with audio on the iPhone, there’s some great stuff there. Here’s another typical post: an analysis of pricing on the app store. Super useful for anyone about to sell their app.
iTunes itself also has a ton of other podcasts about iPhone apps. Some of these are just folks who like to hear themselves talk, but some of them give useful reviews of popular apps and often include some technical discussion. Definitely useful.
You should also look to the popular media and see what sorts of apps people are buying. Time did a piece not so long ago on just this topic.
What this all boils down to is the fact that before you settle on an idea, you need to know what’s out there already and what sorts of apps people are using. It is hard to please everyone, but don’t forget that there are genre apps as well. While a beat box may not be as popular among the masses as Yelp, it might be to a fairly large group of music folks or djs.
So get out there, thin, research, re-think and create.

Interactive Media: iPhone App Development, Step 2.5

Having trouble with Objective-C? Yeah, so did I. Objective-C is a programming language developed by Apple for use in programming for the MacOS and iOS platforms. As you may have guessed, it’s based on C. You might find it helpful to take a few minutes to learn a bit about the C programming language. You … Continue reading “Interactive Media: iPhone App Development, Step 2.5”

Having trouble with Objective-C?

Yeah, so did I.
Objective-C is a programming language developed by Apple for use in programming for the MacOS and iOS platforms. As you may have guessed, it’s based on C.
You might find it helpful to take a few minutes to learn a bit about the C programming language. You can use XCode as a C complier and try out some test programs in C.
The classic text on C is the book written by the folks who created the language and it’s called, strikingly enough, The C Programming Language. You can get it on Amazon.com if you like.
This website also gives a simple introduction to the C language and it’s worth reading through.
One other thing folks often find difficult about Objective-C is the fact that it’s an object-oriented programming (OOP) language. If you’re new to programming and object-oriented language can be difficult to learn. Many volumes have been written about OOP, but what it boils down to is this: a class is like a jello mold. You can fill the mold with different colors and flavors of jello, but what you get each time you turn out the mold is the same shape with the same properties (it wobbles and is tasty). With that in mind, you can think of a class as a blueprint from which copies of similar objects can be created. For more on OOP, check out this website.

Interactive Media: iPhone App Development, Step 2

Ok, so now you’re an Apple Developer and you’ve got the SDK installed. Great. At least it was until you opened one of the applications in the SDK and realized you had no idea what to do next. Here’s what you can do next: learn how to use the iOS SDK to make iPhone apps. … Continue reading “Interactive Media: iPhone App Development, Step 2”

Ok, so now you’re an Apple Developer and you’ve got the SDK installed. Great.

At least it was until you opened one of the applications in the SDK and realized you had no idea what to do next.
Here’s what you can do next: learn how to use the iOS SDK to make iPhone apps.
It’s true that it’s a complex process, but there are some truly excellent resources out there for you.
The best place to start is Lynda.com. Don’t forget that if you’re an American university student you’ll need to log into Lynda via the Technology link on the portal. What you want to look for is “iPhone SDK Essential Training” by Simon Allardice. He begins with a bit of history and explains the development of the iPhone OS. He then segways into some simple tutorials in Objective-C, the programming language used to create iPhone apps, and finally shows users how to create a number of useful interfaces which can be applied to a wide variety of app ideas. Really excellent.
Once you have a basic grasp of the tools and concepts used to create iPhone apps, it’s time to go to Stanford. Yes, Stanford. For the past few years they have been running an iPhone development course in their school of engineering and it’s available FREE on the iTunes U site. Here is the latest version of the course from the Winter of 2010. Clicking on the link with open iTunes.
This is another college course on iPhone development from UC Davis. It’s a bit different from Stanford’s, but still very easy to follow and understand.
Additionally, there are a TON of resources on Apple’s developer site and one I recommend highly is the Primer on Objective-C. It’s a text document, but well worth reading.
Once you’ve got the basics down it’s time to move on. If you’ve never programmed before it might be worth your time to check out Step 2.5. If you find you’re comfortable with Objective-C, move on to Step 3.

Interactive Media: iPhone App Development, Step 1

So you want to build an iPhone app… Do you have an idea? Something people can’t possibly live without? Well, this is a good place to start. In this series of posts (iPhone App Development), I’ll go through all the major steps of how to develop your iPhone application. All this information also applies to … Continue reading “Interactive Media: iPhone App Development, Step 1”

So you want to build an iPhone app…

Do you have an idea? Something people can’t possibly live without?
Well, this is a good place to start.
In this series of posts (iPhone App Development), I’ll go through all the major steps of how to develop your iPhone application. All this information also applies to iPad and iPod Touch app development as well, but I will confine my discussion to the iPhone specifically as a result of the fact that it’s much more widespread.
You’ll learn what software you need to get started, how to design and code your app and how to get it ready for distribution. But first let’s look at some of the basics.
Unlike other types of software development (such as the Flash platform), development for any iOS device (iPhone, iPod Touch or iPad) is closely tied to Apple; you cannot develop for the iOS without working closely with Apple’s tools and services. This might at first seem like a hindrance, but Apple is not stupid nor are they simply overbearing. They have made zillions on iPhone apps (and so have developers) and as a result they do everything they can to encourage creativity, streamline the development process and provide all the necessary tools and resources for developers. So what does all this mean?
The downside:
It means that you MUST develop on a Mac. iOS development CANNOT be done on a PC. It also means that you must use their SDK (software development kit) and you must submit your app to Apple for approval before it can be sold in the app store. While this last may seem totalitarian, allow me to point out that one of the most popular apps of 2009 was the Fart Button (and yes, it does exactly what you think it does).
The upside:
You become a partner, in a way, with Apple. When you develop and sell apps Apple will pay you a portion of the sales. And folks have made literally millions in this way. If you app is popular, they will promote it to help it become more popular. As a registered developer, you will have access to a massive repository of resources ranging from coding how-tos to marketing tips.
Anyhow, here’s a basic overview of the steps required to begin iPhone development:
1. You need to register as an Apple Developer. To do this, go to the Apple Developer site and click the “Register” link on the top right of the page. Fill in the form and agree to all the stuff. This is a free process.
2. Once you’re a registered developer, you need to download the latest version of the iOS SDK (software development kit). It contains XCode, the program where you will create your app, as well as a number of other tools you will need to finalize your app once it’s done.
3. Install the iOS SDK on your Mac.
4. Read the next iPhone App Development blog post for a myriad of resources to help you get developing.