Beginner iPhone developer do's and don'ts?
June 8, 2010 10:07 AM   Subscribe

Beginning iPhone development... What kind of things should I look out for? What are some great app ideas? Are there any major mistakes that I should avoid? Etc etc...

I've taken 3 quarters of classes for C at my local community college, and one quarter of Python. I've also messed around with the django framework a little, so I have at least some idea of what's going on in terms of programming.

Right now I'm going through the book Beginning iPhone 3 Development: Exploring the iPhone SDK and it's a great book so far (at page 130 or so). I get slightly stuck every now and then, but my knowledge in C is really helping me push through the material.

I always thought that the SDK would cost $99 as a one-time fee, but apparently it's $99/year. That makes me a bit nervous about whether or not I'll be able to sell a quality app (or more) and at the very least make $99 to offset the cost of becoming an iPhone app developer.

So some of my questions are...
- What kind of app should I start off with first?
- How will I know when I'll be ready to subscribe as a developer?
- Should I publish a beta version for free and see what happens? (getting feedback for the app and such)
- Is there any other small advert for apps other than Google ads? Google hates me and accused me of frauding their adsense system...

I'm just nervous I suppose. It's the first time I'm attempting to publish software.
posted by RaDeuX to Computers & Internet (8 answers total) 23 users marked this as a favorite
Start on a small project. Think of the simplest possible thing that will be useful to you or your users. Then make it simpler. You'll reap a few benefits from doing this:

1. When you actually have closed the loop from coding-compiling-deploying-testing, if you're anything like me you'll get a massive boost in morale. The less it takes to get to this point, the better.

2. The more complicated your app is, the harder it will be for people to learn, or the more likely it is that people will misuse or not use whatever features you worked so hard on. A simpler app is easier to learn and use correctly, and means less wasted time.

3. It sounds like you're just starting out. Taking on a big project and getting lost in the details is a recipe for discouragement if things don't work out. Your first few projects probably won't be mega-hits; get comfortable with the particular ecosystem you're developing for using smaller projects that are viable for your level of experience before taking on more complicated projects.
posted by a snickering nuthatch at 10:24 AM on June 8, 2010

1. Stanford U's has course materials and lectures available for their iPhone class that provide a nice, structured introduction to the platform. Lots of simple apps as assignments there.
2. If money is tight, you can wait until your app is "done" (i.e. bug free) in the simulator before subscribing.
3. Don't know, depends on the app. Sounds like cart before the horse right now.
4. Uh, Apple's internal iAd system? It's part of iOS4 and should be included in the SDK.

The truth is, there are a gazillion apps out there trying to do the same thing. I wouldn't go in expecting to make a great deal of money, though the experience should be interesting.
posted by ikaruga at 10:27 AM on June 8, 2010 [2 favorites]

Do you have a Mac? The iPhone development stuff requires XCode. If you do, lots of the iPhone APIs are based off OS X, so you could start by doing some Mac development using the free tools.

If you don't have an idea for what you want to write, that's probably a sign you don't need to register yet.
posted by ecurtz at 10:29 AM on June 8, 2010

Response by poster: Yes, I do have a Mac. In fact, I'm typing this out on my MacBook Pro. I have made a few very simple apps to get myself used to the iPhone SDK.

And yes, money is a bit tight for me right now.
posted by RaDeuX at 11:01 AM on June 8, 2010

I would wait till you absolutely need to put your application on the iPhone to test before signing up. You loose access to a few other things, like early releases of the SDK and OSes, but I don't think this is that big a deal. As to making back your money, there are lots of articles online about pricing. You certainly could build something that uses iAds for free, and you can let people get rid of the ads with an in-app purchase. I wouldn't build anything and give it away for free.

I've been reading this book recently, and it's quite good.
posted by chunking express at 12:13 PM on June 8, 2010

I sent you an app idea in a mefi mail.
posted by CathyG at 12:28 PM on June 8, 2010

