Start Your App Today
My first app has 25,000+ downloads. Using feedback and testing that I describe below has helped me generate over 540,000 downloads of my iPhone and iPad apps (February 2013).
My first experience with developing an app for iPhone was an eye opener! I spent months developing the app and then had one final push. Going from ideas on paper to an app was challenging, but a great learning experience. I tracked my features and bugs on a google spreadsheet. I used color (red/green) to show what was finished and then tackled one task at a time. At first it didn't feel like I made progress, but as I worked I was able to cross 1-10 tasks a day. If you're feeling frustrated or don't know how to get started, don't worry. It's normal to feel overwhelmed when you first begin an app.
The only way to solve that challenge is to start on something simple, and then build upon it. Want to make an app? Take the first step and open up Xcode. File -> New -> Project and then start fiddling. You'll learn a lot if you just play with the tools.
They say that if you want to build the habit of flossing your teeth, then you should start with one tooth/day. The next day it becomes easier to floss two teeth. The same thing goes with programming. Start with a simple printf("my name is Paul"); or NSLog(@"I like to make apps"); output statement and take it from there.
Google is a Programmer's Dictionary
Want to learn something specific? Google is an amazing resource. Type a general idea (i.e.. "iPhone button code") of what you're trying to look for and refine your search with different keywords until you can figure out the "language" that you need to search (ie. "iPhone UIButton .xib code"). Most professions don't have such an extensive wealth of knowledge on how to do things like computer programming does.
You can find example code, bug fixes, tutorials, and videos on almost any topic. Can't find something? Send me an and I can point you in the right direction in a few seconds.
How Did I Do My First App?
My app started as a Mac OSX app and when I saw the iPad I knew it was the future and that I had to buy one. I wanted to get my Mac OSX on the iPad, so I started learning iPhone development.
There's a lot that goes into launching an app, and that includes filming videos to show to your potential customers. I didn't know how to edit videos (just the general idea) and hadn't performed any user testing beyond my roommates and girlfriend. Needless to say I worked my butt off to get Artwork Evolution submitted before the App Store Shutdown Deadline on December 23rd, 2011. Apple locks the App Store for 4-7 days around the holidays. For 1.5 months I didn't play video games and got up early to code and stayed up late fixing bugs. My friends hated me, but I loved it. I was in the zone and I was so close to the App Store.
Set Deadlines
My goal was to get the app to Apple before Christmas and I made the deadline, but it didn't get approved until afterwards. It initially was rejected for not having any buttons, but I quickly emailed Apple and showed all the buttons (hundreds! what where they thinking?) using annotated screenshots.
If you're planning a holiday release, give yourself 2-3 weeks as a deadline so that you can plan for App Store rejection, crashes, and critical bugs. Don't try and do everything, but do try and get something submitted. Your first app will be terrible, and that's ok. You'll get critical feedback on what to fix next and move on. The sooner you get feedback the better.
Get Critical Feedback
After I submitted the app, I filmed several and videos to demonstrate the app. Here's some real, gritty feedback that I took to heart and used as motivation to improve. I wanted to prove this technical reviewer wrong (he makes educational video games). Negative feedback can be leveraged as motivation to try harder to prove yourself as a worthy contender.
Sorry to be abrupt or brief here. just don't have much time. you really need to polish the app before you get bad reviews and can't recover. I started taking in-depth notes but realized quickly you had done no real user testing. Here's my 2 cents:
He was wrong, you can recover and I did. I made $537.82 in the first month, far from a flop! Your first app is a learning experience, not a do or die situation. I learned and experimented with different workflows, buttons, layouts, and designs. Artwork Evolution went on to generate over $1,500. Not bad for a computer science masters project. How many other people make money from educational programming?
Better yet, Artwork Evolution laid the foundation for , which has been downloaded over 400,000 times! I took what I learned in Artwork Evolution and made an app that has a wider audience and many improvements.
Start screen – albums? Unimpressive. What am I supposed to do?
My initial design was to mimic the experience from the Photos app. I built albums and photo grids. (tons of math, layout, and testing) It's a lot easier today with the new class . Needless to say, the first screen in V1 didn't look great, so I changed it in an update. See what it looks like now.
Filter Advice
I can’t cancel or revert to the original My Evolution Set.
I didn't have time to implement the revert feature, nor the motivation. I did build a save feature that mitigated the "revert" problem. Reverting wasn't the workflow I wanted in my app, and every time you add another option to do the same task, you add complexity.
Guess what? The reviewer was the only person to complain about it. No paid customers had any issues with reverting back to an old state. Keep in mind that you need to filter the advice you receive. The app would have never been finished if I listened to all the advice I was given. Ship don't slip!
Limit Features
It's ok to omit features that you don't think are important or core to your app. As another example, I didn't let users delete images until I received two emails asking for the feature 2-3 months after I published the app. I added the feature, emailed the customers and they were super happy. I could also remove hundreds of "garbage" images that I had evolved!
My roommates thought it was stupid that you couldn't delete images. I figured that most people wouldn't create much art, so it wouldn't be an issue until I had a serious user. I'm glad I waited, because I had a million other issues to focus on. Pick the battles and issues you want to solve and then stand by your decisions.
Remove Features
Removing features and being cautious to build new features is very important with app development. Don't overcommit to something that doesn't work or that users don't care about. Get the first version out the door and then iterate on it. David McClure's "Startup Metrics for Pirates" and learn about removing features until users scream. When they scream, you've found what makes your app special.
User Testing
You need to do user testing and watch people use your app without interfering. You’ll see people struggle at all kinds of points you think are obvious. You’ll see people “not get it” and realize much, much more work needs to go into it because you are not there to explain what happened or why it’s cool to them.
Since Artwork Evolution version 1.0 I have always tested my apps with new users in the college library at RIT or a coffee shop. I give strangers tasks to complete and see if they can figure out how to use the app without my help. I watch what they do and take notes, then I ask for feedback.
Don't follow every feature request you get, instead try and keep track of the most popular feedback and see if it fits into your vision for the app. Keep in mind that customers don't always have the best advice and Steve Jobs didn't do user testing at Apple.
Who would have asked for a genetic art iPhone app? Very few people know about the topic or even think that a computer can create artwork. If I had asked users about the before building it they would have been clueless. I built the Artwork Evolution app as an exploration into mathematics and art. It was inspiring to see so many interesting and abstract images. My printed art has been featured at , and .
How Does it Work?
It might as well be random. I can’t tell what’s transforming what or why or how. I might as well use google images and type in abstract art and just look for something I like. There’s no sense of user control, mastery, or insight.
The idea is that colors and shapes will combine to create new images. It's like dog or horse breeding. Selecting and evolving images will create new images that are completely different, cross breeds, or very similar to one parent. It's very abstract and uncontrolled, just like evolution. I didn't build a steering wheel, I built a spacecraft traveling into the unknown.
Use In-App Tutorials
One of the biggest flaws in most apps today is that they're so hard to use. Make sure that you provide tutorial screens, help images, or text in your app. Don't wait until the last minute, or you'll lose customers (retention). The first 30 seconds are key for an app experience. If the customer doesn't get "it" in that 30 seconds they will never come back to your app.
Signup and Subscribe
- Subscribe to my newsletter on iPhone development to stay up to date on more posts.
- .