views:

178

answers:

4

I have been asked by many of my family and friends if I could develop applications on the iPhone or iPod touch. The answer I always gave was "sure, if I could get everything I needed." I have discussed this with many friends and we believe that if we can crank out cheap-o fun games and get a million people to buy them for a buck, and do this every month or so, a good bit of money could be made. Not enough to retire, but enough to make it worth while.

So my question is quite vague and leaves a lot of room for a variety of answers:

What does it take to develop on the iPhone?

I was under the impression that you needed a Mac, and needed MacOS. You can't get away with partitioning your hard drive and installing MacOS? Or run a virtual machine and install MacOS? I am primarily a windows developer with a lot of linux experience.

What do I need to buy to develop for the iPhone? What do I need to download? Can you name a few books? Where should I begin? I encourage you to share your experiences, hurdles you had to overcome, things that you thought would be hard that ended up to be easy?

A: 

check out this excellent article:

http://www.codeproject.com/KB/mobile/wm_iphone_android_market.aspx#GettingStarted-iPhone

sean717
+2  A: 

Everything you'll need can be found here: http://developer.apple.com/iphone/

Matt S.
A: 

If you can get the Mac OS X to run in some kind of VM (Note: it would need to be a VM that acted like an Intel based Mac, not the older PowerPC) then that would be enough for you to get started with iPhone programming. You could get the SDK from here (iPhone Dev Center) using a free developer account. There is a link on that same page to sign up for one.

I believe you would have to pay to become a registered developer before you could actually distribute anything but that's only $99 and you could wait until you've got something running.

As far as books and other stuff goes. That's a waste. Go through the Stanford course and the documentation and examples that Apple gives you. That should be enough to get a significant start. Then pay money for books and extras only if it seems like you're making enough progress to warrant it.

So, to answer your question, the only thing you need to have is OS X and some way to run it on an Intel Mac or a VM that will act like one. Everything else you could get for free.

John Munsch
I disagree with the books. While I found the stanford course good, it didn't go into extreme detail necessary for me to fully understand the topics. On the other hand, books did
Matt S.
+1  A: 

You actually don't need MacOS to develop apps. If you want to sell them through the Apple App store then you'll need a hackintosh/VM/friend for the final code signing (in OSX), and you'll need to pay the $99 (and be 18 so you can sign their legal contract) to be a part of the Apple Dev program. If you're going to go this route I would recommend getting a mac. (I ran MacOS on a pretty good HP laptop for a while, but recently got a Macbook and find the experience much more enjoyable).

But, there is an alternate route.

You can use the Open Toolchain and cross-compile (or even compile on the iPhone) whatever Apps you want, and sell them through either the Cydia or RockYourPhone stores. If you intended on making games that won't use any non-Apple-approved APIs, selling through these alternate stores would not give you nearly as wide of an audience. However, you can write whatever code you want with unrestricted access to the iPhone (because it's jailbroken) and sell it on these stores (and they can have your app ready for sale within a few hours). A lot of people may be wondering how profitable an app for jailbroken devices could possibly be, and I'm happy to say that it's been pretty darn good. (I made an app called Multifl0w, a cards-style multitasking interface).

If you want to get started making your own apps for free, I wrote a quick blog post here (Works on any OS that can SSH) (red pill): http://blog.aaronash.com/?p=15

Otherwise, go party at the Apple camp (blue pill): http://developer.apple.com/iphone/

Good luck!

Charybdis