Jared Sinclair, creator of the iOS RSS reader Unread, wrote about how his app’s moderate success is not enough to make a living on as an indie developer publishing their own app(s). Brent Simmons asked where all the iOS indie developers are, and wrote that the list is small, the business model challenging, and maybe games are an exception.
Both pieces will likely discourage any individual with a desire to design and build her own apps, as they strongly suggest that the payoff won’t be sufficient. Neither, however, examine the challenge from a skills and tools perspective.
I should mention at this point that I am not an iOS developer myself, so I’m limiting my thoughts here to what I feel adequately knowledgeable about: tools and skills. Examining tools and their efficacy is a big part of my life, and being multi-disciplined myself I also have some insight into the skills aspect.
First, let’s look at the skills involved in creating and publishing a great app like Unread. You need a good understanding of interaction design, UI design, (most likely also) icon design, and having great taste and the ability to know when to say “No” to things are a boon to its positive reception by critics and users alike. Then, you need to do the programming of the application, which generally requires at least a decent understanding of database architectures, MVC principles, the main programming language and its frameworks, and generally good programming discipline. Next, you need content strategy skills: all the labels and text in your UI send messages to the user, and if they’re poorly written or unintuitive, this will cost you in significant, but difficult to measure, ways. The same applies to the marketing of your app: the website promoting it, the language used in your AppStore listing, the quotes you provide in interviews, and so on. Good selling skills overlap with this, but if you’re simply publishing it on the AppStore and not making direct sales to, say, enterprises or businesses, you probably don’t need the equivalent of a sales agent. Then, from your business end, you need all the various business management skills as well as the project management chops to keep yourself on track, issue yourself realistic deadlines, and so forth.
If all of that sounds like a lot, it’s because it is: those are at least four jobs you’re doing. Now it’s not at all uncommon for one person to be skilled at doing two or even three of those, especially where there is overlap: good developers are also interaction designers; good UI designers can often also do good icons, too; many programmers are familiar with multiple languages and/or working with databases; someone who’s entrepreneurial likely knows a thing or two about sales and project management as well. And content strategy is probably the most-overlooked discipline in today’s world of apps and services, as its importance is routinely underestimated by people.
What I’m saying is this: if you’re a (moderately) successful indie app developer, congratulations! Because that is an incredibly impressive feat. The market may be big, but the field is full of people and businesses doing (or attempting) what you’re doing, and saturation of options to choose from is but one of the many things forcing you to be ever-more-excellent to stand out in the crowd. Consumers are also ever-more discerning with their purchasing, because the more great apps they experience, the better they understand what makes an app great, even if they can’t articulate this. Then there’s the troubling economy you have to contend with. All in all, it ain’t easy, so if you’re succeeding at all, that’s worthy of praise, even if only for the successful execution of various, quite differing skills.
The skills part, however, ties back into the tools in a fairly fundamental way: we, as an industry, have been making our tools more powerful for experienced users while also trying to make them more accessible to newcomers. If you’re an iOS developer, you’re using Xcode—far from perfect in the eyes of many, but still many kilometers ahead of its general equivalents for other platforms, including the Web—but what graphics tools you use, what copywriting and project management and sales tools you use, all of these are up to you. They are, however, virtually always more powerful when wielded by an experienced user, who has spent significant amounts of time with the product. You, as lone indie dev, have only the same 24 hours in a day that everyone else does, and if you have to spend them using multiple tools and with fewer hours available for each, it puts you at a disadvantage against those who use them day in, day out.
There is an overlooked element to the saying, “a jack of all trades, master of none” which is that there is hard-to-measure value in knowing how different skills complement and offset one another. There is value in understanding database architectures even if you’re an app designer; there is value in understanding interaction design even if you’re a copywriter. But when it comes to today’s world of apps, this value of the generalist does not overcome the challenges you face when trying to compete in a market with dozens, maybe even hundreds of competitors (or hundreds of thousands, if you’re making a game). This, again, makes it difficult to succeed, as it becomes increasingly a picture of succeeding despite all the odds stacked against you.
Jared Sinclair spoke of pricing strategies, and I think Marco Arment’s latest app, Overcast (a podcast player), is a good example of a general-purpose productivity/entertainment app that does it well: give limited demos of the paid-for functionality but make the app available to try for free, and use IAP to unlock those features, not a separate “Pro” version of the app. But that’s hard to pull off as well, and Marco has a lot of experience.
Lastly, a touchy subject that I think needs to be considered more: I very often see indie devs complain about people being reluctant to pay $3.99 for their app, but they’ll frequently “pay as much or more for a cup of coffee.” While I feel and empathize with the frustration behind that, the comparison to coffee doesn’t work in their favor. Let’s be honest here: coffee is a culturally de-stigmatized addiction, and if you drink it frequently enough your body will literally give you pain when you don’t consume it. The same is not true for apps, not even remotely, and that makes it difficult to sell. This is also why games use in-app purchases that rely on the game being addictive enough that people can’t or don’t want to put it down, with the gameplay purposefully hobbled to create an opportunity for IAP-driven “relief.” But, like Brent, I’m not going to digress (further) about games, I’ve written about them before.
App making is difficult, and that’s true no matter the platform. The bar is being set increasingly high, the upfront costs are constantly rising, and the market is evermore discerning. If you have the privilege of being in a situation where you can pursue your dream of being an indie developer, I strongly encourage you to try it. But if it doesn’t pan out, I guess what I’m trying to say is this: it is by no means a failure on your part, because as Brent’s post pointed out: there is only a very small number of people who are big successes. Many of the “failed” indie devs still make quite a comfortable living doing consulting or freelancing work on the side. And if you can do that and still spend some time pursuing your dream and building your own apps, you’re doing better than most people anyway. Be happy about that. And I look forward to trying your app when it’s ready.
UPDATE: Make sure to check out Stephen Orth’s App Store Realities as well for an important other perspective.