A few rough answers to your questions...

For your first app, pick a program or concept you already know and like, even if it's been done a million times before. It doesn't have to be all that simple as long as you are comfortable building on it with no expectation of monetary payoff. Your first app is usually a getting comfortable exercise and learning your way around the iPhone development tools, language, API, machine limitations, and user interface standards. This can be a lot more complicated than just learning the basics of Objective-C and following a book to build an app.

If money is tight, consider building and running apps with the simulator only under Xcode. The simulator is a nice tool except for a few things that probably shouldn't matter for beginners (one of the biggest is it can run apps much faster than an actual iPhone). The only good reasons I can think for you to signup as the developer during initial development is if you need other people testing your app on another machine and you can't have them recompile your source code in Xcode, or if you have an app that you need to test in a native environment. I guess you get private forum support access with the developer fee, but frankly Google has always found answers to a question for me if there's an answer to be found. Lots of iPhone development information, examples, and code out there in the blogosphere and forums, although the sources are far-ranging.

Unless lightning strikes, you won't make much money on an app, perhaps not even enough to payback the $99 yearly fee (remember, the break-even point for a $1 app is approximately 143 sales). Most of the money in apps I've seen (except for the very rare hit) is in developing custom and vertical market apps for businesses as a programmer or as part of a development team. There is, as previously noted, huge competition out there for all common market niches, particularly with games and utilities. 225,000 apps cover a lot of ground and cover it deep.

In marked contrast to what a lot of developers say about how ideas for programs are cheap, good ideas that will work well in the limited iPhone environment and haven't been mined out or that don't require huge startup costs or a full-blown development team are not cheap. Those ideas are very dear, to the extent that I reward my friends who come up with an actual idea I can use for an app that hasn't aready been done in one permutation or another a hundred times over.

You can post a lite or beta version, but don't expect to get much useful feedback except from your friends, and possibly not even them. Generally speaking, users at large don't give good feedback, even when you specifically ask for it, and almost no one is interested in testing apps. They want a complete user-ready app that works, bang, instant gratification. Also consider how you receive feedback, through your support site with a commenting system protected from spam? That will help, but unfortunately, most users also don't use support sites, they just post a one-line comment in your reviews or delete it with a 1-star rating if something goes wrong with the experience, and it's impossible to get follow-up feedback from them. You should line up your testers first, and not expect to pick up more testers from the user stream. I mean, maybe you'll get lucky and land a couple, but I've not seen it happen.

Unfortunately Good ads are the best I've found for low-budget, extremely configurable, advertising for small projects. Maybe you can patch things back up to them with a polite email or three? I don't have that much experience outside of a few forays with Google AdWords, but I did look around first before I first used them.

Frankly, however, I don't think you should worry overmuch about advertising until you're sure you have something worth advertising. The 70 cents return per app $1 price, with a low cost expectation strongly entrenched among iPhone users, severely limits how you can advertise and make money. iPad-native apps do run to a higher per-app price acceptable to users if you're considering that route, and may allow more flexibility in marketing.
posted by mdevore at 12:49 PM on June 8, 2010 [1 favorite]

As others have said, you can do a lot of development on your Mac using the iPhone simulator. You really only need to sign up and pay for $99 when you feel you have something to ship.

You cannot easily distribute beta copies. You are an official developer you're able to do this using "ad hoc distribution" but it's only to a limited number of devices. You can't just put an app on your website and have people download and run it.

There's reasonably good discussion at iPhone Dev SDK Forum. I've linked to the business and app store forum, but they also have more technical forums. This is populated with a mixture of newbies and more experienced people. Lots of people ask lots of dumb questions which is kind of nice, because you know your question will never be the dumbest one, plus you get to pick up a lot of little bits of info that are important along the way.

Good luck to you!
posted by alms at 12:58 PM on June 8, 2010

« Older hands-off escrowing online   |   Have you had any experience with herniated disc... Newer »
This thread is closed to new comments.