iPhone App Entrepreneur is an independent publication and has not been authorized, sponsored, or otherwise approved by Apple Inc.
Rockablepress.com Envato.com Š Rockable Press 2010 All rights reserved. No part of this publication may be reproduced or redistributed in any form without the prior written permission of the publishers.
1 Foreword 3 Meet the Developers And the Developers are...
Perfecting a Killer Idea Brainstorming Techniques Be the First Be Better, or Different
Building Your App Around a Service
5 6
11
12 14 16 18
The App Store
23
Making a Development Decision
47
Quick Guide: Creating an iPhone Optimized Site
64
Getting Started Your Product Definition Statement Choosing an Application Style The Approval Process How to Craft an Effective App Store Listing Dealing with Crashes, Errors, and Bugs The Benefits The Challenges Developing Your Own Native App Hiring a Developer Developing a Web Application
24 24 25 28 30 36 39 42 48 52 58
The Importance of Simple, Sexy Interface Design 66 Apple’s Human Interface Guidelines Why Is Sexy Interface Design So Important? The Interface Design Process Crafting an Irresistible Icon Design Kits, Interfaces and Icons
Learning to Keep it Simple and Iterate Iteration in Action
Pricing Your App Right Breaking Down Your Revenue The Pricing Dilemma Advertising Options
67 69 72 77 80
83 84
87
88 89 93
2 The Perfect Promotion Mix Perfecting Your Website
97 98
Quick Guide: Creating a Video Demo
101
Generating Launch “Buzz”
102
Reaching Apple’s Top Lists
106
Go Social With Your App
109
Connecting With Users
111
Advertising vs. Word of Mouth
113
Top Notch Support and Regular Updates
115
Conquer Your Stage Fright
117
Useful Resources Apple’s Documentation
120 121
Books 121 Screencasts 124 Podcasts 125 Blogs and Websites
126
Forums 127 Conferences 128 Development Libraries, APIs and Frameworks
One Piece of Advice Words of Wisdom
The iPhone Developer Survey
130
134 135
141
Part 1 – Business and Company
142
Part 2 – Developing Apps
148
The iPhone User Survey
158
Conclusion 165 Credits 166 About the Author
168
FOREWORD The iTunes® App StoreSM launched on July 10th, 2008 to much fanfare and drama. Opening up a marketplace for software developers to target the iPhone®, iPod touch® and iPad™, it has rocketed to success over the past two years. At the time of writing this, over three billion applications have been downloaded. The potential for success has proven to be phenomenal. Developers have the ability to easily reach millions of users through a central marketplace, and many are leveraging that opportunity to make thousands of dollars every day. Unfortunately, despite the occasional success story, the fact remains that becoming an overnight App Store phenomenon is difficult. Many developers struggle to achieve great success with their application, and it’s a tough market to succeed in. If you’re wanting to strike it big as an app entrepreneur, it isn’t enough just to have a decent idea and some programming knowledge. This book won’t give you a killer idea, nor will it teach you the ins and outs of programming for the iPhone. What it will do is provide you with all the knowledge and technique you need to spot a great opportunity, get the most from the App Store, make smart decisions about development, craft a stunning interface, and promote your app successfully. Drawing on survey responses from over 1,000 iPhone users, and in-depth insight from a handful of incredibly talented iPhone developers, this guide will equip you with everything you need to successfully become an iPhone app entrepreneur. Good luck, and I hope you enjoy the journey!
David Appleyard AppStorm Editor
1
MEET THE DEVELOPERS Before we get started, I want to offer a special thank you to the developers, designers, and App Store entrepreneurs who helped to make this guide possible. Throughout the book, you’ll encounter interviews with sixteen people who have an intimate knowledge of developing for the iPhone. Their insight is remarkably helpful for starting out on the right track when developing your own application. Over the next few pages I’d like to introduce you to a handful of the most talented and successful people working in the industry, who generously gave up their time and expertise to contribute to this book.
6
Meet the Developers
And the Developers are... Graham Clarke – Glasshouse Apps glasshouseapps.com Glasshouse Apps started out with Barista and Cellar, two unique applications to help you make a great cup of coffee, and to manage your wine library. Graham has seen recent success with the release of The Early Edition for the iPad, a brilliantly unique RSS reader. Michael Johnston & Fred Cheng – Simplenote simplenoteapp.com Simplenote is, as the name suggests, a wonderful way to take simple notes and keep them synchronized between multiple apps and services. By far and away the best note taking application for the iPhone. Dave Verwer – Shiny Development shinydevelopment.com Dave has years of Mac development experience under his belt, and developed the popular iPhone game “Balloons”. He runs a number of different Mac user groups, and knows everything there is to know about programming and development! Sarah Parmenter – You Know Who youknowwhodesign.com Sarah is the talented designer behind You Know Who, a web design and development studio based in Leigh-on-Sea, Essex. An expert in iPhone UI design, she has worked on a number of beautiful iPhone applications.
7
Meet the Developers Marc Edwards – Bjango bjango.com Bjango create wonderfully designed apps both for the Mac, iPad, and iPhone, including iStat Menus and the incredibly useful “Consume”. Their unique illustration style and interface design sets them apart from many other developers, and they seem to have an endless stream of fantastic ideas. Joshua Tessier, Tariq Zaid & Adam McNamara – Select Start Studios selectstartstudios.com Select Start Studios are the developers behind Headquarters, a popular Basecamp application for the iPhone. Another of their applications, AppNotify, provides an additional way to add push notification support to your iPhone. David Heinemeier Hansson & Jason Fried – 37signals 37signals.com Developers of a range of online business productivity software, 37signals have over three million users and a passion for keeping things simple. An expanding ecosystem of companion iPhone apps have sprung up over the past few years, and 37signals have recently taken the plunge into the App Store themselves. Devin Ross – Attic atticapp.com Attic is a slick music controller for all those unplayed albums that are collecting dust sitting in your iTunes library. Devin has some interesting information to share about promoting your app, collaborating with other developers, and working with the App Store.
8
Meet the Developers Sebastiaan de With cocoia.com Sebastiaan runs Cocoia, a company that creates novel, beautiful products and innovative projects. These include Icon Designer, an icon design service responsible for some of the best Mac app icons, and Icon Resource, a site for learning how to design icons yourself. Garrett Murray ego-app.com Garrett Murray is a developer, filmmaker, podcaster, blogger, and general all-rounder. His creation for the iPhone, Ego, is any web designer’s best friend, offering beautiful stats for a range of web services. Dustin MacDonald acrylicapps.com Dustin is the developer behind the delightfully designed “Wallet” for Mac and iPhone. Wallet offers a central place to store your personal information, seamlessly sync it with your Mac, and automatically login to your favorite websites. Gedeon Maheux – The Iconfactory iconfactory.com Gedeon works for The Iconfactory, the company behind apps such as Twitteriffic, Ramp Champ, and Frenzic. They’re renowned for gorgeous interface design, stunning icons, and addictive user experience. If you’ve never tried any of their apps, you should. Lee Mallabone – Broadersheet iphone.broadersheet.com Lee Mallabone is one of the developers behind Broadersheet, a personalised newspaper for your iPhone. It
9
Meet the Developers provides news from around the world that you care about, from the sources that you trust, and Broadersheet learns what topics you’re interested in. Sophia Teutschler – Sophiestication Software sophiestication.com Sophiestication Software is a small software design and development company, which is run by Sophia Teutschler. Sophia loves to create simple, yet easy to use, human interfaces by striving to achieve the perfect balance between form and function. David Kaneda – Sencha sencha.com David Kaneda has nine years of experience designing in a variety of fields, from architecture and fashion to education and software. Recently, David created jQTouch, a Javascript framework for iPhone development. He currently works as the creative director at Sencha. Dave Howell – Avatron avatron.com Dave Howell is a six-year veteran Apple engineering manager, and the founder of Avatron – a leading developer of popular applications for the iPhone and iPod touch. Avatron’s Air Sharing application, downloaded by over one million users in its first two weeks, raised the bar for iPhone application design and software quality.
2
PERFECTING A KILLER IDEA So you want to launch your first application. Often the first hurdle met by developers is how to come up with a successful idea. With hundreds of thousands of applications available on the App Store, how do you come up with something original? Or how you can you execute an idea better than everyone else? I’ve heard many people say that ideas are ten-a-penny, and that it’s the execution and persistence that makes an application successful. I don’t think this theory holds a great deal of weight. Most of the really successful applications available today either offer something completely unique, or solve an existing problem in a really fantastic manner. A well thought through idea is everything. Solve someone’s problem in a simple fashion, or entertain a user in a completely novel way, and you’re on the road to success. In this chapter, we’ll explore the tips and techniques you can employ to craft the perfect iPhone app idea.
12
Perfecting a Killer Idea
Brainstorming Techniques I’ve often wondered how developers with a huge repertoire of applications constantly come up with new ideas. As it turns out, they have a few tricks up their sleeve. Although you may find that an idea just “comes to you” at the time you least expect it, brainstorming and proactively considering new ideas can be a worthwhile task. Perhaps begin by listing the challenges, problems and annoyances you face on a daily basis, then consider how they could be solved with a suitable iPhone app. Here are a few examples: •
I always struggle to calculate a suitable tip to leave at a restaurant. I wish there was an easier way to do this automatically.
•
Price comparison websites are great, but they aren’t much use when I’m out at the store. It would be great to have a way to check prices online using my iPhone.
•
Logging into a number of different services to check all my website statistics takes ages. It would be good to have one central place where all this information is automatically downloaded.
These ideas are not just odd concepts chosen at random. Each is a real problem faced by many people, and various iPhone apps are now available to help solve them (Tipulator1, RedLaser2, and Ego3 respectively). This is the type of thought process many developers go through. I asked Bjango: As a company with several different applications, how do you come up with new ideas?
1 2 3
http://www.sophiestication.com/tipulator/. http://redlaser.com/. http://ego-app.com/.
13
Perfecting a Killer Idea
Most of our ideas are born from necessity—the result of a lightbulb moment while trying to do something the hard way. It’s the simple notion that if there’s something we need ourselves, hopefully others will too. We keep a long list of possible app ideas. It’s important to have a big list to work from, so you don’t end up working on a dud idea, as even a small app can take a month to develop. It’s critical the best ideas are the only apps you produce. Glasshouse Apps have three successful applications in the App Store, including Barista and Cellar for the iPhone, and The Early Edition for the iPad. The former offers advice on how to craft the perfect coffee, and the latter gives you a virtual “wine cellar” in the palm of your hand. I asked the developer how they chose which of their ideas to take forward for development, and which to drop after the brainstorming stage: I try to start by thinking of ideas that inspire me personally. If I’m not inspired by an idea, and I’m only pursuing it because I think it might sell well, it’s going to be harder to stay motivated down the track. Once I’ve established a few initial ideas that I think have merit, it’s time to do some research and make sure there’s a market for it. You might be passionate about the wing span of a mosquito, but if no one else is, then you’re fighting an uphill battle! Even if you think you have a brilliant idea and a solid market, success certainly isn’t guaranteed. There are notable examples of developers ticking all the boxes and then falling dramatically short of their own expectations. It’s also important to remember that you don’t necessarily need to focus on solving a problem faced by every iPhone user. Concentrating all your energy on a specific niche and offering a valuable service for a select few people can be equally successful.
14
Perfecting a Killer Idea
Don’t assume that the first idea you take forward to development will be your main success as an App Store entrepreneur. It takes time to understand what works and what doesn’t, so be prepared to experiment with a few different projects before you stumble upon one that really takes off.
Be the First Being “first” gives you a huge advantage on the App Store – whether you’re the first person to release a particular type of app, or the first to utilize a new platform or hardware feature. The Early Edition was one of the first RSS readers available for the iPad, and early adopters were downloading it from the day the iPad App Store opened. I asked the developer how important it is to be the first to market with a particular type of app: We saw it as quite significant to have The Early Edition ready for sale on the launch day of the iPad. Aside from the unprecedented opportunity of offering our own application on the very first day of an entirely new category of device (which was incredible), having The Early Edition there on Day One meant that we were on a level playing field right from the start. This type of thinking is important, as the opportunity to have your application available to coincide with the launch of a new device is an incredibly rare one. With the iPhone and iPad now available, it could be a while before a completely new physical piece of hardware is released by Apple. Launching on Day 1 gives your application a huge advantage, as there are far fewer competitors crowding your niche, and generally less “clutter” available for that particular device. Fortunately, you don’t always need to wait for a completely new product to take advantage of this. Hardware and software upgrades often introduce new features that give developers an opportunity.
15
Perfecting a Killer Idea
One such new feature in iPhone OS 3 was the ability to access the iPhone’s iTunes library. Attic developer, Devin Ross, saw this as a great opportunity: When iPhone OS 3.0 came out, I spent a lot of time looking into the new additions to the SDK. I investigated the new APIs like maps and mail composition. The music API was appealing because the data was already there. People already have music on their iPhones. With something like maps, you need your own map information. I initially made a simple application to explore not only the music API, but the multi-touch gestures and the shake notifications. That application turned into something similar to the photo flicking apps on the App Store where you can throw around and rotate album covers. Writing that application helped me learn a lot in many different areas. I then set my mind on creating something that could be a worthwhile application. I watched the Apple developer videos on the ingredients of a good iPhone application. Apple had already made a great player for your entire collection, so I knew I had to make my app achieve a specific goal. After looking further into the API, I came up with the concept of Attic. My product definition statement read as such: “an easy to use application to find albums in your library that aren’t played often”. For people like me that like to listen to entire albums at a time, this concept was exciting. Apple regularly adds new hardware and software features, or opens up new functionality for developers to exploit. Documentation is always available well in advance of a new software update or device being released, so it’s worth taking the time to see whether you can spot a new opportunity. Here’s an example of the new API features available in iOS 4 (formerly known as iPhone OS4):4 4
http://developer.apple.com/technologies/iphone/whats-new.html.
16
Perfecting a Killer Idea
Whenever a new software release is announced, you can look for a page such as this and brainstorm a list of application ideas that weren’t possible previously. It’s a regular opportunity to be “first” with a completely new type of app.
Be Better, or Different While important, being first certainly isn’t everything. Many developers have had huge success in well-established niches simply by solving a problem better. The iPhone itself is a wonderful example of this. The first version offered, if anything, less functionality than many competing devices. It was all about the style and execution of the concept. The same is true for application development.
17
Perfecting a Killer Idea
Tweetie wasn’t the first Twitter client for the iPhone, but it quickly established itself as the best-in-class due to the thought that went into its design. It’s phenomenally difficult to develop an application that includes all the necessary features, retains a simple interface, works reliably, and is a pleasure to use. Another application that executes a small piece of functionality in a wonderful way is Birdhouse. Rather than offer a full Twitter experience, Birdhouse is simply a place to work on draft messages and publish (or unpublish) them. This functionality works because it places emphasis on only one task. It’s designed for people who like to put thought and care into their use of Twitter, and has seen great success in this simple niche. One company that has epitomized this simple approach in the web applications space is 37signals, choosing simplicity over new features time and time again in their software. I asked them whether they thought a successful iPhone app needs to be a unique, “killer idea”: If killer idea means something awfully clever, then no. Most “killer” ideas are simple solutions to simple problems. Most people don’t have problems all that complex and if you can just make some part of their day better, or more efficient, or more fun, you’ve probably got something. Focusing strongly on the user experience can be a great way to ensure your app stands out from the crowd. Dustin MacDonald, the developer of Wallet, takes this approach to differentiate his application in a very crowded niche: One obvious thing that I think a lot of developers miss is putting time into crafting a great user experience. Most people buy Apple products because of the fantastic user experiences they provide. Although there are now hundreds of thousands of third-party apps on the App Store, very few are of the same level of quality as Apple’s own bundled software. Something we’ve always tried to do, whether on the Mac or iPhone, is to reach for that same quality experience in our own apps. With
18
Perfecting a Killer Idea
Wallet for iPhone, this meant simplifying our app down to the core features, offering a familiar structure and feel (in this case with the Contacts app), and polishing the app with great looking icons, elements, and animations.
Sophia Teutschler, the developer behind Articles, Groceries, Tipulator, and a several other great iPhone apps, feels that the approach of “being better” can be enough to give you a successful app: I make Apps that cover functionality that I miss on my iPhone or iPad. Often there is already “an app for that”, but most of the time these apps offer such a terrible experience that I’d rather put time and money into making my own version of that idea. I don’t force myself to come up with new ideas. I never do any brainstorming – ideas just appear to me out of the blue. Quality always makes the difference. Articles will never be the Wikipedia App with the most features or the lowest price, that’s just not the point. Articles is about retaining focus on the actual article content. It’s not an app to “manage” Wikipedia, it’s about reading articles and consuming knowledge. No other app does that in my opinion. I’m sure I’ll add new and clever features in the future, but only those that fit into my vision for the app.
Building Your App Around a Service With the huge surge in web applications offering high quality APIs in recent years, many iPhone developers are seeing success from building an app around an existing service. Twitter, Flickr, Facebook, Yahoo, Amazon, Google Maps, PayPal – the possibilities are endless.
19
Perfecting a Killer Idea
37signals makes a range of productivity tools for businesses; software that is perfectly suited for use on the iPhone. They’ve encouraged developers to create applications around their software, and regularly promote these iPhone apps to their users. Headquarters is one such iPhone app built around the 37signals API that provides a mobile interface to Basecamp. I asked the developer, Select Start Studios, whether there are any unique challenges to building an application that offers an iPhone front end to an existing online service: Building on top of an existing platform is always a challenge. I could talk about how the underlying API may one day change or disappear all together, or I could talk about all of the small implementation details. But I think the most difficult challenge is to provide additional value to your users without overwhelming them with pointless features. When we were building Headquarters, we had to make the tough decision as to what goes in and what does not. This is mainly because Basecamp has an extremely rich API that provides access to a wealth of information. Although all of that information is valuable, it’s simply not enough to take that information and put a pretty face on it. Nor is it very appropriate on a mobile device. It was obvious that we needed to clamp down on a small set of features and make those features as close to perfect as possible. Rather than building another Basecamp application that simply exposed all of its data on the iPhone, we decided to focus the application on users who want to “get things done” and cut out anything that was superfluous. To accomplish our goal, we focused on three (and only three) major features: a dashboard that combines data from all of your projects, a dashboard for a single project and the ability to manage multiple accounts within the application. The results speak for themselves. Rather than having an overwhelming application, you have a simple, easy to use launchpad to help you get to work, remain in the loop and stay focused. As a
20
Perfecting a Killer Idea
result, we left out a lot of features from our initial release but each feature we left out only improved the final product by making it easier to use.
Relying on another third party for the ongoing success of your application always involves some risk, but the associated benefits could certainly make this risk worthwhile. You’ll have an existing user base with their data immediately available to them, fewer issues with how to handle storing a user’s information locally, and a potential avenue to help promote your app (developers are often happy to help spread the word about apps that use their API). Another possibility is to build an application that interacts with the desktop in some way. A few apps do this through a local Wi-Fi connection, others though a cloud synchronization system. One application in particular that takes this approach is iStat. Bjango’s flagship app can connect to the desktop to provide real time statistical and performance information. I asked them how they feel that this gives iStat an “edge” over other applications: iStat for iPhone is fairly unique, in that there’s not a lot of direct competition. I guess that could be seen as an edge. And rightly so, it’s taken us years to develop iStat Menus and iStat Pro on Mac OS® X, the apps that formed the core of iStat Server. It was such a big project that I’m not sure we’d want to start from scratch again.
Developing to connect to the desktop is nothing to be taken lightly. It comes with a new set of challenges, and is bound to increase development time and cost. The advantage is a unique pair of applications that are far harder for others to clone. Synchronization is another important aspect of your application to consider, especially when interacting with several different devices. I asked the
21
Perfecting a Killer Idea
developer of Simplenote, an app with particularly robust synchronization, how challenging this is to implement: The basic idea of synchronizing data among different clients and services is not that complicated, but in practice there are lots of little things that can go wrong. I’m not sure how much time has gone into that part of our service, as we are always making improvements. It’s hard to say why other apps might not seamlessly synchronize as effectively as Simplenote. I suppose we’ve been doing this for a while, and we’ve learned a lot. We also have the advantage of simplicity. We can focus on improving speed and reliability rather than adding and maintaining long lists of new features. Having said that, I think Simplenote’s synchronization can still be improved quite a bit. It’s by no means perfect. Synchronization, when done well, should be as transparent as possible. If the user needs to initiate a sync or watch a progress bar as it occurs, then it hasn’t been implemented as well as it could have been. Simplenote and Dropbox set a high standard for how well this process can work, and it’s worth aiming to emulate their seamless process. If you manage to succeed in creating an app that turns a user’s iPhone or iPad into a useful companion to another service, you’re far more likely to have a unique position in the market. Whether you’re connecting to another web or desktop app, it’s an avenue worth considering when generating your killer idea.
3
THE APP STORE Before we move ahead to the specifics of interface design, pricing, development, and promotion, it’s worth taking a broader look at the App Store platform and how you can start the process of developing your creation. The App Store has been the subject of much discussion over the past few years. Some see the closed marketplace as restrictive, controlling, and a difficult entity to deal with. Others feel that the opportunity to list and showcase their app in a central location makes it far easier to reach their user base, and a closed store is but a small price to pay. Whichever camp you fall into, there’s certainly a strong argument for fully understanding how the App Store works before diving in and launching your application. In this chapter we’ll be discussing this whole process with developers, in order to help you avoid a few potential pitfalls, and to make the most of what the App Store has to offer!
24
The App Store
Getting Started To start developing for the App Store you’ll need a Mac running OS X, and you will need to register for the iPhone Developer Program with Apple. This allows you to download the SDK to build your apps, test them on your iPhone, and submit them to the App Store. Registration is free for those just wanting to experiment with development. You can access all the guides and videos from Apple, but testing your app is restricted to an iPhone simulator on your Mac. If you’d like to to test on your physical iPhone and move ahead to officially release your app, you will need to enroll in the standard program which costs $99 a year. Once you’ve registered for the Developer Program, you are given access to all of the information Apple has produced to help you develop iPhone applications. Download the iPhone SDK and Xcode, then you’re ready to get started. Apple has an extensive set of “Getting Started Documents”5, which are vital reading if you’re going to be developing an application yourself. These are the best place to start when learning about the technical details of iPhone OS development – something we won’t be going into at length in this book. Another important document to read is Apple’s Human Interface Guidelines6, which walk through the different requirements of the user interface design of your application.
Your Product Definition Statement Before you dive in and start designing, it’s important to take a step back and come up with a product definition statement. Apple defines this as a 5 6
Getting Started Documents: http://developer.apple.com/iphone/library/navigation/.
iPhone Human Interface Guidelines: http://developer.apple.com/iphone/library/documentation/ UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html.
25
The App Store
“concise declaration of your application’s main purpose and its intended audience”7. Consider the list of your app’s features, and what makes this set of features stand out. Also think about who your users are, when and how they would use your application, and in what way your interface can reflect this. Your product definition statement should take all these elements, and combine them into one simple sentence. For instance, a statement for GarageBand could be “an easy-to-use music composition application for amateur musicians”. It’s also important to include a picture of the person you envisage using the app – in this case, “amateur musicians”. When you’ve nailed a product definition statement, you’re ready to start investigating some of the other requirements and demands of the App Store.
Choosing an Application Style Apple’s Human Interface Guidelines for developers talk a great deal about the importance of selecting and sticking with a particular “application style”.8 These dictate the type of software you’d like to create, and fall into three categories: 1. Productivity Applications 2. Utility Applications 3. Immersive Applications We asked Sarah Parmenter about the importance of “positioning” your app into one of these categories, and whether it should be something that developers consider from an early stage: 7
http://bit.ly/bm6XTj.
8
Three Application Styles: http://bit.ly/9okLIx.
26
The App Store
It is hugely important. By positioning your app in the appropriate category from the start it will make it easier for you to define and establish user interface decisions right from the off. Each different “type” of app has some clearly defined user interface guidelines, and so getting this right from the start has to be a very simple but necessary rule. This is a great place to start when defining what type of market your application is aiming to reach, and the three different styles each come with certain recommendations:
Productivity Applications This type of app is focused on the process of organizing and manipulating detailed information. They’re generally used for fairly important tasks, and organize their interface and data through a hierarchy. Although the purpose of these apps is usually fairly serious, it doesn’t mean that Apple wants you to design a boring piece of software. Their interface guidelines state: Seriousness of purpose does not mean that productivity applications should attempt to appear serious by providing a dry, uninspiring user experience, but it does mean that users appreciate a streamlined approach that does not hinder them.
27
The App Store
Mail and Photos are examples of this type of software. A useful tip is also provided relating to settings, namely that anything that needs to be changed often should be located within the app itself. Anything not changed regularly can be moved to the iPhone’s “Settings” panel.
Utility Applications The second category of applications are utilities; software that provides a single purpose, and requires a minimum of user input. The example provided is that of the Weather application. This can be used “at a glance”, and shows another characteristic of utilities – a set of preferences being displayed on the “reverse” of an information panel. Information in a utility application is generally fairly linear, letting you swipe between different items to access them. It’s unusual to “drill down” through a hierarchy as you would in a productivity app.
28
The App Store
Immersive Applications The third and final category contains applications that immerse you in their content. This could be a game, or a utility that has a full screen interface. Apple uses the example of a virtual spirit-level: An application that replicates the experience of using a bubble level works well in a graphics-rich, full-screen environment, even though it doesn’t fit the definition of a game. In such an application, as in a game, the user’s focus is on the visual content and the experience, not on the data behind the experience.
Immersive applications give you the greatest freedom to explore an original and innovative application design, but are also usually the most complex type of application to develop.
The Approval Process Discussion surrounding the App Store approval process is always ongoing, with many developers frustrated at the lack of clarity Apple provides over why certain applications make the cut, while others do not.
29
The App Store
The best way to ensure that your application makes it through this process is to ensure you stick by every guideline given in Apple’s documentation. This will no doubt require plenty of reading (and likely restrict or modify a few of the grand ideas you had for your app), but will avoid frustration when you come to submit it. Reviewers look for a variety of different things when assessing your application, with the main factors being bugs or regular crashes, use of unauthorized APIs, inappropriate content, privacy infringement, and “avoiding applications that degrade the core experience of the iPhone”9. This is where a good understanding and application of the Human Interface Guidelines will serve you well. Aiming to uphold and improve the core experience of the iPhone certainly puts you in Apple’s “good books”, and is a solid step towards having your application approved. Ultimately, it’s best to accept that the approval process is a necessary frustration. Make sure that you submit the absolute best standard of application you can, and take on board any advice received from Apple’s team of reviewers.
How Long Does It Take? The entire process of application review seems to be shrouded in secrecy. A few things Apple has released are that (a) at least two different reviewers study each application so that the review process is applied uniformly, and (b) an App Store executive review board exists that determines procedures and sets policy for the review process, as well as reviewing applications that are escalated to a higher level. In theory, Apple is fairly efficient at approving applications. At the time of writing this, 85% of new apps and 95% of app updates are approved (or rejected) within 7 days.10 Be prepared to wait a little while, and use the time wisely to start working on different promotion methods. 9 10
http://www.apple.com/hotnews/apple-answers-fcc-questions/. App Store Review Status: http://developer.apple.com/iphone/news/appstoretips/.
30
The App Store
How to Craft an Effective App Store Listing The way in which you put together your listing in the App Store can have a huge impact on the success of your application. Most developers aren’t also skilled in writing sales copy and producing a compelling pitch, so we’ll offer a few tips that should help you craft an effective listing.
Your listing is made up of several parts: 1. Title & Description 5. Price 2. Icon 6. Screenshots 3. Links 7. Rating 4. What’s New
31
The App Store
Title and Description Aim for a title that contains your application name, rather than trying to pad it out with related keywords. That said, incorporating these keywords into your application name itself can’t hurt. A quick search on the App Store for “camera”, for instance, brings back plenty of relevant applications with “camera” in their application name. A few equally excellent applications (such as “Hipstamatic”) appear lower down the results chart, possibly because they don’t have the specific keyword of “camera” in the title. Trying to aggressively optimize your title or description to achieve a good search ranking is predominantly a waste of time. Focus on creating a brilliant app, and crafting a relevant listing rather than over-including certain keywords. Bjango have a few interesting tips to share on this topic: In the current App Store, only the first paragraph of your description is shown, so be short and straight to the point. In fact, you should do that with all your copy. You simply can’t expect that anyone will read all your text. In iTunes, I think your app’s images are more important than your description, so make sure you pick the 5 best hero shots. With this in mind, it’s worth making the first paragraph an accurate description of your app’s core functionality, rather than a quick summary of what’s new in the latest update. It’s your one chance to craft a compelling one paragraph sales pitch. Here’s a great example of this in the official Twitter for iPhone app:
32
The App Store
The copy used here is simple, to the point, and makes it very clear what to expect when using the application.
Icon Your application icon is arguably one of the most important marketing elements to get right. People choose apps based on their visual appeal, and the icon is your only piece of graphical branding visible in search results. We’ll be offering plenty of tips on how to design bold, attractive icons in Chapter 5.
Links iTunes only shows three prominent links in your app listing. One to your company or product website, one to a page offering support for your app, and one to a license agreement (shown within iTunes itself). The obvious advice would be to ensure these are correct, and go to the appropriate pages. It’s also worth thinking carefully about support. An easyto-use support system can ensure you’re able to help our users in a timely fashion, and so avoid receiving negative reviews and bad publicity.
What’s New This is your opportunity to draw attention to the new features and fixes in the latest release of your app. Write concisely, and focus on the main changes with a particular release. Users aren’t going to read a technical, indepth change log of every technical alteration since the previous version.
33
The App Store
Price Pricing decisions are important. Too low, and you’ll struggle to break even on development. Too high, and you might put off potential buyers. This is another topic we’ll be covering in more depth in Chapter 7.
Screenshots There’s no way to offer a video demo of software on the App Store, so a selection of (up to) five screenshots is your one chance to impress users with the design and functionality of your application. Pick screenshots that clearly illustrate the main features you offer, and don’t be afraid to edit them with annotations to show what exactly is going on. Take a look at some bestselling apps to see a few different examples of how you can approach them. One option is to stick with simple, static images of your app:
34
The App Store
Another is to incorporate more than one screenshot to show more functionality:
Rating The final element of your App Store listing is one that you have little to no control over, and often acts as a huge influence upon potential buyers – your rating and reviews:
35
The App Store
The best way to earn a good rating is to create a bug-free, high quality application, and ensure that time is dedicated to offering support and assistance to users (however frustrating they may be!) Obviously this becomes considerably harder as your application grows in success – it’s impossible to please everyone, all the time. There have been various examples of people trying to game the system, post fake reviews, and bump up their rating artificially. While it’s no doubt possible to an extent, do everyone a favour and don’t bother. If you find that your application is receiving a high proportion of negative reviews, it’s a sign that you need to go back and take another look at why people are struggling to use (or not enjoying) your software. The notion of App Store ratings can be a challenging one, and something that you need to get right in order to persuade iPhone users to pay for your application. That said, Devin Ross isn’t quite sure just how important ratings are in the big picture: Ratings certainly have some role in whether customers will purchase the application. How much is hard to tell. Who knows if the majority of customers even read the description or just look at the screenshots.
36
The App Store
A few things developers can do to get higher ratings is to educate customers better before and even after they purchase the application. A higher price can mean higher reviews too, because customers are more likely to inform themselves of the product before purchasing. If they know what the application does before they purchase it, you’ll more likely meet their expectations. Application bugs are obvious reasons for getting lower ratings too.
How Important Are Ratings? We asked our readers how important ratings are when deciding whether to purchase an application. It turns out that they are fairly important! 48% of people classed them as “very important”, 43% found them “a little important”, and only 9% of people either said they were “not very important”, or never used them.
If you truly believe that your application is good enough to succeed and sell well, then promoting it through official channels – blogs, competitions, word of mouth – is far better than investing all your energy into a perfect rating. Treat your customers incredibly well, offer a great level of support, and you’ll reap the benefits in the form of positive ratings and reviews.
Dealing with Crashes, Errors, and Bugs The first way to avoid a buggy, crash-prone application is obvious. Test, test, test. Make the most of Apple’s “ad hoc” distribution network to gather
37
The App Store
a group of beta testers who are happy to push your app to the limit (and, crucially, report back to you). That nature of the App Store means that it takes time to fix bugs, file an update, and wait for approval. Even after that process has completed, a user still needs to login and download the update you’ve provided.
How Often Do Users Update? In our iPhone user survey, we found that 34% of users update their iPhone apps to the latest version every day, 40% complete the process a few times per week, and 16% just once per week. This is undoubtedly skewed by our “iPhone enthusiast” reader base, but even with that considered, it’s interesting to note that over a quarter of your users might not install your crucial update for over a week! Less than once per week (11%)
Once per week (16%)
Every day (34%)
A few times per week (39%) Chart 1 P. 34
38
The App Store
If your application relies on third party services, you may find yourself dependent on the uptime and stability of another web application to keep your users happy. This is always a risk, as errors that are not your fault may be attributed to your application, and give it negative reviews and ratings. Garrett Murray implemented a fascinating new feature called the “System Status Indicator” in a recent release of Ego, to notify people when a problem beyond his control was occurring: The biggest hurdle with Ego is that it relies on 3rdparty services. Often, when your application deals with other companies’ APIs, there will inevitably be problems you cannot control. Twitter has an outage, Google changes their API, et cetera. I can’t protect against those issues, and when they happen I can’t fix them immediately due to how the App Store approval system works. It takes at least a week to get a new version released just in approvals alone. After a while, it becomes a support nightmare. People don’t realize (or willfully ignore) how Ego works and when something happens with a 3rdparty, it can make things difficult. The system status indicator was a way for me to more easily report issues to users, which I was aware of and working on (or which I couldn’t do anything about at the moment), so that users felt less abandoned if something went wrong.
39
The App Store
In fact, I ended up having to use it only a few days after it was released in Ego 2.0. People were immediately gracious about the feature via Twitter because they suddenly knew what was happening and when it would be fixed. Although implementing something along these lines will certainly take a little longer to develop, it’s a great safeguard. You have a method to communicate with users, letting them know about problems beyond your control.
The Benefits Despite many people complaining about the constraints and challenges of working within the App Store, there’s no doubt that it brings a whole range of benefits. The possibility of featuring your app within an active ecosystem of users and developers is very appealing, and it can make supporting and promoting your application far easier. Let’s explore a few of these benefits further:
A Single Point of Distribution Dave Verwer is clear on what he sees as the main advantage of the App Store for developers: The main benefit of the native App Store is the complete ease of distribution. I absolutely love that I can tell someone about my app and they can do a quick search for it and have it installed in a minute or two. That process was an incredible step forward from apps on previous mobile platforms.
40
The App Store
The App Store takes away any ambiguity of where and how to download your application. After purchasing their first app, the user knows that the process for any other software will be exactly the same. One way you can help to make this even more obvious is by including an “Available on the App Store” graphic on your application website. This has become the universal indicator that your app is available through Apple’s marketplace, and people know exactly where they’ll be taken after clicking it. Garrett Murray also appreciates the infrastructure of the App Store: The App Store created an entire market overnight. In the past, if you wanted to sell applications for mobile phones (and, let’s face it, before the iPhone the urge to do so was much lower), you had to deal with carriers and other nonsense. The App Store is a fantastic infrastructure for getting your application out to users, it’s fast and you don’t have to deal with any of the payment nonsense. You submit your app, it sells, you get paid.
A Fair Commission Rate As a developer, you receive 70% of the selling price of your application. The other 30% cut is taken by Apple in exchange for hosting and distributing your application, handling payment, and promoting it through the App Store. Developers seem to have widely accepted this as a fair rate – and rightly so. Dave Howell feels that this is the major benefit of working with the App Store:
41
The App Store
The App Store removes all of the transactional costs of selling software to consumers. For only 30%, no more than traditional software distribution margins, Apple takes on a lot, including: credit card transactions, returns, some testing, localized sales in over ninety countries, VAT, import duties, Japanese withholding, international administrative overhead, direct deposit, downloads, and a shopping storefront. And compared to other mobile app marketplaces, the primary advantage of Apple’s App Store is that people actually buy apps in it! Five billion of them so far.
As a software developer, the last thing you’ll likely want to do after perfecting your application is to start working on a payment and licensing system. Having all this managed centrally takes away an unnecessary burden, for a reasonable cost.
Free Promotion Another benefit of the App Store is the possibility of free promotion from Apple. With such a large audience of users, having your app featured on the iTunes homepage (or in some cases, in TV advertising campaigns) can be a great boost for sales. One great way to help increase your chances of being featured is to integrate new software API features as soon as they become available.11 Apple recently showcased a handful of apps that had resized their display controls for the “Retina Display” and implemented iOS 4 features early, no doubt boosting their sales to owners of the latest iPhone. Garrett Murray had a little insight to share into how important this promotion can be:
11
http://daringfireball.net/linked/2010/06/25/ios-4-gallery
42
The App Store
Ego was recently featured in the “What’s Hot” section of iTunes. During the week it was featured I sold about four times as many copies each day. That’s not too bad, considering Ego is a very niche application and during the time it was featured the only iPad available was the non-3G US-only version. I think if I had been featured after international or 3G release, it would have been even higher. But when Apple features you, you take what you can get.
The Challenges There are, of course, challenges when working within a large, closed ecosystem such as the App Store. It’s best to be aware of these at the outset, as having a strong knowledge of the difficulties you may face will allow you to tackle them head on.
43
The App Store
Standing Out from the Crowd As you’d expect, one of the main challenges is how to ensure your app becomes, and remains, visible amongst thousands of others. Bjango echo this as the main difficulty they find when working with the App Store: The main challenge would have to be visibility. It’s no secret that there are hundreds of thousands of apps on the store. With so many apps released each week, it’s difficult to ensure your app has time in the spotlight. If you’re not charting or being talked about, your chance of survival is slim.
There’s no one way to do this. It’s a combination of a great idea, an attractive interface and icon, good ratings at the outset, and igniting wordof-mouth promotion. All these come together to produce an application that people download, talk about, and gradually push up through Apple’s rankings.
Frustrating Approval Process As we mentioned previously, one of the main criticisms often leveraged towards the App Store centers around the approval process. Dave Verwer, however, feels that much of this is hype, and the problem isn’t as rife as you may think: There have been a handful of ridiculous decisions made by Apple with apps being unfairly rejected, but the vast majority are approved with no issues at all. If your application is rejected, it is very rarely a terminal situation, and rejections usually happen for justifiable reasons. Apple explains what they are, along with what you need to do to fix the problem. Apple recently gave some statistics on this and the most common reasons for rejection are:
44
The App Store
1. Your application doesn’t work as advertised. When submitting an app to the store you are asked to describe what the app does for the iTunes store listing. Be as accurate as possible here and do not make your app sound like it can do more than it actually does. 2. Your application uses private APIs. This is really easy to avoid. While the private functionality may be very tempting to use during development, Apple can easily check for these APIs and will reject your app for using them. It is fairly difficult to use these APIs by accident but, just in case, there are now tools built into Xcode that will do a preliminary check for them before submission to Apple. 3. Your application crashes! This sounds really obvious, but is one of the top reasons for app rejection. Common problems here include things like not testing the application without an internet connection, and not testing with access to location services being denied by the system settings app. Do beta test your applications before submitting to Apple. None of these are actually going to be a permanent barrier to your application approval. Crashing bugs can (and should!) be fixed, private APIs can be removed and worked around using standard functionality, and your application description can be easily edited to be accurate.
Tracking How People Use Your App Lee Mallabone, the developer of Broadersheet, believes that the biggest challenge on the App Store centres around tracking app usage. On the
45
The App Store
web, this is an incredibly simple task with various services offering in-depth analysis. Not so on the App Store: The biggest challenge is probably the way that the store’s closed nature acts as a black box when it comes to marketing analytics. Many of the best tricks for online marketing are hard to achieve with the App Store as you can’t add your own tracking code to pages, you don’t see referrers, and you have no data relating to how many people have looked at your app’s page. You can’t know for certain what people are searching for, so you have to make your best guesses for the first release and gradually refine your app’s keywords and listing over time. Apple recently took a hard line on a few companies that inserted tracking code into various applications to monitor usage. They were collecting user information without consent, and Apple moved to block this with a change to their terms and conditions. A few solutions are available if you’re willing to take the time to integrate them. Google Analytics, the popular website statistic tool, offers a set of APIs that you can integrate into your iPhone application.12 This is certainly worth doing if you think it will provide valuable feedback.
12
http://code.google.com/mobile/analytics/docs/.
4
MAKING A DEVELOPMENT DECISION As I mentioned in the introduction, the aim of this book isn’t to make you a technical coding wizard overnight. There are countless other resources, books and websites for learning Cocoa Touch / Objective C and understanding the process of programming for the iPhone (we cover plenty of them in the last chapter). Whether or not you’re a programming guru, you have three routes to consider when launching your application. You can program and develop the application yourself, outsource the development to another company, or choose to bypass the App Store altogether and launch a web application that’s viewable through Mobile Safari (the iPhone’s web browser). Before you dismiss any of these, it’s worth hearing what our experienced developers have to say on the matter - the choice isn’t as clear-cut as you may think!
48
Making a Development Decision
Developing Your Own Native App Let’s start by clarifying that this option isn’t for everyone. If you’ve never heard of Cocoa, don’t know what Object-Oriented Programming is, and feel uncomfortable with the acronym “API”, developing your own iPhone application would probably be a bad decision. The best case scenario would be that you’d invest a week of time into understanding how iPhone development works, before giving up and hiring a developer. The worst case scenario would be to struggle through a frustrating development process for six months, only to launch with a bugridden piece of software. If you do have a basic understanding of programming, making the transition to iPhone development is likely to be a very pleasant experience. Dustin MacDonald has been developing using Cocoa for over seven years. We asked him whether the expansion into iPhone development was a steep learning curve, or something that seemed fairly straight-forward? Starting development for the iPhone with Cocoa Touch felt right at home. There are a few differences in the iPhone SDK that take some time to get acquainted with, but nothing exceptionally steep. Coming from a desktop world, I think the biggest overall challenge is learning to fine tune your app for a device with significantly less resources and horsepower than a Mac or PC. Many developers have become accustomed to sacrificing performance for easierto-use APIs, but good optimization matters much more on mobile platforms. As powerful as the iPhone is, it’s about ten years behind modern desktop machines in terms of processing power and available memory.
49
Making a Development Decision
This is an important consideration, and if you do decide to develop your own application, performance will be a huge consideration. I also asked Dave Verwer about this transition, and he agreed that the experience can be a fairly straight-forward if you’re used to developing for the desktop: The basics of moving from Mac development to iPhone are very easy. Everything I had learned about Mac development made iPhone development seem very familiar. Even better, a significant amount of my code just worked without any changes when I took it to the iPhone platform. What was not so easy at the outset was finding documentation on iPhone specific subjects. During the first few months after the initial SDK release, we all had a very steep learning curve, because noone really knew how everything was supposed to work. This was not helped by the tools having a few bugs in them! Luckily that has completely changed over the last two years, as – the documentation and tools are now excellent and getting better all the time. Really if you have experience with any modern, object-oriented language like C#, Ruby, Python, Java, or anything similar, then you are going to have a head start learning your way around Objective C and the iPhone SDK. The main lesson to take away is that if you already have experience programming, this option could well be very straight-forward. If not, it’s going to be a steep learning curve. Play to your strengths – if you’re brilliant at designing in Photoshop, craft a beautiful interface and hire a developer to implement it. If you’re a marketing whizz, consider focusing on promotion and contracting out the whole process of app development.
50
Making a Development Decision
Is Developing an iPhone App Going to be Fun? This depends upon how much you love development, and how passionate you are about your idea. That said, a huge 75% of the developers we surveyed said that iPhone development was more fun than their previous job. It certainly looks promising!
If you do decide to develop a native application, there are several advantages to be realised over a web app. I asked Dave Verwer about how a native app excels over a web app: It all comes down to look and feel, really. Using the native user interface elements is going to make your app feel much more like the standard apps that come with the phone. This is important because consistency is going to help people know instinctively how to use your application. They have already been trained by using all of the standard apps that came with the phone. There are web frameworks that emulate the standard iPhone user interfaces in HTML and CSS such as Phone Gap or jQuery Touch. I approach these with caution. They are generally very good, but they are unfortunately unable to get all of the details right in terms of the standard user interactions expected of apps. Where embedded WebKit and HTML5/CSS really shine in iPhone applications is within the content areas inside a native application. Using the standard iPhone controls from the iPhone SDK for navigation and combining this with an embedded browser for the content area can often be a good compromise between native and web apps.
51
Making a Development Decision
How Long Does it Take? Our developer survey asked people how long it typically takes them to develop an application. The results were varied, but most respondents said that it takes between 100 and 250 hours: 1,000+ (4%)
Less than 100 (19%)
500–1,000 (9%)
250–500 (22%)
100–250 (46%)
Chart 1 P. 46
Whichever approach you take to development – but particularly if you develop an application yourself – testing is vitally important. You need to take the time to iron out bugs and perfect functionality before publishing your software. Dave Howell from Avatron offered a little insight into how they approach this process: We employ your garden-variety development cycle. As three of our employees are ex-Apple, we borrow some best practices from Cupertino. We have a full-time quality assurance manager, a tester, occasional interns, and an army of external beta testers.
52
Making a Development Decision
We rely heavily on source code control and bug database tools to manage our tasks. Our full-time tech support technician runs our external beta program. And of course our engineers do a lot of testing before submitting code changes. Near a release, we implement code reviews. For our beta testers, we seek a mix of technically adept power users as well as smart novices. If you have the expertise to develop your own application, go for it. You’ll save a great deal on development costs, and have invaluable knowledge about how your application is put together. If the thought of opening up Xcode makes your stomach churn, don’t worry. You can still enjoy the benefits of a native application without any programming knowledge whatsoever.
Hiring a Developer The second route is to hire your own developer. There are plenty of incredibly talented programmers out there who could do a fantastic job of taking your idea, sketches, and graphical mockups and turning them into a finished application. You’ll need to gradually build up a good working relationship with a developer. You could look at this process as a one-off transaction, but in reality you’ll want to continue working with the same person in the future for feature additions, upgrades, and bug fixes. Spend time getting to know the work and personality of a developer before embarking on a new project. I asked Dave Verwer for the advice he would give to people looking to hire a developer for their app: The best advice I can give here is to put as much thought as possible into what your app will do and how it might do it before asking a developer for a quote. When a developer considers a new
53
Making a Development Decision
app from a client, ambiguity in the description of what the app needs to do makes the estimation process much more difficult. Sometimes the developer will add on time (and therefore budget) for the inevitable unseen features and problems that will be uncovered, or they will underestimate the effort and subsequently find themselves trying to squeeze your development into an unrealistic deadline. The best way to avoid problems like these is to remove ambiguity from the outset. If I could split the ideal preparation for planning an iPhone project into a couple of key points, I would suggest the following: Become Familiar with the iPhone The first step towards designing a great app is to be as familiar as possible with how the iPhone itself works. User interface consistency is very important across the iPhone platform and being familiar with the standard conventions and behaviours that are used by other apps will let you think in the correct terms. Using these standard behaviours is also a great way to get a vast amount of functionality for free, as there are quick ways for developers to implement standardised user interfaces within an app. Also look at some of your favourite other apps – not specifically with the same or similar functionality to the app you are intending to build – but just think about software that you enjoy using and get inspired by how it works. Draw and Prototype The second step is to start to plan out your app on paper. Just start drawing out screens on separate pieces of paper and laying them out on a large table. You don’t need to have a degree in art to do this – just a pencil and some imagination. As you draw the screens, place them in order on the table and start to think about how the user will navigate through your application.
54
Making a Development Decision
Also, try and fit the data that needs to be input onto a screen using an iPhone design template (mine is freely available13). Mobile apps are very different to web apps or desktop apps, and thinking about them in this way is a really useful exercise to understand user perspective. Obviously the developer will work with you to do actual designs for the app, but putting time into thinking about how your own app might function will let you plan all the little features that don’t appear when thinking about an idea at a high level. Take pictures of all of your pieces of paper and use them as part of the information you provide to the developer. If you do these things before contacting a developer, it will give them far greater confidence that you have thought through the app, and that there will be fewer unseen expectations or hidden features. This will lead to them being better equipped to give you a significantly more accurate (and probably cheaper) quote. The key aspect to understand is that the interface comes first. You need to spend time and effort considering exactly how you’d like your idea to be realized on the iPhone – right down to each individual screen. This might seem like a daunting task, but it’s the only way to ensure your vision is created exactly as you want it to be. Even if you’re a competent developer, there’s no reason approaching someone else for advice should be a bad thing. Devin Ross worked alongside Taptivate when developing Attic, and he feels that it pushed the application into a different league: I had Attic at a point where I could have released it to customers, but I wasn’t happy with how everything worked. I saw Taptivate had
13
http://shinydevelopment.com/blog/iphone-screen-design-template-pdf/.
55
Making a Development Decision
a hit with Postman and Voices, so it made sense to reach out to them to see what they could bring to the table in any regard. They helped change the way the application functioned in a way I had imagined but never realized until they came along. This type of collaboration can work well if you’re happy to bring in some advice and expertise from other people who have succeeded on the App Store. This could be a particularly good idea if the process is completely new to you. The same can be true if you’re a developer with experience in a certain language that’s unrelated to iPhone development. Despite being a software company themselves, 37signals worked with Overcommitted on the development of a companion iPhone app for their Highrise web application: Our core competency is building web applications. Building Objective-C powered iPhone apps is a different ballgame. Sure, any programmer can learn anything, but the Highrise app was separate enough that we could source it out and get it done. We still had our design team specify what we wanted and how it should work. If you do decide to go ahead and hire someone to develop your application for you, there are a huge range of resources to help you find the right person. There are two general approaches to take: (1) look for developers already advertising their services, or (2) post up an advertisement for your job, and let developers apply. If you’re going to take the former route, one of the best websites we recommend is TheyMakeApps.14 This is a directory of different companies that design and develop iPhone apps, fully sortable by location, fee, and numerous other factors. It’s a simple website to navigate, and well worth taking a look at. 14
http://theymakeapps.com.
56
Making a Development Decision
For the latter route, there are a number of different job boards where you can post a position. Some are free, and others charge you to list the project: 37signals Job Board jobs.37signals.com/categories/6/jobs 37signals have a dedicated section for posting iPhone developer jobs. It currently costs $300 for a 30 day advert. CocoaDev cocoadev.jobcoin.com With 2,000 unique visitors a day and adverts priced at just $99 for 30 days, you can reach a large number of developers for a small payment. GetAppsDone GetAppsDone.com There are always quite a few jobs on offer at GetAppsDone. Listings you post are also shared via their iPhone app.
57
Making a Development Decision
TUAW tuaw.com/jobs The Unofficial Apple Weblog have their own job board, with both iPhone and Mac OS X development jobs. Craigslist craigslist.org Although derided by many, Craigslist is still a valuable resource for those looking to find work and is a great place to post adverts. eLance elance.com A marketplace for finding a freelancer to work on the development of your project, eLance is a cost effective way to source a developer, and also helps you manage the project as it goes along. Guru guru.com Similar to eLance, Guru is another widely used place to find a freelancer. Used by developers across the world.
How Much Does it Cost? When asked how much it costs to develop an iPhone application, many respondents noted that it’s simply an investment of time. These people are obviously doing everything themselves – interface design, development, and promotion. For those that pay for their app development, the total cost was centered around the lower end. Relatively few people paid upwards of $10,000 for their application development.
58
Making a Development Decision
cont’d Series 1
$50,000+ $25,000 – $50,000 $10,000 – $25,000 $5,000 – $10,000 $1,000 – $5,000 $500 – $1,000 $1 – $500 Just my own time 0
5
10
15
20
25
Series Chart 1 P.1 53
Because our survey was targeted at developers, we expected to see that many people would be able to produce iPhone apps for a relatively low cost – investing only their own time. It’s clear that you have a choice of approaching development in a thrifty fashion, or investing more into a better polished and functional application.
Developing a Web Application The third and final option is to develop a web application – an app that is hosted on the internet, is not distributed through the App Store, and runs in the iPhone’s Mobile Safari browser.
59
Making a Development Decision
Mobile Safari is a very capable web browser, supporting an array of emerging web technologies such as CSS3 and HTML5. This makes it far easier than you may expect to create a web application that looks and feels great on the iPhone. You’ll never quite recreate the responsiveness of a native app, but it could be a great option for some projects. David Kaneda offered some insight into the circumstances when a web application can be more suitable than creating a native app for the iPhone: A great deal of the apps currently on the App Store could be recreated using web technology, barring most games. There are a variety of benefits that go along with doing so, like the ability to also serve your app on Android, which I believe will be the largest rival to the iPhone for near future. Likewise, the biggest gain is just that it’s a web app. If you choose to host it, you can deploy your app with no approval process, make live updates, and be available to a rapidly-growing majority of mobile traffic. Lastly, HTML/CSS/Javascript is a more common skill-set than Objective-C is. There’s a massive range of web developers out there which can help in finding talent and getting a job done quickly and inexpensively. One example of an iPhone optimized web app executed particularly well is Gmail. Although the iPhone has a built-in Mail client, many people still prefer the web interface of Gmail and its custom interface. It’s also possible to save a web page to your home screen, and access it as you would a normal application:
60
Making a Development Decision
It’s worth mentioning that Apple maintain a regularly updated directory15 of iPhone optimized web applications that can provide plenty of inspiration for ideas and techniques.
Do People Use Web Apps? Although the iPhone is perfectly capable of running web apps to an almost-native standard, how many users actually use this functionality? We found that 34% of people questioned had more than one web app on their home screen. 21% had just one, and 42% of people didn’t have one at all. Awareness (at least among our readers) seemed high, with only 4% of people answering “What’s a Web App?”
15
http://www.apple.com/webapps/.
61
Making a Development Decision
cont’d
What's a web app? (4%) Yes – More than one (33%)
No (42%)
Yes – Just one (21%) Chart 1 P. 56
Obviously the main hurdle to overcome when taking this approach is your application interface. The goal is usually to mimic the iPhone’s native interface as closely as possible, so the user feels that they’re actually using a local application. David Kaneda highlights a number of other inherent difficulties in making your app with web technology: One big one is monetization: Web app developers need to wrap their app in something like PhoneGap16 to get on the App Store, or create an entire payment system within their app. 16
http://www.phonegap.com.
62
Making a Development Decision
Another big stumbling point in web technology is the unavailability of cross-domain requests. Developers are forced to either stick with JSON-based web services, or again, wrap their app in something like PhoneGap. YQL17 also provides a fantastic service for this, providing a robust tool for making JSON requests to normally REST/XML-based APIs. At any rate, beyond some of these stumbling points, it’s quite impressive what is possible with web technology; 3D animations, offline storage, and cross-device compatibility.
It’s easy to get the impression that Apple doesn’t value web apps as highly as they do native software on the App Store. David feels that this isn’t necessarily the case: I think Apple has done a great job guiding WebKit and also creating the most powerful mobile browser in the world. That said, they obviously put more marketing focus behind native app development, as it brings them revenue. There are lots of features I’d love to see in Mobile Safari: accelerometer access, more robust touch events, camera or contacts access etc. But Apple has a limited team and they do make great strides with the browser on a regular basis. Luckily, as it is providing one of their key arguments against allowing Flash on the iPhone, they’ve been forced to put a renewed interest in the web standards recently, with a lot of emphasis on HTML5/ CSS3. This is doing great things to move the web forward altogether.
It’s worth re-iterating the downside of this development approach: your application is not listed in the App Store, and Apple does not handle the payment processing and distribution for you. This is a fairly important 17
http://developer.yahoo.com/yql/.
63
Making a Development Decision
factor to consider, as it would be difficult – if not impossible – to reach the profitability and popularity of some of the bestselling App Store software. If you want to create an application for an existing user base (if you already run a successful web application, for instance), this approach could be a good one. For targeting new users, it’s likely to be a greater challenge than the native route. A number of different Javascript libraries have sprung up for helping with the development of web applications, and they are worth taking a look at for help when putting together your application front-end: JQTouch jqtouch.com Spice up your iPhone websites using JQTouch, the JQuery plugin for mobile web development. iUI code.google.com/p/iui iUI is a Javascript and CSS framework for creating web apps which look and act like standard iPhone apps. iPhone Web Developer Toolbar manifestinteractive.com/iphone An ingenious bookmarklet from Manifest Interactive helping you to build and debug iPhone websites. PhoneGap phonegap.com As David highlighted, PhoneGap is also an excellent solution for turning your web application easily into a native app.
64
Making a Development Decision
Quick Guide: Creating an iPhone Optimized Site Although we aren’t delving too deeply into development in this book, I thought it would be useful to quickly go over what you need to include in a webpage, to ensure that it will function correctly on the iPhone. It’s simply a case of including the following three declarations in your HTML page, somewhere between the <head></head> tags: <meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="viewport" content="width=device-width, userscalable=no"> <link rel="apple-touch-icon" href="iphoneicon.png"/>
•
The first of these removes the standard Safari navigation bar, and the controls that are usually present across the top of the window. These needn’t be present if you’re designing a web app that has its own set of controls for navigating around.
•
The second prevents the user from being able to zoom and scale the interface – usually the case in websites – which makes the page feel far more like a native application.
•
The third and final declaration tells the iPhone where you’ve located an icon file that will display when the user saves the app to their home screen. This will have Apple’s glossy overlay placed on top of it, but if you’d prefer for this not to happen, you can change the name of this declaration to apple-touch-icon-precomposed.
In addition to these, you’ll also need to consider producing a stylesheet that accommodates the iPhone’s screen size, and ensure that everything is well optimized for a touch interface. Nettuts+ published an article18 that offers a great insight into this, and is well worth taking the time to read. 18
http://net.tutsplus.com/tutorials/tools-and-tips/learn-how-to-develop-for-the-iphone/.
5
THE IMPORTANCE OF SIMPLE, SEXY INTERFACE DESIGN As I’ve already mentioned, interface design is all-important, and there are plenty of developers to profile in this section who are doing a great job. We’ll also be talking to Sarah Parmenter, a highly talented interface designer with plenty of experience to share. Apple exerts a surprising level of control over the style that your application should adhere to – it isn’t just a case of opening Photoshop and creating something pretty. Depending upon the type of app you’re creating, you may have less control over the interface than you’d think.
67
The Importance of Simple, Sexy Interface Design
Apple’s Human Interface Guidelines We’ve already dipped into the Human Interface Guidelines19 when looking at different “types” of iPhone application, and it’s the most important guide to read before you get started thinking about your application’s interface and functionality. These walk you through the process of planning your application at the outset, and move on to offer recommendations for the style of interface you should design.
Just How Important is Interface Design? In our developer survey, we asked people how important they feel each of these four characteristics is for an application to be a success. The results speak for themselves, and it’s clear to see what an enormous role interface design plays in the success of failure of your project: Perfectly Crafted App Store Listing
Low Price
Great Interface Design
Unique Idea
0
Irrelevant
10
20
Not So Important
30
Quite Important
Chart 1 P. 61
19
http://bit.ly/bvPM2b.
40
50
60
Very Important
70
68
The Importance of Simple, Sexy Interface Design
You’ll learn about the use of metaphors, direct manipulation, gestures, accessibility, and different elements of the iPhone user interface. One point worth highlighting relates to aesthetic integrity, and what this means. Apple has a great explanation:20 Aesthetic integrity is not a measure of how beautiful your application is. It’s a measure of how well the appearance of your application integrates with its function. For example, a productivity application should keep decorative elements subtle and in the background, while giving prominence to the task by providing standard controls and behaviors. An immersive application is at the other end of the spectrum, and users expect a beautiful appearance that promises fun and encourages discovery. Although an immersive application tends to be focused on providing diversion, its appearance still needs to integrate with the task. Be sure you design the user interface elements of such an application carefully, so that they provide an internally consistent experience. When placing focus upon “sexy interface design”, it’s incredibly important not to make the interface design itself the end goal. Your application is designed to serve a purpose and help the user complete a task. An interface should, first and foremost, make this task simple and enjoyable to achieve. Gorgeous interface design supports this process. Apple’s guidelines also explain clearly how you should use gestures in an appropriate manner. Steve Jobs was recently questioned about handwriting recognition systems using a stylus.21 His response? “If you need a stylus you have already failed.” Apple are strongly committed to the idea of a user’s finger being the only pointing device they need:
20 21
http://bit.ly/ckTjGS. http://d8.allthingsd.com/20100607/steve-jobs-at-d8-the-full-uncut-interview/.
69
The Importance of Simple, Sexy Interface Design
There are real advantages to using fingers to operate a device: They are always available, they are capable of many different movements, and they give users a sense of immediacy and connection to the device that’s impossible to achieve with an external input device, such as a mouse. However, fingers have one major disadvantage: They are much bigger than a mouse pointer, regardless of their size, their shape, or the dexterity of their owner. In the context of a display screen, fingers can never be as precise as a mouse pointer. When designing your interface, it’s important to remember this fact. Apple specifies different size requirements for areas of the interface a user can tap on, and you’ll want to follow these to ensure your app is usable. I can’t overstate how useful the Human Interface Guidelines are to read through, and fully understand before you begin designing the functionality and layout of your app. Read it cover to cover, read it again, then get started.
Why Is Sexy Interface Design So Important? Let’s move on to consider why interface design is actually so important. Why are we drawn to attractive application design, and how can you, as a developer, use this to your advantage? Headquarters steers clear of the standard iPhone interface elements, and creates a thoroughly unique look and feel. I asked the developer if this involved a great deal more work than using the standard iPhone UI controls, and whether the extra effort paid off: With Headquarters, we actually went through about three or four different designs before settling on the one you see in the app today.
70
The Importance of Simple, Sexy Interface Design
In the end, we found that the application simply looked more polished and pleasing to the eye with the dark, sleek design. But more importantly, with the high level of customization we were able to integrate completely custom controls that wouldn’t stick out. Two great examples of this are the tabs on the dashboard and the custom navigation bar we use. Despite these two controls being completely alien to the iPhone platform, they fit in really nicely and they open up the ways a user can interact with the screen. We received a lot of great feedback on the interface – not only because it looked good, but because people liked how the screens were laid out. Although developing these custom controls extended both our design and development cycles, they were definitely worth the risk and the effort. Glasshouse Apps, the developers of The Early Edition, took the approach of crafting an interface that mimicked a real-life newspaper. This makes perfect sense on the large iPad screen, but I asked Graham whether he thought it could work equally well on the iPhone: My gut feeling is that real life metaphors can work well at any size. It just depends on the suitability of the object you’re alluding to and how seamlessly you can integrate it with your app.
71
The Importance of Simple, Sexy Interface Design
Many applications use this idea of metaphor – designing something on screen that closely resembles a physical item. Apple’s Notes application is a good example of this, as are the sticky notes found on the Dashboard of OS X. Any interface design that makes you stop and say “wow” usually uses some form of metaphor in one way or another. It could be something as obvious as the newspaper above, or it could be more subtle – a gorgeous, realistic texture, for instance. It is, of course, important to remember that “design” is far more than just how your application looks. It’s also crucially about how it works. Marc, from Bjango, had something really interesting to say in this regard: I think a great interface and app workflow is crucial. After all, it’s the only thing a user sees. You may have a world class app backend (which is also important), but the user can’t actually see that. They only see your user interface.
72
The Importance of Simple, Sexy Interface Design
Now might be a good time to mention that we consider design to be the way something works, as well as the way it looks. They go hand in hand. When we’re mocking and testing different layouts, everyone’s involved. Design certainly isn’t just the role of one person. It’s more about structure than colouring in pixels.
The Interface Design Process You have a few different options available when approaching the interface design of your application. If you expect the layout to include mainly standard iPhone controls, then you’ll probably be able to work on the positioning and layout of these yourself.
73
The Importance of Simple, Sexy Interface Design
If, on the other hand, you want a more customized user interface, you’ll need to think about hiring a designer. If you have experience in this area, by all means explore how you could design the interface yourself. If not, there are plenty of great interface designers who specialize in working with iPhone developers. Though the cost of hiring an interface designer will vary depending upon the experience of the designer you hire, someone fairly talented may well charge a few hundred dollars per day. Although this sounds expensive, it is a choice that’s worth spending some time on, and carefully considering. If you want your application to really stand out from the crowd but have no design experience yourself, an interface designer could go a long way towards turning your app into a success. One such designer, Sarah Parmenter, walked us through the process she takes when designing iPhone applications. This offers a good insight into how the process could work if you approach this task yourself, or what to expect when hiring an interface designer to craft your application’s UI for you. I generally get sent a beta of the app to test drive and make notes on. I nearly always go through a wireframe stage, even if I haven’t been commissioned to do so, as there may be tweaks and adjustments that could be made to benefit the user that the developer has not thought about. I produce this as a Keynote presentation and design screens with notes and annotations on each document so that the client has something to either pass on to their developer or use as reference.
74
The Importance of Simple, Sexy Interface Design
75
The Importance of Simple, Sexy Interface Design
I almost always start on paper and then move into Photoshop for the actual design elements. Once I have crafted the UI, I then move these back into a Keynote document and annotate the screens again so that the client understands why things may have been designed in a certain way. I find that explaining design decisions rather than just sending them a screenshot is always a better way to communicate.
Designing an iPhone interface isnâ&#x20AC;&#x2122;t simple. There are unique challenges associated with the interfaces of mobile devices â&#x20AC;&#x201C; even if you feel comfortable in Photoshop and Illustrator, it can be a bigger hurdle than youâ&#x20AC;&#x2122;d expect.
76
The Importance of Simple, Sexy Interface Design
It isn’t just a case of putting together a screen full of pretty graphics. You also need to consider how animation and movement should display, the way in which different pages interconnect, how the interface should adjust for different orientations, and spend time thinking about minimum hit size (and correspondingly, how large different interface elements need to be). The latest release of the iPhone has a far higher resolution screen (960x640 pixels) at greater pixel density (326 ppl) than we’ve ever seen before on a mobile device. This means that graphics will use more pixels for the same effective artwork size – something your interface design should take advantage of. If you do decide to hire an interface designer, Sarah had some great tips to ensure that you approach the process as well-prepared as possible: I receive projects in all kinds of phases. I get clients who just have an idea for the app, I get sketches, full wireframes and then betas of apps which need some UI help. All of those mentioned require varying degrees of work and budget allocation, so a developer would need to be sensible when approaching a UI designer as to what their budget is and how they want to spend it. If you are unsure of what you are doing, and on a shoestring budget, then try to do as much of the groundwork yourself and simply hire a professional as a consultant for an hour or so to check over your work and suggest any changes. Whether or not you choose to hire an interface designer, it’s vitally important that you give this stage of the process the time and investment it deserves. You may have hired an incredibly talented developer, but this doesn’t mean that they can also design a beautiful interface (in fact, this is hardly ever the case).
77
The Importance of Simple, Sexy Interface Design
Crafting an Irresistible Icon After you’ve perfected the design, functionality and interface of your application itself, you’ll need to start thinking about producing an irresistible icon. It’s impossible to overstate just how important your app icon is – it’s the one element of branding that appears everywhere, and needs to clearly convey what your application is all about. Achieving this in a 57 square pixels is no mean feat, and it can be a very challenging process to get right. Apple has a few suggestions surrounding icon design that they like developers to follow:22 This is a place where branding and strong visual design should come together into a compact, instantly recognizable, attractive package. Try to balance eye appeal and clarity of meaning in your icon so that it’s rich and beautiful, and clearly conveys the essence of your application’s purpose. It’s best to stick with a bold image that conveys your application’s branding, rather than trying to include text within the icon. You also need to produce a 512x512 version of your app icon that Apple are able to use for promotion if they decide to. This can include a greater amount of detail than the smaller app icon, and it’s a good chance to inject some UI beauty and texture. Renowned icon designer Sebastiaan de With had three pieces of great advice to share on this topic: First off, look carefully at how Apple designs interfaces and icons. Redraw them, study them, and learn their style and the constraints 22
http://bit.ly/caLQqX.
78
The Importance of Simple, Sexy Interface Design
the designers imposed on themselves to make designs fit in and achieve a consistent result. Always consider consistency with the OS; it can be the difference between ending up on some screen or on the home screen, front and center. Steal that spot. Second, go design. Done? Start taking stuff out. What can you remove? Even more? Take it down to the basics and then some. A gold star if you chose a concept that was delightfully simple and appropriate in your first swing at the icon. Lastly, have some fun. If you make sure your design is simple and feels ‘native’ to the iPhone or iPad, you can see how much fun you can have in those little rounded squares. There are a billion possibilities, and it’s fun to dive in and see what those are! Sebastiaan also had a few tips regarding whether it’s a good idea to attempt icon design yourself, or hire a professional from the outset: Generally, it’s a good idea to hire a designer. But don’t take that from the designer guy. If you’re capable and can be brutally honest in judging your own product, by all means design for yourself. If you’re unsure of the quality of your design work, let some designers take a look. You can always hire a designer if you feel the need. This sentiment is echoed by Bjango, who has a distinctive style across all their application icons: I find designing app icons difficult. It’s such a challenge to sum up everything your app does in a single, memorable and beautiful symbol. Something that is focused, descriptive, yet uniquely yours. I think my only tip would be to find someone who’s a great icon designer and pay them to do it for you. Although that’s advice that we haven’t taken ourselves.
79
The Importance of Simple, Sexy Interface Design
If you really have to design your icon yourself, then you will probably want to ensure you have a prominent colour, a recognizable silhouette and something that works very well at small sizes, but also plenty of detail when the icon is shown large. Make sure you fine tune for all sizes, too. You’ll definitely need to fix and tweak your final 57x57 pixel (iPhone) or 72x72 pixel (iPad) home screen design. Apple specifies a number of different required sizes for icons, and you’ll need to provide various resolutions for their different devices (iPhone, iPad, and the high resolution iPhone 4). These are outlined in the following table:23 Apple’s Icon Size Requirements Description Application icon (required)
App Store icon (required) Small icon for Spotlight search results and Settings (recommended)
23
http://bit.ly/c4f64Y.
Size for iPhone and iPod touch (in pixels)
Size for iPad (in pixels)
57x57
72x72
114x114 (high resolution) 512x512
512x512
29x29
50x50 for Spotlight
58x58 (high resolution)
29x29 for Settings
80
The Importance of Simple, Sexy Interface Design
Document icon (recommended for custom document types) Web Clip icon (recommended for web applications and websites)
22x29
64x64
44x58 (high resolution)
320x320
57x57
72x72
114x114 (high resolution)
Toolbar and Navigation bar icon (optional)
Approximately 20x20
Tab bar icon (optional)
Approximately 30x30
Launch image (required)
Approximately 20x20
Approximately 40x40 (high resolution) Approximately 30x30
Approximately 60x60 (high resolution) 320x480 640x960 (high resolution)
Both 768x1004 (portrait) and 1024x748 (landscape)
Design Kits, Interfaces and Icons In this short section, weâ&#x20AC;&#x2122;re going to share a series of links and resources to assist with your own interface design. Some of these are pre-built templates that you can use in Photoshop or Illustrator, others are great tools that can help with wireframing and getting your ideas down on paper! iPhone GUI Design teehanlax.com/blog/2009/06/18/iphone-gui-psd-30/ This brilliant Photoshop GUI kit comes with all the different types of buttons, sliders and graphics you need to quickly create mockups of your apps.
81
The Importance of Simple, Sexy Interface Design
iPhone PSD Vector Kit smashingmagazine.com/2008/11/26/iphone-psd-vector-kit/ Smashing Magazine brings a much simpler iPhone GUI for those of you focusing on straightforward applications. iPhone Application Sketch Book amazon.com/gp/product/1430228237 For those of you who prefer to sketch out your applications, this book provides 150 templates at 1.5x zoom. Plenty of room to jot notes and wireframe in style. iPhone Stencil Kit uistencils.com/products/iphone-stencil-kit A brilliant little stencil with all the major buttons and shapes you will need to create quick and sharp mockups of your iPhone apps. iPhone Sticky Pad uistencils.com/products/iphone-sticky-pad Design your iPhone apps on this sticky pad that ties in with the above stencil. You can then stick your designs around the office and create flowcharts of your apps. Icon â&#x20AC;&#x2DC;Shineâ&#x20AC;&#x2122; Kit notlost.blogspot.com/2008/10/iphone-icon-shine-kit.html Easily recreate the glossy icon shine using this clever kit. Simply drop your flat image into the kit and it layers the shine over the top. Saves time, looks great. App Sketchbook appsketchbook.com Quickly put your iPhone and iPad app designs on paper. These sketchbooks come in various different styles and sizes for different devices.
6
LEARNING TO KEEP IT SIMPLE AND ITERATE Most successful apps tend to approach a fairly simple concept, but execute it phenomenally well. Even if you have a huge, grandiose idea for your application, beginning with a basic feature set is certainly the best place to get started. Determine the bare minimum of what a user would be satisfied with, and consider producing just that. This cuts down on development costs and ensures people understand clearly what the core functionality of your application is. It’s easy to add new features as they’re requested, but you’ll encounter far more resistance if you try to remove something that a few dedicated users have become accustomed to having available. Apple actually advises this approach in their developer guidelines. They suggest that you should launch an application with minimal features, and then work on the basis that the most oft-requested features should probably be included.
84
Learning to Keep it Simple and Iterate
Iteration in Action This iterative process has been used by many of the most successful applications in the App Store. Select Start Studios completely understand the importance of starting simple, especially when building upon an API: When creating larger, more complex applications, it’s always important to remain focused on adding value. It’s easy to throw in a ton of little cool features, but it’s my personal belief that if there are features that are not helping the users accomplish their primary task then these features are in the way. If you look at Facebook’s iPhone application, it’s very limited in comparison to their website yet it’s a fantastic application. It allows users to make posts, see other posts, upload photos and a few other small things. It doesn’t let you access your games, your apps or any of the extra stuff that Facebook has added over the years; it focuses on what’s important to the platform and it does it remarkably well. 37signals’ philosophy seems to be that keeping a product simple at launch – building half a product, rather than a half-assed product – is a good way to develop. They took this approach when developing their iPhone application for Highrise, and feel it’s particularly important when developing for a mobile device: The Highrise application we built for the iPhone omits a fair amount of stuff, so that we could wrap it up and get it out quickly. We’re working on another app at the moment that’ll go even simpler still24. I think if anything, it’s even more true on a mobile device that the app has to be simple. When you have three minutes of downtime to do something with your phone, you just don’t have the patience for complexity. 24
This turned out to be “Sketch”, a straightforward sketching/drawing app for the iPad: http://37signals.com/draft.
85
Learning to Keep it Simple and Iterate
In a similar vein, when launching Ego, Garrett Murray started out by only offering statistics for a handful of web applications and services. He’s gradually increased the scope of the application over time: There’s definitely a benefit to starting simple. As the old adage goes, release early, release often. This is especially the case when you take into account the volatility of the App Store – it’s much better to get a product to market and to add functionality than to sit on it for a year without a release. You’re not making any money if there’s no product out there earning income. With Ego, my initial focus was to cover the few services I wanted right off the bat (FeedBurner, Mint 2 and Twitter). I built the core app with growth in mind so it would be easy to add new services down the road, which is exactly what I’ve been doing over the last year. I started with three, now Ego supports eight. And there are several more to come over the next few months. The App Store is full of examples where this process has worked for a developer. Most successful projects focus on one simple task, helping the user complete it as easily as possible. Apple states that “an app must solve a user’s problem clearly and elegantly.”25 Stripping away all the unnecessary clutter is the absolute best way to achieve this.
25
Eric Hope – User Experience Evangelist, Apple (via Sarah Parmenter, FOWD London 2010)
7
PRICING YOUR APP RIGHT Pricing is a tricky concept, and can be very difficult to nail the first time around. Different companies take wildly different approaches to pricing their apps, and have equal success aiming for a high price as compared to a lower price. If you believe that your application offers enough value, don’t be afraid to charge more than a couple of dollars – people will happily pay, and many examples exist that show this approach works. Just take a look at Apple’s “Top Grossing” list. Fortunately, the App Store has given developers the option of many different pricing models, each of which has its own advantages and disadvantages. In this chapter, we’ll investigate which choice might be right for you.
88
Pricing Your App Right
Breaking Down Your Revenue In all likelihood, you’re getting into the App Store business to make money. Whether this is through direct sales of your app or advertising – the motive is usually the same. With this in mind, it’s important to understand Apple’s revenue breakdown clearly. As I’ve mentioned before, the way that revenue sharing works means that you receive 70% of all sales of your app, and Apple takes a 30% cut in exchange for handling downloads, bandwidth, credit card processing, and distributing your app. Apple pays you on a monthly basis, so be prepared to wait a little while before the revenue from your sales reaches your bank account. You’ll also need to generate at least $250 worth of sales before Apple will release a payment. Before you pick a pricing model, or decide to give away your application for free, it’s important to consider what the ongoing costs will be of running your app. Although Apple handles downloads, payment processing, etc., you may need to maintain a server that is capable of powering any community features you implement. As your application grows in popularity, so will the demand placed upon the hardware that you maintain yourself. Even if this is just a simple database, several thousand simultaneous users is still going to pose a problem. Be sure to factor this in, and plan carefully so you aren’t left with a huge hosting or bandwidth bill. For those of you considering the web app route, it’s worth mentioning that the process of deciding how to price and sell your app can be difficult. David Kaneda had the following to say:
89
Pricing Your App Right
Pricing is a universal challenge, to web and native alike. Most web app developers are currently using PhoneGap to get their web apps sold in the App Store — they could obviously create an entire repeatable payment system to go along with their app (as most desktop web app makers do), but I’m not sure how comfortable people are with mobile web app subscriptions quite yet.
The Pricing Dilemma Broadly speaking, there are two options available to you when deciding how to generate revenue from the App Store: 1. Give your app away for free and generate revenue from advertising or inapp upgrades 2. Charge for your application outright One of the predominant models on the App Store is to utilize both of these options – offer a free version of your application, and an ad-free commercial version with additional features. This approach is taken by The Iconfactory with Twitteriffic: We took this approach because we wanted to get Twitterrific into as many people’s hands as we could, and still get some return on our investment. Many people don’t have any problem with viewing advertisements and for them, Twitterrific is great. Those who do, or who want to directly support our development efforts, can purchase the adfree version. It really is the best of both worlds. This is the iPhone equivalent of a “freemium” model – giving away a certain level of functionality for free and tempting users to pay for the full
90
Pricing Your App Right
experience. It works in all manner of different niches, but particularly well for games. Giving away one level lets people get a feel of how the game works, and draws them in to purchase the full application to play further.
In this respect, pricing becomes something of a marketing technique to persuade people to “try before they buy”.
Do Users Download Trials? We asked our readers whether they download these free application “trials” before purchasing the full version. 52% always download the freebie, 44% sometimes try before they buy, and only 4% “usually just purchase” the full version. This goes some way towards showing the power of this marketing method. If you’re confident enough that a free trial of your application is the best way to persuade users to buy, you should go for it.
It’s important to understand that price alone doesn’t need to be the key motivator to persuade people to buy. Wallet, for instance, at $4.99, is priced slightly higher than the “baseline” standard for iPhone apps which is which is around $2.50 in North America.26
26
http://www.readwriteweb.com/archives/average_price_for_iphone_apps_keeps_falling.php.
91
Pricing Your App Right
I asked the developer what their main considerations are when deciding on a price, and whether people are happy to pay more for higher quality applications: Pricing really depends on what your app does and who you’re trying to reach. With Wallet, our biggest immediate audience is those who use the Mac version of the software. For them, price isn’t too much of a concern. They’re happy to be able to buy an app that lets them sync over and access all of their important data on their phone – something they’re likely to use every day. Of course, there are also a significant number of people who buy Wallet for iPhone yet don’t use the Mac version. We didn’t want to scare these people away, so it was important to still price Wallet competitively with other standalone apps. In general, I think most reasonable people are willing to spend a little more for a higher quality application if it’s something they’re going to use a lot. That being said, people have also become accustomed to fairly low-priced apps in the App Store. If the price tag is higher than $10, they might not even take a look. The trick is to ensure you charge a price that considers both the functionality of your application, the type of person using it, and how often they will use it. Here’s a general idea of how you could think about these factors affecting price: App Used Rarely
App Used Often
Older / Professional User
Mid-Priced $1.99-$4.99
High Price $4.99+
Young / Casual User
Low Price $0.99-$1.99
Mid-Price $1.99-$4.99
92
Pricing Your App Right
Avatron take the approach of putting themselves in the shoes of their customer: We look at it as our customers would. What would we be willing to pay? And like good MBAs, we “maximize demand curve utilization” by experimenting with prices and studying price elasticity. People are absolutely willing to pay a premium for apps that provide value to them. If you take a look at the top grossing list, it isn’t packed with $0.99 apps.
What Are Users Willing to Pay? One of the questions we asked in our iPhone user survey was “What is the most you’ve ever paid for an iPhone app?” The results were interesting. The overall average was $14.58. A few people had never paid for an app, and a few had paid up to $100. By far the most common response was around the $10 mark. One third of all our respondents had paid a maximum of exactly $9.99 or $10 for an application, suggesting that a large majority of people are happy to pay a respectable fee for software that really helps them solve a problem.
There is, of course, the option to do something slightly different. Simplenote’s pricing model is particularly interesting, based around an advertising-supported free version, and a yearly subscription to remove advertisements and unlock premium features. This was done in an effort to move beyond a traditional pricing model:
93
Pricing Your App Right
We were experiencing some measure of success with a more traditional pricing model, and could probably have maintained that as a profitable small business. But we’re thinking bigger. It’s very motivating to have an impact on people’s lives. The more people we can help, the more motivation we have to keep improving the service, and the more potential we have as a business. This was a risky move for us, the results of which aren’t entirely clear yet. We need to keep growing. We’re working hard on the next major version.
On the surface, it might seem that the App Store has a fairly strict “paid or free” approach to generating revenue. This is far from the case, and you actually have a great deal of flexibility on how to charge for your application.
What is the Usual Weekly Budget? One final question we wanted to ask our readers related to their weekly “app budget”. Just how much are people happy to spend on software each week? An overwhelming majority, over 80% of respondents, spend between $0 and $5 each week. Around 15% spent $5-10, and only a handful spend any more than $10 each week. Users don’t have a limitless budget, and you need to compete for their hard-earned cash!
Advertising Options If you choose to take the approach of giving away your application for free (or at least offering a free version), you’ll want to consider the different types of advertising available.
94
Pricing Your App Right
Mobile advertising has taken off in a huge way since the iPhone rose to popularity, and there are many different advertising companies competing for your business. Here are just a couple to consider, each taking a different approach: iAdSM Advertising System – advertising.apple.com As this advertising platform is provided directly by Apple, we’ll take a look at it first. iAd debuted in the iPhone’s latest operating system update – iOS 4. Apple wanted a way to integrate advertisements within applications so that the user doesn’t need to leave a particular app and visit a website after clicking an ad. If you’re a developer, the iPhone SDK 4 lets you easily embed iAd rich media ads into your application that are dynamically delivered to the user’s device. You set the system up, and Apple handle filling the space with an advertisement. The agreement and breakdown is fairly simple. As a developer, you receive 60% of the advertising revenue generated. Apple keep the other 40% as a payment for finding advertisers and handling payment. You are, of course, not limited to using Apple’s advertising system. Various others still exist – some on traditional impression or click models, and others through different means. Google / AdMob – admob.com Another advertising network, recently acquired by Google, is AdMob. This is, in effect, a direct competitor to iAd. You can integrate the service into your app, and are paid on a monthly basis for any advertisements sold. Fusion Ads – fusionads.net One advertising platform that has found its way into a number of wonderful iPhone apps is Fusion Ads. They
95
Pricing Your App Right
display their advertisements in applications such as Byline, Simplenote, Textie and Trackthepack. This is an “invite only” advertising network, and focuses mainly on designcentric services. It’s good to know about, though, and worth keeping an eye on if your application falls into this particular niche.
What Do Users Think About Advertising? We asked our iPhone users how they feel about iPhone advertising; if they’d rather have a free app with advertising, pay for an ad-free app, or whether they didn’t mind: I'd rather have a free app with advertising (27%)
I don't mind (36%)
Chart 1 P. 88
I'd rather pay for an ad-free app (37%)
If you were hoping for an easy answer, sorry to disappoint! The results are incredibly evenly split, which re-enforces the choice of many developers to offer both routes. Offering an advertising funded app, with the ability to turn off advertisements for a fee, might be the best solution.
8
THE PERFECT PROMOTION MIX There are two important stages when promoting your application – at launch, and on an ongoing basis. Spending time and effort (not necessarily money) in the run up to your application launch can be a brilliant way to get noticed immediately. Many successful applications are adopted very quickly, and make their way into Apple’s top listings within a few days. Unless you’re incredibly lucky (or have a completely outstanding idea), this type of response won’t come easily.
98
The Perfect Promotion Mix
Perfecting Your Website The bottom line is that it’s down to you to be the ambassador for your app. You can’t just hit submit, and expect to be an overnight success purely because you’re in the mystical “App Store”. Dave Verwer feels the same way:
The most important thing here is to not depend on the App Store to be your marketing. It’s only really an effective marketing mechanism for the apps in the top charts (less than 0.05% of the apps in the store are currently in the US Top 100 chart). Realistically, you are not going to get there without alternative methods of marketing. So once the App Store as a marketing mechanism has been discounted, you are left with traditional marketing methods. The most important of these is also the simplest! Talk to people about your application. Tell everyone you can find about it, write to bloggers and people who are influential in the area that you want your application to sell. Go to conferences and Apple events, tell everyone who will listen about it!
As we mentioned previously, there are various techniques you can employ to make sure that your App Store listing is as clear and compelling as possible. That’s one route to perfect, but the other is your application’s website. This is your chance to give a far greater amount of information to a potential buyer, and really impress them with your app’s functionality right from day one. Dave Verwer outlines two options for your website:
99
The Perfect Promotion Mix
It is very important to have a web site for your application â&#x20AC;&#x201C; something that people who are interested can visit and find out more about you and your app. For smaller apps, this could be a page on your existing company site or for larger apps it could be a dedicated web site like we produced for our app, Balloons!27 Generally speaking, both of these techniques can work well. The important thing to remember is that simply tacking another page onto your existing site isnâ&#x20AC;&#x2122;t enough. You need to create something that carries the style and branding of your application onto the web. Sophia Teutschler has a few interesting thoughts to share: In my opinion, a product website should go beyond what the App Store page offers. Most important are ways to show what the app does without relying on a demo version. More screenshots than on the App Store page are a must, but several tutorial videos work best. I always liked the way Apple does these kind of videos by coupling the tutorial with emotion.
27
http://balloonsapp.com.
100
The Perfect Promotion Mix
Here are just a few examples of iPhone app websites that are executed extremely well:
sophiestication.com/articles
tapbots.com/software/pastebot/
101
The Perfect Promotion Mix
rampchamp.com
It’s obvious that the same care and attention went into these websites as did the applications themselves. For some more great examples, take a look at one of our recent posts on iPhone.AppStorm.28
Quick Guide: Creating a Video Demo One important element to get right is the video demonstration. There’s no easy way to record video from your iPhone directly, but there are a few clever tools to achieve something similar using the iPhone Simulator on your desktop. You’ll need three things: 1. Your favorite screen recording application – Screenflow, Camtasia, Jing, or any other similar app. 2. A piece of software that changes your mouse cursor into something more useful for a demo video, and makes the iPhone Simulator more
28
http://iphone.appstorm.net/roundups/design/40-stunning-iphone-developer-websites/.
102
The Perfect Promotion Mix
realistic. SimFinger29 is a great solution, but PhoneFinger30 also does the trick. 3. I’d recommend SimFinger in particular, as it has the ability to add other application icons to your iPhone home screen, change the carrier to something more realistic than “Carrier”, and add a layer of gloss over the simulator display. 4. Your compiled app, running in Xcode’s iPhone Simulator It’s then just a case of recording the portion of your screen containing the iPhone Simulator, running through a few of the app’s features (keep it short and snappy), and adding any final extras in a piece of video editing software such as iMovie. You can overlay your own audio commentary later if you decide to, though ideally your app should be designed in a way that doesn’t require a voiceover to describe what’s going on! Export the video to your favorite video sharing website, and embed it into your website for everyone to see. Far more people will be likely to pay for your app if they can see it in action before they buy.
Generating Launch “Buzz” “Buzz” is a vague concept. It’s easy to see when another application has it – the Internet lights up with mentions of a particular app, developer, or website. But how do you start this process in motion for your own creation?
29 30
http://github.com/atebits/SimFinger. http://www.wonderwarp.com/phonefinger/.
103
The Perfect Promotion Mix
First and foremost, you need to create something brilliant. It either needs to look visually stunning, or offer a completely immersive and addictive user experience. People should want to talk about your app. Bjango had some fascinating thoughts to share on generating buzz, and how to handle a successful launch. They feel that you can take one of two approaches: Option 1: Ultimate secrecy Anyone who’s familiar with Apple will know how this one works. Prepare well, and hide every last detail. Then, when the time is right, prep the press and launch at full velocity. It’s a gamble, but means you’ll hit everywhere at once. It typically only works if you’re well established. Option 2: Slowly building momentum A carefully placed trail of hints, teasers and full blown video demos. The idea is to spread as much information about your product before launch as possible, so that when it’s finally released, everyone buys at once, giving you momentum and a decent chance of success. It also means you can gain feedback about your app before release. But beware, you’ll also be held accountable for any features you’ve said you were going to include, and the competition will know what you’re up to. We’ve tried both. We’ve also seen both methods work for other companies. To be honest, I’m not entirely sure which is best. I think the most important part of the entire process is having an app that’s worthy of discussion. Something so incredible that people have to tell their friends about it. One application that launched with great success was Attic, an iPhone app for finding hidden gems within your iPhone’s music library. Devin Ross found press releases sparked quite a bit of interest, as bloggers and users picked up on the app:
104
The Perfect Promotion Mix
I released Attic on March 1st, and stayed up all night just to make sure everything went smoothly. I sent out press releases with promo codes to a list of blog sites that morning. I started to see a bunch of mentions on Twitter and I knew something organic was happening. I was surprised how fast it was too. John Gruber picked up on the application and linked to it on his site. That brought tons of traffic. I never sent a press release to him either. In retrospect, I wasnâ&#x20AC;&#x2122;t aware of how fast people picked up on the application. Sending out promotional codes to blogs can be a good solution, as can offering them to sites that would like to run a giveaway. Itâ&#x20AC;&#x2122;s important that you donâ&#x20AC;&#x2122;t rely completely on a traditional press release. Dave Verwer has some more thoughts to share on this topic: Press releases are useful to help get the word out once you release your app. You can use a service such as PRMac31 to get a broad distribution of your release to hundreds of sites, but do not rely too heavily on this as bloggers and journalists can get hundreds of press releases a day. Do make a press page on your web site, though (like we did for Balloons!) and have all of your artwork, videos, and everything else that reviewers might need if they do decide to talk about your app. These are great points to take note of. iPhone.AppStorm receives several requests every day from developers looking to have their application reviewed or covered on the site. I go through a three question process when deciding whether to commission a review of a particular application:
31
http://prmac.com.
105
The Perfect Promotion Mix
1. Is the email personally directed to me, or the site? If it’s a generic press release sent out in bulk to hundreds of people, it doesn’t reflect well on the developer. It’s worth taking the time and care to send someone a personal message. 2. Does the idea sound interesting? If the application is just another clone of something remarkably mundane, I’ll likely pass over it in favor of something else that’s different and unique. 3. How much care and attention has been put into screenshots, branding, and the app’s website? If the interface looks logical, clear and welldesigned, it’s always a positive sign. If all three of those conditions are met, then I’m likely to download the application, give it a try, and write a review if I feel that our readers will find it useful. A final application to profile that got all of these pointers completely correct is Ramp Champ – a game that had a phenomenally successful launch. I asked Gedeon from The Iconfactory what their main promotion techniques were, and which factors held importance in its surge to popularity: We used many of the most popular methods available today, Facebook, Twitter and, of course, blogging about Ramp Champ on our main website.32 What probably helped the most, however, were the tiny sneak peaks of some of the artwork from the game that we posted and leaked a month or so prior to launch. This really helped build anticipation for the game so when the actual launch rolled around, many people already knew about it. Traditional advertising such as web and print were used only sparingly. These old ways of advertising are not nearly as effective any longer.
32
http://iconfactory.com.
106
The Perfect Promotion Mix
The idea of building up a community during development, offering “sneak peaks”, and keeping people informed can be a great technique. It means that when you do come to flip the switch, you have an established base of people ready to buy your application.
Reaching Apple’s Top Lists If you’re able to gather enough promotion to push your application into one of Apple’s Top Lists, then you are on the path to a really successful launch. Many iPhone users browse these as a guide to what’s new and popular on the App Store, so being featured here is a great way to fuel sales and ignite a catalyst effect. I asked The Iconfactory to share a few statistics about how many sales it takes to reach the Top 10 rankings in the App Store, and how being a “Featured” app affects interest: As the App Store grows and more apps are added, it takes more and more effort or “push” to reach the top lists. Generally speaking, if your app is selling 300-800 copies a day, then you’re probably in the Top 100 somewhere. If you’re app is selling over 1,000 then you’re probably in the Top 50. Being a featured app definitely helps. Typically this will at least double your sales, if not triple them, at least for a short while. However, being featured isn’t nearly as good as being in that Top 25. Once you’re there, the increased visibility serves to increase sales, and maintain your position. You can sit in the list for a while if you have a good product. Dave Verwer also had a few statistics to share on this subject, based on one of his recent projects: Sales requirements vary wildly depending on the category of application and whether your app is free or paid. I can give a recent
107
The Perfect Promotion Mix
example though; we have a free application which has been in the Top 100 free photography apps charts in several countries around the world since it launched a couple of weeks ago. When we were in the top half of the Top 100 charts, we were getting between 1300 and 1600 downloads per day, and now we are in the bottom half of those charts we are getting between 600 and 800 downloads per day. Obviously the numbers will be smaller in the paid photography app charts and those numbers would need to be significantly bigger to get into the top 100 charts in a very popular category like Games or Entertainment.
What better way to find out how users find new applications than just to ask them? Thatâ&#x20AC;&#x2122;s what we did, and the results were as follows: Recommendations from Websites Recommendations from Friends
Searching the App Store
Browsing by Category
Apple's Top Lists
0
Never
100
200
Not So Often
300
Quite Often
Chart 1 P. 98
400
Very Often
500
600
108
The Perfect Promotion Mix
cont’d
A large proportion of readers find recommendations from websites useful, along with Apple’s Top Lists. Far fewer browse through the different categories within the App Store. Interestingly, no one method had a particularly high number of people “never” using it. Users tend to utilize all these methods to some extent, even if a few are explored more regularly than others. This suggests that it’s certainly worth promoting your application through all these avenues – particularly approaching blogs and websites. Admittedly, this outcome could be slightly biased as most respondents found the survey through AppStorm – an iPhone software website!
Finally, we spoke to Dave Howell from Avatron: We’ve had good luck with the rankings. So far, three of our apps (Air Sharing, Air Sharing HD, and Air Display) have reached the position of #1 top grossing third-party app. The number of sales required to hit that mark has changed over time, but generally has been over $15,000 per day.
Do I Have Any Chance of Reaching the Top 100? With so many different applications in the App Store, it can often feel that reaching any form of “Top List” is impossible. In our developer survey, we asked respondents whether they’d ever reached Apple’s Top 100:
109
The Perfect Promotion Mix
cont’d
Yes (24%)
No, not yet! (76%)
Chart 2 P. 139
If almost a quarter of our 80 survey participants were able to make it, so can you!
Unfortunately, there’s no secret formula to pushing yourself into the realms of a Top 10 iPhone application. You’ll need a great idea, a well designed interface, and plenty of launch promotion to give yourself a chance. You’ll also be more likely to reach this level if you already have a track record on the App Store. If iPhone users have enjoyed your software before, they’ll be far more likely to spend money on your latest release.
Go Social With Your App The power of social media is something that cannot be overlooked. It’s almost a certainty that everyone in your user base will use some form of online social service, be that Twitter, Facebook, MySpace, or any other website around the world.
110
The Perfect Promotion Mix
You can use this fact to your advantage when designing an application. Many successful apps have a way to link your Facebook/Twitter account with the software, for sharing statistics and achievements, or playing along with your friends. In its most basic form, this could take on the idea implemented by the developers of Canabalt.33 This allows you to send out a tweet letting people know how far you progressed in a particular game:
Other games take this to a more in-depth level, and require that a user connects to their social media account in order to use it. Whichever method you use, this type of social integration can mean than your users help to promote your application for you. Posting out tweets and updates from the app (providing they have specifically given their consent to do so) is a great way to easily find new users. The power of word-of-mouth shouldn’t be overlooked. People’s recommendation of your application – whether done explicitly, or through
33
http://www.canabalt.com.
111
The Perfect Promotion Mix
allowing the software to let their online “friends” know that they are using the app – is very important. Simplenote relies on this to a large degree, and have found it to lead to reliable, organic growth: We experimented with hiring a marketing company for a short period of time, but the results were very difficult to track precisely. For now we’re happy with solid organic growth. The vast majority of people hear about Simplenote from a friend, co-worker or blogger. Use social media to your advantage, and make sure that it’s at the forefront of your mind right from the start of the development process
Connecting With Users Social media is not only a great way to have users promote your application for you, but also offers a channel to enter into a conversation with them. Set up a Twitter and Facebook account for your app, and keep track of what people are saying about you. It will give you the opportunity to help people out who are having problems, and thank people when they say something positive about your app. Bjango couldn’t have put this better: In terms of connecting with users and building a following, you’ll need to find where your users are, and join in the discussion. If that’s on Twitter, then make sure you’re there to answer any questions they have. Be honest and sincere. As well as this, building up a gradual following on these different services will be an invaluable asset when you come to launch your next killer application. An existing base of engaged customers are very likely to purchase your work in the future, and they are also a fantastic resource for gaining feedback on app ideas, mockups, and betas.
112
The Perfect Promotion Mix
I asked the developers of Headquarters about the techniques they use to keep users interested in their application, and whether an email mailing list worked particularly well: We actually use a few techniques to keep people interested in Headquarters. We post updates on Twitter, our mailing list and spread the news via word of mouth. On top of all that, we also ran some advertising on Fusions Ads. Out of all of the different methods we use to generate interest in Headquarters, I think the most important and most effective way was to generate buzz via word of mouth. Since ours is not a mass-appeal application that everyone can use (as opposed to a $1.99 game) it was very important that we established a reputation within the community. I would, along with the rest of the team, personally message people who were praising (or criticizing) the application. Basically I wanted to let them know that I actually care about what I built and I am dedicated to improving Headquarters. This seems to have struck home with a lot of people because many of them turned around and recommended Headquarters to their friends. The mailing list, in my opinion, wasn’t as effective as I wanted it to be. I don’t think we’ll drop it, but I consider a message from a mailing list to be roughly equivalent to a simple press release. Sometimes they’re very interesting and everyone picks up on it, but most of the time they’re just ignored. There’s certainly no harm in having a traditional email newsletter on your website, but this isn’t likely to be as effective as deliberately going out to find your users where they are already. Don’t expect them to come directly to you with feedback – seek it out.
113
The Perfect Promotion Mix
Advertising vs. Word of Mouth In addition to focusing on social media, blogs, and word of mouth, you also have the option of advertising your application in a more traditional sense. The most effective place to do this is wherever your users spend a great deal of time. If it’s a design-related app, consider an advertisement on a series of design blogs. If it’s a mass appeal application, a website related to iPhone apps themselves might be a good option. The traditional rules of marketing apply here, and it’s important to connect with the greatest number of relevant people possible for your money. We asked Glasshouse Apps about the different types of promotion they’ve tried for their apps, and how effective have they been: We’ve tried a few: in-app banner ads, website banner ads, sending out promo codes, forums, and of course Twitter. All of these have been worthwhile simply from a learning point of view, but I’d recommend not throwing too much money or resources into any one avenue of promotion until you’ve tested it on a small scale first. The best type of promotion is when Apple do it for you for free, but that’s out of your hands.
Interestingly, many developers took the approach that advertising is more or less a “break even” game. It certainly wasn’t hailed as a great way to reach potential users. A word of caution against running straight towards the idea of advertising comes from Garrett Murray, who feels that word of mouth can be just as important: Initially, I only promoted Ego via word of mouth. I announced it on my site and people linked it around in the community. This worked
114
The Perfect Promotion Mix
very well. A few friends with big audiences linked to it (people like John Gruber), and word of mouth spread. About six months after I launched the app I played with some advertising, but in the long run it wasn’t entirely beneficial. I ended up mostly breaking even. Ego is a very niche app, and word of mouth seems to work best.
And finally, yet another developer who sees word of mouth as vital is Dustin MacDonald, the developer of Wallet: These days, I think word of mouth is far more powerful than your average marketing campaign. If you have an exciting, compelling app, users will find out about it. You can accelerate this process by taking advantage of social networking sites. Set up a Facebook page, start a Twitter account, and otherwise make it easier for people to spread the word about your app.
It’s no surprise that a general theme started to emerge. Word of mouth is a remarkably effective marketing tool, and paying for advertising shouldn’t be considered a necessity. Although it’s undoubtedly worth experimenting with, advertising is not used as the core promotion method by any developers interviewed. Of course, the best thing to do is the all-encompassing approach to promotion taken by Avatron: We do everything. We employ a good PR firm, buy banner ads, reach out to bloggers and journalists, attend conferences, use social networks, design our icons and screen shots to appeal to Apple’s Developer Relations staff, give t-shirts to prominent influencers, run sales and free promotions, issue updates as frequently as practical, and provide quotes for books such as this one!
115
The Perfect Promotion Mix
Top Notch Support and Regular Updates The process of selling your application doesn’t end as soon as the user clicks “Buy App”. We’ve mentioned the importance of your App Store rating before, and the level of post-sales support you give can have a big impact on this. Select Start Studios shared their advice on offering support for iPhone applications: It’s very important that you make it easy for users to get in touch with you. Don’t be afraid to put your name and other information next to your product. You built it, be proud of it. For Headquarters specifically, we offer support in many ways: we have a support forum and we’re always reachable by direct e-mail and Twitter. It’s almost guaranteed that people will try to get in touch with you for whatever reason; don’t make it hard on them. It’s incredible how appreciative people are when they can easily contact a real person and get a direct and honest response. It may consume a little more of your time handling these things personally, but it’s well worth it. As a result, we divide support requests throughout the entire team. We all take turns answering e-mails, talking to people on Twitter and even taking phone calls. We may spend a considerable amount of time per week on support but it’s definitely not time wasted.
As you invest time talking to users about your application and helping them with problems, you’ll build up a greater understanding about which areas of your application are in need of refinement. It will become obvious when certain functionality isn’t clear, or that users want to be able to do something extra that your app isn’t capable of.
116
The Perfect Promotion Mix
The developers of Simplenote understand this completely: Customer support is extremely important to us. Simplenote synchronizes people’s thoughts, ideas and dreams. That’s a huge responsibility. We do our best to be transparent and responsive whenever there’s a problem. This is an area where simplicity helps us. Since there’s less that people are able to do with our app, there’s less that can go wrong, and when something does go wrong we can afford the time to address it properly. Our beloved customer support tool is Assistly,34 which is a new service. They’re our window into all support emails and tweets. We’ll eventually launch a self-service portal that is powered by them as well. Finding the right tool for offering support is important, and can save a great deal of time down the road. Email is great, but it might not be the medium that suits you best. Another website that many iPhone developers use is Get Satisfaction35, a community driven support site that allows people to easily ask questions and submit requests.
How Long Does Support Take? Based on the results of our survey, on average, developers spend two hours each day on support. Of course, this varies depending upon the size of your application and the range of functionality on offer. The important thing to remember is that if you’re going to invest 2-3 hours per day supporting your users, the application needs to be bringing in enough revenue to account for that time!
34 35
http://assistly.com. http://getsatisfaction.com.
117
The Perfect Promotion Mix
In addition to offering support, users like to see your application updated on a fairly regular basis. This isn’t a requirement – many successful apps are updated very infrequently after any initial bugs are ironed out. Updates could be used to fix any pending issues, or add requested features. Sophie Teutschler feels that this is a necessity: Keeping the updates coming is the best thing you can do. There’s no need to update your app every month, but steady quality updates throughout the year keeps the app fresh and your customers happy.
Conquer Your Stage Fright One final possibility for ongoing promotion that shouldn’t be overlooked is the idea of presenting your app at a conference or meet-up. This doesn’t need to be a huge event, but any opportunity to talk to a group of people about your new creation is a great one. A few years ago, I watched the developers of Broadersheet pitch to a panel at a Carsonified36 “Future of Web Apps” event, and it was very well received. I asked them how this process worked, and whether they’d recommend it to other developers: I’d recommend pitching your app in all the places you can find people with iPhones! The guys at Carsonified are especially supportive when it comes to UK-based startups. The one thing to pay close attention to with big events is the lead time – because large events often require firm commitments months in advance, you need to make sure your app is submitted and approved well ahead of schedule in order to best capitalize on the exposure.
36
http://carsonified.com.
118
The Perfect Promotion Mix
It needn’t necessarily be a conference for hundreds of people. Many cities have local iPhone/OS X user and developer groups, and are always looking for new people to come and talk about their latest creation. This can also be a good place to meet likeminded developers and share advice.
Which Promotion Methods Do Developers Find Most Beneficial? One of the questions in our developer survey asked which promotion methods they have found to be most effective in the past. The results tied in closely with the interview responses throughout this chapter:
Word of Mouth
Giving Away Free Promotion Codes An Ongoing Relationship with Bloggers A Well-Written Press Release Spending Money on Advertising 0
Irrelevant
10
20
Not So Effective
30
Quite Effective
Chart 1 P. 110
40
50
60
Very Effective
Word of mouth is – by far – the most effective method of promotion. This is followed by an ongoing relationship with bloggers. The least effective method was a “well written press release”, so don’t invest too much energy into this route!
9
USEFUL RESOURCES Now that you’ve received insight from so many successful iPhone developers, it’s time to get started! But, where’s the best place to begin? We’d be remiss not to give you a helping hand into the (often confusing) world of iPhone development. The rest of this chapter will walk you through a huge spectrum of useful resources, websites, podcasts, books and conferences that offer a helping hand with getting started in the App Store. Hopefully you’ll feel well equipped to get the process started, and step confidently onto the path towards becoming an iPhone app entrepreneur!
121
Useful Resources
Apple’s Documentation Apple makes plenty of their own documentation available, and this is the best place to go for official information. Their Getting Started guides are particularly good. Introduction to Objective-C http://bit.ly/objcintro Apple’s hefty introduction to Objective-C doesn’t specifically refer to iPhone development, or to any practical applications, but it has just about everything you need to know in plenty of detail. iPhone Application Programming Guide http://bit.ly/ipprogguide Quite simply an overview of everything to do with iPhone programming, including windows, event handling, drawing, files and multimedia support. Getting Started Guides http://bit.ly/ipgsguide Not just getting started with programming for the iPhone, but also getting started with Audio, Data Management, Security and much more. Human Interface Guidelines http://bit.ly/iphig We’ve mentioned this document throughout the book, but it’s worth reiterating its importance again here. This is Apple’s style guide – both to your application interface, and also to how it works. Read it twice.
Books If reading books is the best way for you to enjoy learning, this selection covers pretty much everything you will need to know about iPhone development. From the basics of learning Objective-C and Cocoa, to
122
Useful Resources
interface design and 3D Games Development, you will get a good grounding in designing and programming for the iPhone interface. There are many other books out there, but this selection, I think, offers a good range. Objective-C for Dummies http://amzn.to/objcdummies The majority of iPhone apps are written in Objective-C so you need to know the language before getting started. Neil Goldstein takes you through an introduction to the language relating both to iPhone and Mac OS X development. No programming experience is required before you pick up this book, and it also comes with a CD of source code as well. Learn Cocoa on the Mac http://amzn.to/cocoaguide After successfully coming to grips with Objective-C, the next step would be to learn how to utilize the Cocoa Frameworks in your development of both Mac OS X and iPhone applications. This book gives you a good grounding into what you should code yourself, and what you should let Cocoa do for you, enabling you to go on to create high quality apps for the iPhone. Beginning iPhone 3 Development: Exploring the iPhone SDK http://amzn.to/exploresdk Dave Mark and Jeff LaMarche take you through the beginning stages of iPhone development. Previous programming experience is necessary, especially in Objective-C or at least in a C-related language, and some Cocoa experience would be beneficial. iPhone User Interface Design Projects http://amzn.to/ipprojects Designing for the iPhone is probably unlike anything else you have previously designed for, as certain aspects are standardized and the screen is much smaller than any desktop or laptop.
123
Useful Resources
This book introduces you to designing for the iPhone, including how best to use the limited screen real estate, how to present data intensive apps, and what to consider when migrating desktop applications down to the iPhone. Contributions come from a number of different app developers giving you a broad range of opinions and plenty of good advice. iPhone for Programmers – An App Driven Approach http://amzn.to/appapproach Deitel and Deitel write some of the best programming books around, such as the “How to Program” series, but this book takes an entirely different approach to programming. Introducing you to all the main iPhone programming concepts and libraries using 14 complete apps, you’ll learn how to integrate Cocoa Touch, Map Kit, Core Location and many other technologies. The book also gives you a brief introduction to getting your app approved by Apple, though this requires some previous programming knowledge to understand the example source code given. 3D for iPhone Apps with Blender and SIO2 http://amzn.to/iphone3d Programming apps for the iPhone is one thing, but I’m sure there are a few wannabe iPhone game developers out there. The next step on from learning the iPhone basics would be to start creating 3D apps. Using Blender as the 3D content creator, you are introduced to the concepts of graphics programming using OpenGL along with collision detection, animation and interacting with the environment. The book gives you a good introduction to creating 3D games that utilize the iPhone’s touchscreen capabilities and is a great next step up from programming basic apps. iPhone Advanced Projects http://amzn.to/advancedprojects For those developers looking to take their iPhone apps to the next level, this book is for you. Taking you through topics such as optimizing performance and streamlining your interface, the book also introduces different writers to
124
Useful Resources
talk about a variety of advanced topics. Learn about networking with other iPhones, integrating SQLite and Push Notifications, streaming audio and debugging errors in your code.
Screencasts There are a lot of great screencasts out there for learning iPhone development – some are free, and others come at a price. Before you pay for a screencast, be sure to check that it’s for a recent version of the Xcode and the iPhone/IOS SDK. Apple’s Getting Started Tutorials http://developer.apple.com/iphone/ Once you have registered for the free iPhone Developer Program you get nine introductory videos to help you to get started with iPhone app development. Everything from introducing the iPhone SDK to fundamentals of Cocoa, integrating iPhone features and interface design is covered in these detailed videos. iPhone Tech Talk World Tour http://developer.apple.com/iphone/ Also from Apple through the Developer Program, and slightly newer than the above tutorials, comes this 13 video series, covering all the tools and technologies needed to develop killer iPhone applications. Topics include game development, UI and web applications over the 13 hour course of video tutorials. iPhone Application Development http://bit.ly/iphonestanford One of the most popular series on iTunes U, Stanford University’s iPhone Application Development is updated for the Winter 2010 semester. Featuring the full lectures along with PDFs of the lecture slides and all the supporting code, it’s almost as good as being there… just without the pressure of assignments!
125
Useful Resources
Highly recommended to all those with some knowledge of a C language and Object Oriented Programming concepts. iPhone Application Programming http://bit.ly/rwthiphone Similar to Stanford’s course above, RWTH Aachen in Germany also uploaded their course to iTunes U. Don’t worry if you can’t speak German, the course is fully in English and covers everything from interface building and debugging to audio, video, drawing and networking. Lecture slides are available as PDFs although you cannot get hold of any of the source code or assignments. PeepCode Screencasts http://peepcode.com/ Priced at around $10 each, these screencasts come highly recommended for learning about specific aspects of iPhone development. Pragmatic Screencasts http://pragprog.com/screencasts/v-bdiphone/writing-your-first-iphoneapplication The series entitled “Writing Your First iPhone Application” is a particularly good introduction, with five episodes priced at $5 each.
Podcasts Inspiration need not come in a purely visual format – there are plenty of podcasts that can be really helpful for picking up the basics and gaining insight from other developers. A few of these include: Mobile Orchard http://mobileorchard.com/category/podcast/ An iPhone Developer podcast talking to some of the people behind the most popular apps in the store. Gain some insight into what goes into producing an app and the different technologies utilized.
126
Useful Resources
The MDN Show http://bit.ly/mdnshow A “one stop shop” show for Mac and iPhone developers, the Mac Developer Network show takes on a magazine style format and is very easy to listen to. Not too technical, but a useful resource. OnMacDevelopment http://bit.ly/onmac Conversations and tutorials on development for Mac and iPhone software, with leading authors and experts on topics such as Snow Leopard, the iPhone SDK, and Cocoa.
Blogs and Websites Mobiletuts+ http://mobile.tutsplus.com/ Mobiletuts+ is all about quality tutorials for mobile developers – all mobile developers. Topics include native development with the iPhone, Android, Windows and Blackberry platforms, cross-platform development with tools like Appcelerator and Phone Gap, and techniques for building mobile accessible web sites with HTML 5. Whether you want to create the next killer app or become a pioneer of the mobile frontier, they’ve got you covered! iPhone.AppStorm http://iphone.appstorm.net/ Obviously I have to recommend our own website as a brilliant place to find out about new applications, gain inspiration from other developers, and connect with a huge base of iPhone users!
127
Useful Resources
iCodeBlog http://icodeblog.com/ Updated about once a week, iCodeBlog provides some very useful and detailed tutorials. ManiacDev http://maniacdev.com/ One of the best blogs out there regularly updated with quality tutorials and resources. iPhone Flow http://www.iphoneflow.com/ A community blog where users post links to items they feel will be of interest to other developers. You can pick up some neat tips here. Ray Wenderlich http://www.raywenderlich.com/ Some great iPhone tutorials and tips from developer Ray Wenderlich. A vital read for those wishing to develop in Cocoa2D.
Forums If you want to exchange ideas with other developers and seek help, there’s no replacement for an active forum filled with helpful members. Hopefully one of the following will fit the bill: Apple Developer Forums http://developer.apple.com/devforums/ Apple’s official forums, where you will meet lots of like-minded developers. Requires a paid Developer Program account to access (but you’ll need one of these anyway to distribute your iPhone application in the App Store).
128
Useful Resources
iPhone Dev Forums http://www.iphonedevforums.com/forum/ Get help with coding the iPhone SDK, web apps and also advice on app promotion. iPhone Dev SDK http://www.iphonedevsdk.com/forum/ A massive forum with over 22,000 members. Covering everything from basic development to tutorials, game development, and the legal side of coding apps. TiPb iPhone Developer Forum http://forum.tipb.com/iphone-developer-forum/ Get helpful advice from other developers and browse the informative blog for the latest iPhone and iPad news while you’re there. iPhone World http://forum.iphoneworld.ca/ A large forum with over 20,000 members, and topics centering around the App Store, technical iPhone development, and general Apple and iPhone news.
Conferences There’s no replacement to sitting down and talking about your latest iPhone development project with other developers. If a few beers are involved as well, so much the better. These conferences are a great opportunity to hear some inspiring speakers, and chat with other developers. It’s also worth looking out for meet-ups in your local area. Apple have their own list of user groups,37 or you can just Google for local developers and set something going yourself! 37
http://appleusergroupresources.com/?page_id=394.
129
Useful Resources
360iDev http://www.360idev.com/ Occurring on a regular basis, 360iDev is the first and (supposedly) still the best iPhone developer conference in the world. You have to pay the registration fee in advance (approximately $499), but the four-day event features some of the top speakers in the industry. Voices That Matter http://www.voicesthatmatter.com/iphone2010/ This two-day conference occurred in April 2010, and it’s worth checking to see whether it will be repeated. The cost was $495 for early bird registration, and the schedule was split between a day of Best Practices/Game Development, and one of Core Competencies/Interface Development. Apple Worldwide Developers Conference http://developer.apple.com/wwdc/ Apple’s main conference seems to take on an increasingly mobile-centric approach every year. It features some excellent technical sessions on both iPhone and Mac OS X development. Register early, as in recent years the conference has sold out quickly. If you can’t make it though, don’t worry – Apple usually publishes their videos of conference sessions online soon after the event. iPhone Developer Summit http://www.iphonedevsummit.com/ Open to anyone with an interest in iPhone development, the iPhone Developer Summit is usually held in Santa Clara, California, USA. iOSDevCamp http://www.iphonedevcamp.org The iOSDevCamp (formerly known as the iPhoneDevCamp) is a not-forprofit organization that gathers regularly to develop applications for iPhone and iPod touch using both the native SDK and web standards. The event
130
Useful Resources
format is “unconference” or Barcamp-style, featuring content from the participants themselves.
Development Libraries, APIs and Frameworks This section is for the technically adept, and aims to assist those of you embarking on your own native app development. If you’re looking for a few interesting pointers to get started with different open source libraries, these links may prove to be useful: Google API Client Library http://code.google.com/p/gdata-objectivec-client/ Google provides some brilliant Objective-C APIs for its services like Maps, Docs, YouTube and Analytics among others. This is the best way to connect your application up to Google’s services. Oolong Engine http://code.google.com/p/oolongengine/ For those of you wanting to create games for the iPhone, the Oolong Engine provides a great starting point. 3D game creation becomes a whole lot simpler and it ties in with the Bullet Physics SDK. Facebook Connect http://developers.facebook.com/connect.php?tab=iphone Integrate Facebook Connect into your app to connect with your Facebook friends. This code provides a reliable method of authentication for Facebook services. ObjectiveFlickr http://github.com/lukhnos/objectiveflickr ObjectiveFlickr is an API for connecting to a Flickr account through your iPhone or Mac app. It was built for iPhone 2.x but should work with current releases.
131
Useful Resources
Cocos2D http://code.google.com/p/cocos2d-iphone/ Another game development framework, although this one is for 2D rather than 3D games. Based on Cocos2d for the Python language but converted to Objective-C for iPhone development. 31 Example Applications http://appsamuck.com/ Appsamuck provides source code for 31 example applications showing you how to achieve a number of different application programming tasks. Unfortunately these arenâ&#x20AC;&#x2122;t brilliantly commented so you will need to be fairly adept with Objective-C to work it out. Touch XML http://code.google.com/p/touchcode/wiki/TouchXML Touch XML is a lightweight replacement for NSXML allowing parsing of XML data on the iPhone. PhoneGap http://phonegap.com/ For those of you not interested in learning Objective-C, Phone Gap is a framework for building mobile apps using Javascript. Model Baker http://www.widgetpress.com/modelbaker Point and click iPhone app development? Model Baker introduces the quickest way to make iPhone applications, without even having to code. LiquidGear http://www.liquidgear.net/ Develop iPhone apps using Javascript and HTML. LiquidGear runs as the middle man and can integrate with databases, built-in accelerometer, maps, contacts and location services among a number of other features.
132
Useful Resources
Rhodes http://rhomobile.com/products/rhodes/ Rhodes is an open source framework for developing mobile apps for all platforms. Itâ&#x20AC;&#x2122;s based on the Ruby programming language and can compile apps for Android, Blackberry and iPhone. Three20 http://three20.info/ Three20 is an iPhone development library. Itâ&#x20AC;&#x2122;s the code that powers the Facebook iPhone app and many other apps in the App Store. A solid starting point to avoid beginning from scratch. Obviously this only scratches the surface of the different resources, tutorials, frameworks and helpful APIs available for native app development. Before giving up on a particular piece of functionality, be sure to search around to see whether someone else has come up with a solution already!
10
ONE PIECE OF ADVICE Weâ&#x20AC;&#x2122;ve already determined that constraint is a wonderful thing, and I thought the same would be true when asking developers for their advice. The following section highlights some concise wisdom from developers.
135
One Piece of Advice
Words of Wisdom I asked developers to offer a single piece of advice for aspiring iPhone entrepreneurs. Heed their wise words carefully! 37signals Scratch your own itch. There are a lot of guys just like you. Chances are that if you’re having a problem, others will too. So solve that.
Simplenote My advice isn’t earth-shattering. I’m fairly new at this myself. But make something people want, listen to their feedback, and persevere. This is fairly conventional wisdom and it works for us.
Devin Ross – Attic I would suggest that if you want to make a profit as a developer (and who doesn’t), you have to look at the application development as a business. Coding the application is only half the battle. You need to invest in developing a product. Figuring out what customers want and creating awareness for the application is something that needs a lot of consideration. FInd people that can help achieve your goals. There are so many business models you can consider. The iPhone landscape is always changing so you have to work quickly and adapt.
136
One Piece of Advice
Sarah Parmenter – You Know Who Aspire to develop the best of your category and not to settle for mediocrity in favor of revenue, i.e. don’t churn out a load of crappy apps – aspire for one great one!
Dustin MacDonald – Wallet Don’t forget to innovate. Your app should always do something exceptionally new and exciting if you want to stand out.
Gedeon Maheux – The Iconfactory Don’t get discouraged, keep at it. There are a lot of apps in the App Store and sometimes it can seem as if no one will ever notice your work. If you make a quality product, and it fills a badly needed niche, the App Store will notice, and you’ll probably see some success. That being said, don’t expect a gold rush. It takes hard work and more than a few attempts before you’ll probably have a moderate hit. Just don’t give up!
Glasshouse Apps Firstly, find a great partner. I’ve been really fortunate to have had excellent partnerships on my apps. Secondly – listen to your customers. Feedback is so important when developing apps. Let your customers have a way of reaching you directly so they can let you know what they like and dislike and what they want to you to improve. Thirdly – as corny as it might sound – don’t give up. When I looked at the sales figures for Barista’s first day on the App Store, I almost threw in the towel right there. But 18 months later, I can say that
137
One Piece of Advice
developing that one app has probably been the most influential business decision I’ve made in my entire working life.
Dave Verwer – Shiny Development Get out there and try it! Don’t worry about making your first app an all singing, all dancing, mind blowing application. Get something simple coded and get it on the store. There is no experience better than actually going through the entire process of designing, building and shipping an app, and it will teach you an incredible amount about how to approach the process in the future. Take a simple idea, get it going and go for it. You can work on your masterpiece as your second application!
Lee Mallabone – Broadersheet Be selective when choosing your beta testers. Try and find at least 5 or 10 people that you can count on to help you out on short notice. If you can find more that are willing to beta test, that’s great, but it’s important to have a few that you can call up and ask to install a new test version of your app today. Once your app is out, you’ll want to be able to turn out new releases quickly, and part of the quality assurance for that is making sure the app is installable from a machine other than your own development computers.
Sophia Teutschler – Sophiestication Software Make apps! It’s that simple. I always learned the most by doing, instead of reading about or planning. Just try to release something quality, it doesn’t have to be super unique or even big. Release something that starts to get you going.
138
One Piece of Advice
Garrett Murray – Ego If I can only offer once piece, it would be that the App Store, despite what you may read from a minority of developers, is not a get-rich-quick system. 99% of people selling apps aren’t making untold sums of money. Like anything else, you need to work hard to make a decent income. You need to produce a quality application with wide appeal, you need to market and promote that app, and you need to make regular updates to it. Don’t go in expecting to be rich overnight. Oh, and grow a thick skin, because customer feedback can be extremely frustrating.
David Kaneda – Sencha I’ll step down from my web app soapbox for a moment, and offer some general advice on this one: Price for value. I think there’s a trend of undervaluing apps right now, with a huge amount of apps between $1-$3. For simple utility apps, this may make sense, especially for those looking for mass adoption. But for a great majority of apps that apply to niche markets and business users, app developers are really doing themselves a disservice. If one browses the highest revenue apps in the app store, they will find a variety of apps sold at prices between $10-$50. Look at it this way: If you price your app at $4.99 instead of $2.99, will you lose 40% of your customers? In most cases, I think the answer is no: If you’re properly marketing your app on social networks and such, you might lose 10-20% of the potential customers, but by charging 40% more, you’re still making more money.
139
One Piece of Advice
There are other reasons, too, like being associated with quality by being “premium.” Especially as more and more developers begin to look at iPad and Universal apps, they should simply be asking themselves, “What would I pay for this?”
Dave Howell – Avatron Because the iPhone is small, it’s tempting to think of it as a platform for small apps. Many of the early apps in the store bore out that prejudice. But there’s no reason why iOS apps can’t be every bit as deep as desktop apps. When developing iOS apps, don’t skimp on the kind of process and diligence that you would commit to the development of desktop apps.
11
THE iPHONE DEVELOPER SURVEY It often feels as though there’s a mystical shroud hovering over developers operating in the App Store. Like we did, I’m sure you have all manner of questions running around your head. Is it possible to make a living developing for the iPhone? How long does it take to develop an app? How many hours will it take to offer support? Is this career really more enjoyable than my existing work? In the first ever extensive App Store developer survey, we aim to answer all your questions, concerns and doubts about embarking on this process. We’ve surveyed over 80 individual iPhone developers and companies to gather a comprehensive set of statistics that shed light on the App Store.
142
The iPhone Developer Survey
Part 1 – Business and Company How many hours does it generally take to develop an iPhone application? 1,000+ (4%) 500 – 1,000 (9%)
Less than 100 (19%)
250 – 500 (22%)
100 – 250 (46%)
Chart 1 P. 132
143
The iPhone Developer Survey
How many people are employed by your company? Other
11+
6 – 10
2–5
Just me!
0
5
10
15
20
25
30
35
40
45
Chart 2 P. 132
Are you aiming to grow your company’s staff, or are you happy with your current size?
We're looking to grow (50%)
We're happy as we are! (50%)
Chart 1 P. 133
144
The iPhone Developer Survey In your experience, what is the financial cost of developing an iPhone app?
$50,000+ $25,000 – $50,000 $10,000 – $25,000 $5,000 – $10,000
$1,000 – $5,000 $500 – $1,000 $1 – $500
Just my own time 0
5
10
15
20
25
Chart 2 P. 133
What is your total monthly revenue from sales of iPhone apps in USD?
145
The iPhone Developer Survey
How has iPhone development affected your personal income or company revenue? Reduced our income (4%) Made no difference (20%)
Increased income significantly (34%)
Increased income slightly (42%) Chart 1 P. 134
Could you make a living solely from your iPhone appâ&#x20AC;&#x2122;s revenue? Yes (19%)
Not yet (81%) Chart 2 P. 134
146
The iPhone Developer Survey
Whatâ&#x20AC;&#x2122;s the average age of those working at your company?
Is iPhone development your full-time job?
Yes (26%)
No â&#x20AC;&#x201C; I do something else as well (74%) Chart 1 P. 135
How many hours do you spend on support each day?
147
The iPhone Developer Survey
Do you work from home, in a private office, or in a shared office? I work in a shared office (13%)
I work in a private office (13%)
I work from home (74%)
Chart 1 P. 136
Do you enjoy iPhone development more than your previous job? The same! (23%)
No (3%)
Yes (74%)
Chart 2 P. 136
148
The iPhone Developer Survey
Part 2 â&#x20AC;&#x201C; Developing Apps How did you learn to develop for the iPhone?
I'm not a programmer!
I attended a course
I taught myself
I was already proficient in Objective C
0
10
20
30
40
50
Chart 1 P. 137
How many days, on average, does it take for your iPhone app to be approved by Apple?
60
149
The iPhone Developer Survey
How important are these characteristics for your app to be a success? Perfectly Crafted App Store Listing
Low Price
Great Interface Design
Unique Idea
0
Irrelevant
10
20
Not So Important
30
40
Quite Important
50
60
70
Very Important
Chart 1 P. 138
How would you rate the effectiveness of these promotion techniques? Word of Mouth
Giving Away Free Promotion Codes An Ongoing Relationship with Bloggers A Well-Written Press Release Spending Money on Advertising 0
Irrelevant
10
20
Not So Effective
30
Quite Effective
Chart 2 P. 138
40
50
Very Effective
60
150
The iPhone Developer Survey
Have you ever been featured in an iPhone TV advertisement? Yes! (3%)
No, not yet (97%) Chart 1 P. 139
Have you ever reached Apple’s Top 100 ranking? Yes (24%)
No, not yet! (76%)
Chart 2 P. 139
n.b. For this question, we didn’t specify the Top 100 in any particular country. Developers could have reached the Top 100 in their local App Store – not necessarily the US App Store.
151
The iPhone Developer Survey What’s the highest you’ve ranked?
Have you considered developing for the iPad? No (16%) Yes – I've released an iPad app (29%)
Yes – I'm working on one now (55%) Chart 1 P. 140
152
The iPhone Developer Survey
Do you develop for any of the following other mobile platforms?
Other
Nokia
Windows Mobile
Blackberry
Android
0
5
10
15
20
25
30
Chart 1 P. 141
Do you offer both a free and paid-for version of your application? Yes (25%)
No (75%)
Chart 2 P. 141
153
The iPhone Developer Survey Will you be using Apple’s “iAd” system?
Probably not
I'm thinking about it
Definitely
0
10
20
30
40
50
60
Chart 1 P. 142
Are you happy with the current state of the App Store? I'm fairly unhappy with the App Store (6%)
Everything's great (45%)
It has a few problems (49%)
154
The iPhone Developer Survey
What would our respondents like to see change on the App Store? We’ve collected a series of responses from our survey participants about what they’d like to see change on the App Store, what they like, and what they struggle with on a regular basis. Here are a few of the best pieces of insight we received: Reviews and star ratings are irrelevant. Usually people give a star when they remove an app, and usually when you remove an app, it’s because you don’t like it. People tend to share their opinion more often when they are frustrated rather than when they are happy. In the end, reviews and ratings can often be negative and do not reflect the general opinion.
I’d give developers better analytics about App Store listing views, what they search for, and how they find your app. It’s a black box at the moment. I’d also make it easier for people who are looking at an app in iTunes to click buy (on their computer) and have it start downloading immediately over the air to their phone.
It is a little bit scary, spending time and money on developing an app that might never get approved. Apps get rejected every day for what appear to be arbitrary reasons. If I could change one thing, it would be to make the approval process a lot more open and transparent. I would also formalize an appeal process for rejected apps. I have to say something as a person who never even owned a Mac until three months before my first app was approved. Apple has done a very good job at making the entire development process work.
155
The iPhone Developer Survey
First, the development software is extremely well done. And it is free (take that, Visual Studio). There is help available in Xcode, in the documentation, on the Apple Developer website, and even in the support forums. The process you have to take is straightforward, if sometimes tedious, and Apple walks you through every step. You make an app, get it approved, and everything but advertising is done for you – Apple sells your app worldwide, and sends you checks! Yes, there are legitimate complaints, but all in all, it is a beautiful system for developers of any level.
The App Store is very unforgiving to indie developers; EA, Ubisoft and all of the other big titles are re-releasing their titles on the App Store to great fanfare and profit. This is great – it’s awesome to see large companies turn their focus on such a fun market. The downside is that the smaller development shops lose all of that “free press” that was attributed to the Top 100 sections because they’re crowded with large developers. The whole reason why so many developers flocked to this platform is because it was a indie developer friendly eco-system. This isn’t so much the case now, and it’s much harder to make it. My one proposed feature would be to include an additional subdivision in the top lists – highlight the small one to five people development shops. Give them the spotlight that they deserve; there are plenty of great applications out there that are simply ignored because they’re too small to market, and too small to be noticed.
The review process needs to be more transparent and accessible. For example, if an app is rejected, I should be able to contact the reviewer for more information than that included in the rejection letter.
156
The iPhone Developer Survey
I had a problem with my first iPad app where one bug seemed to occur over and over, and every time I fixed it and resubmitted it, it would be rejected again for the same bug. I finally discovered that the reviewer was continually reviewing the old version! Things like this could be prevented by allowing me to contact the reviewer, and also by pushing resubmissions to the front of the queue.
12
THE iPHONE USER SURVEY As a developer, it’s vital to understand just how users experience your software. This could relate to how they find apps, how many they buy, the devices they use them on, how often they update them, or all manner of other information! In this final part of the survey, we’ve collected responses from over 1,000 iPhone users over the course of one week in July 2010. These participants were all readers of AppStorm. Hopefully this information will help you make decisions about promotion, targeting, and what aspects of your application to spend the most time on. We’re offering the data for you here, so feel free to use it as you see fit!
159
The iPhone User Survey What was the age of our participants? 55 – 64 (1%) Under 18 (12%)
45 – 54 (4%) 35 – 44 (14%)
18 – 24 (33%)
25 – 34 (36%)
Chart 1 P. 146
Which iPhone/iPod touch do you own? iPod Touch (3rd Generation) iPod Touch (2nd Generation) iPod Touch (1st Generation) iPhone 4 iPhone 3GS iPhone 3G iPhone 0
50
100
150
200
250
300
350
Chart 1devices, P. 147 n.b. If participants owned more than one of these we asked them to select the one that
they used most on a day-to-day basis.
160
The iPhone User Survey How many apps do you have on your iPhone?
(Those apps you have actually installed on your iPhone right now.)
How often do you download app updates? Less than once per week (11%)
Once per week (16%)
Every day (34%)
A few times per week (39%) Chart 1 P. 148
161
The iPhone User Survey
Do you use any of the following mobile platforms?
Other
Nokia
Windows Mobile
Blackberry
Android
0
20
40
60
80
100
120
Chart 2 P. 148
Do you have any web apps on your iPhone home screen? What's a web app? (4%) Yes – More than one (33%)
No (42%)
Yes – Just one (21%) Chart 1 P. 149
140
162
The iPhone User Survey
How much do you usually spend on iPhone applications each week?
$50+
$20 – $50
$10 – $20
$5 – $10
$0 – $5
0
100
200
300
400
500
600
700
800
900
Chart 1 P. 150
How do you feel about iPhone advertising? I'd rather have a free app with advertising (27%) I don't mind (36%)
Chart 2 P. 150
I'd rather pay for an ad-free app (37%)
163
The iPhone User Survey
Whatâ&#x20AC;&#x2122;s the most you have ever paid for an iPhone app?
If one is available, do you download a free version of an app before purchasing it? I usually just purchase it (4%)
Always (52%)
Sometimes (44%)
Chart 1 P. 151
164
The iPhone User Survey
How often do you use the following to find a new iPhone app? Recommendations from Websites Recommendations from Friends
Searching the App Store
Browsing by Category
Apple's Top Lists
0
Never
100
200
Not So Often
300
Quite Often
400
500
600
Very Often
Chart 1 P. 152
How important are ratings when deciding whether to buy an app? I don't pay attention to ratings (2%)
Not very important (7%)
Very important (48%)
A little important (43%)
Chart 1 P. 152
CONCLUSION Embarking on the journey of developing an iPhone application is nothing to be taken lightly. Hopefully this book has provided you with knowledge you didn’t have before, and equipped you to take your first few steps in the right direction. Spend time crafting your idea, understand the App Store guidelines, don’t be afraid to seek help from others, always put design first, keep it simple, and never stop promoting your app with an unrelenting passion. Most of all, don’t forget to enjoy the process from start to finish. It won’t be easy, but the satisfaction of watching your application shoot to fame will be worth every minute. Best of luck, and I’ll see you in the App Store!
David Appleyard AppStorm Editor
CREDITS This book couldn’t have come together without the help and contribution of many different developers, iPhone users, and writers. I’d like to re-iterate my thanks to the following people who helped in various ways: Interviewees Graham Clarke Michael Johnston & Fred Cheng Dave Verwer Sarah Parmenter Marc Edwards Joshua Tessier, Tariq Zaid & Adam McNamara David Heinemeier Hansson & Jason Fried Devin Ross – Attic Sebastiaan de With Garrett Murray
glasshouseapps.com simplenoteapp.com shinydevelopment.com youknowwhodesign.com bjango.com selectstartstudios.com 37signals.com atticapp.com cocoia.com ego-app.com
Dustin MacDonald
acrylicapps.com
Gedeon Maheux – The Iconfactory
iconfactory.com
Lee Mallabone – Broadersheet Sophia Teutschler – Sophiestication Software
iphone.broadersheet.com sophiestication.com
David Kaneda – Sencha
sencha.com
Dave Howell – Avatron
avatron.com
Survey Participants Thank you so much to the 80 iPhone developers and 1,072 iPhone users that completed our survey. I really appreciate you taking the time to contribute, and hope you enjoyed reading the resulting statistics! AppStorm Writers Finally, thank you to Mark Sinkinson who contributed an incredibly useful post to AppStorm entitled “The Complete iPhone Development Toolbox”38. Many of the fantastic links and resources collected by Mark are reproduced in the “Resources” chapter of this book.
38
http://iphone.appstorm.net/roundups/developer/the-complete-iphone-development-toolbox/.
ABOUT THE AUTHOR David Appleyard is part of the Envato team and manager of the AppStorm network, a series of sites relating to Mac, iPhone, and Web apps with over 60,000 daily readers. Heâ&#x20AC;&#x2122;s also the editor of Phototuts+, and manages a few other popular blogs including Design Shack. David lives in Manchester, UK, with his girlfriend Jen, loves playing with the latest gadgets from Cupertino, and is never without his trusty iPhone. He built his first website over ten years ago and is passionate about the Internet, blogging, and online business. Check out Davidâ&#x20AC;&#x2122;s personal website at http://davidappleyard.net, or follow him on Twitter: @davidappleyard.