iPhone native Apps: the great leap backwards?

As did many oth­ers, I greeted the arrival of ver­sion 2.0 of the iPhone oper­at­ing sys­tem no lit­tle enthu­si­asm. To be fair, in the world of end­less betas that is the web these days, as a ver­sion 1 the iPhone OS was pretty amaz­ing. But what would Apple do with Safari? What aspects of CSS3 and exper­i­men­tal CSS sup­port that we’ve been see­ing in Webkit nightlies, and even Safari 3 for Mac and Windows would we see in mobile Safari 2.0? All these really inter­ested me.

Seemingly putting me in a minor­ity, one area I really wasn’t par­tic­u­larly enthused about was that of native apps for the iPhone, and iPod Touch. To me it seemed a pretty point­less step right from the get go — espe­cially after a minor iPhone OS update last year allowed devel­op­ers to make icons for their web based apps that could be added to the home screen of an iPhone. In essence, web apps became native, first class apps on the iPhone.

But the clamor for a soft­ware devel­op­ment kit (SDK) was loud, and the rejoic­ing great, when Apple announced that native app devel­op­ment sup­port was forthcoming.

The first fruits of the labors of the devel­op­ers who signed (and ponied) up, and were accepted into the iPhone devel­oper pro­gram recently turned up in the new App Store (the only offi­cial way to get iPhone native apps — more on that below). And the results? Well, much excite­ment from the assem­bled blo­gos­phere, but in my not so hum­ble opin­ion, pretty much noth­ing to write home about. Well, except for Apple’s own remote app, which is frankly amaz­ing [1]. In fair­ness, I’ve not tried any of the non-​​free appli­ca­tions (who doesn’t want to try before they buy), but I’m seri­ously under­whelmed by much of what I’ve tried.

This is not to say that the apps are point­less, many are very use­ful. But my over­all take away from the apps I’ve seen is that, well, on the whole there’s lit­tle if any rea­son why most of these couldn’t be done with HTML/​CSS/​Javascript (I’ll get back to why build­ing web apps instead of “native” apps would be of more than lit­tle ben­e­fit to devel­op­ers in a moment). I can’t see at all why devel­op­ers have waited a year to release appli­ca­tions that could have been devel­oped and released in a mat­ter of weeks, or even less, as web apps (and I’m talk­ing from expe­ri­ence hav­ing done some work with webapps for the iPhone), a year ago.

In the mean­time, Apple has invested enor­mous resources into deliv­er­ing an SDK and App Store. Developers have learned new lan­guages, devel­op­ment tools, and plat­forms. And yet, in all, it seems a great leap back­wards, in sev­eral ways.

Perhaps my biggest dis­ap­point­ment is that so few of these appli­ca­tions take advan­tage of the con­nect­ed­ness and “always on” nature of the iPhone (and to a lesser extent the iPod Touch). They tend to use local stor­age of data, and do very lit­tle tap­ping into the shared resources and intel­li­gence of the web. A per­fect exam­ple is a $10 cock­tail appli­ca­tion, with a search­able data­base of cock­tail recipes. This is just a client side, CocoaTouch ver­sion of the online data­base. Why all the resources poured into devel­op­ing the iPhone app, when a lit­tle bit of CSS would prob­a­bly have been enough to have a native ver­sion a year ago! [2]

In con­cep­tion most native apps seem on the whole to be just scaled down desk­top apps, liv­ing in their own iso­lated world. I won­der how much of this is because the devel­op­ers of these apps are more likely to come from the desk­top world, being Mac appli­ca­tion devel­op­ers, and how much this is a func­tion of the toolsets being used — after all, CocaoTouch is a sub­set of Cocoa, itself a desk­top appli­ca­tion devel­op­ment platform.

Now, in fair­ness, only native apps get access to things like your loca­tion, the cam­era, your pho­tos, and so on, which means cer­tain types of appli­ca­tion, for exam­ple a pho­to­blog­ging appli­ca­tion which uploads pho­tos as you take them, or appli­ca­tions that rely on know­ing your posi­tion, are restricted to being native apps at this stage. But most apps in the App Store don’t tap into these things.

And there’s lit­tle rea­son why this sort of func­tion­al­ity couldn’t be exposed by Apple using a Javascript API so that appli­ca­tions built using CSS, HTML and Javascript couldn’t take advan­tage of them as well (sub­ject to address­ing issues around pri­vacy and secu­rity, you don’t want arbi­trary web pages access­ing your loca­tion data, pho­tos and the like).

But, you might be think­ing, “isn’t this some point­less lit­tle lan­guage war?” Does it really mat­ter whether apps for the iPhone are devel­oped using Cocoa or JavaScript/​CSS/​HTML? I’d argue that it does mat­ter. The web apps approach to devel­op­ment brings with it sig­nif­i­cant prac­ti­cal advan­tages to devel­op­ers, users, and Apple as well.

First up, there would be an order of mag­ni­tude more web appli­ca­tion devel­op­ers than Cocoa devel­op­ers. By priv­i­leg­ing CocoaTouch apps over web appli­ca­tions, Apple gains unique appli­ca­tions (all these native apps will need to be rewrit­ten for Widows Mobile, Nokia devices, the upcom­ing Android plat­form, PSP, and other plat­forms). But every­one else, includ­ing devel­op­ers lose out. As users, there’s less choice. As devel­op­ers, you need to rewrite your apps for other plat­forms, as well as, of course, for the plat­form that really mat­ters — the web.

But that’s not the end of the prob­lems. As noted by many devel­op­ers, debug­ging CocoaTouch appli­ca­tions is hard. Compare this with the debug­ging tools and resources avail­able for web devel­op­ers. Then, there’s the dearth of infor­ma­tion, tips, gotchas, and so on that devel­op­ers share with one another on forums, blogs and the like, and which are a life­saver for many devel­op­ers, what­ever the plat­form or lan­guage or frame­work they use — these just aren’t out there for iPhone devel­op­ers right now not sim­ply because it’s such a new plat­form, but because the terms and con­di­tions of being a devel­oper restrict this. In fact, estab­lished pub­lish­ers have had a dif­fi­cult time even putting together books on devel­op­ing native apps for this very reason.

These are big prob­lems for devel­op­ers, and ulti­mately users, as they will impact on the qual­ity, and num­ber, of appli­ca­tions avail­able for no lit­tle time.

But it doesn’t get any bet­ter. There is but a sin­gle way to dis­trib­ute native appli­ca­tions for the iPhone — Apple’s App Store. App Store is only open to reg­is­tered devel­op­ers, who both pay for the priv­i­lege of being a devel­oper (an ongo­ing fee, presently $99 a year), and who are selected by Apple, accord­ing to what­ever cri­te­ria Apple wishes to use. Apple are def­i­nitely gate­keep­ers here, and can arbi­trar­ily exclude any­one from being a devel­oper. Now, Apple are quite enti­tled to do this with their plat­form, but it should give any­one pause as a devel­oper wish­ing to be involved — after­all, your pro­fes­sional and busi­ness future is entirely depen­dent on a third party’s arbi­trary deci­sions, over which you have no right of appeal.

Again, this is not just a prob­lem for devel­op­ers — as a user, it’s your prob­lem too. Why? Well, not only does it restrict the amount of inno­va­tion of the plat­form, but more directly, because soft­ware has bugs. That’s why you see so many x.x.1 releases of soft­ware. As a devel­oper, this is very frus­trat­ing, but at least you can auto update your appli­ca­tion, or post a fix and notify your users as soon as the fix is done. Not so with the App Store. You post a fix. Apple decides when this is pushed out to users. If you’ve paid for an app (and recall, you can’t demo an app, unless the devel­oper has two sep­a­rate ver­sions, a free and a paid one), then you need to wait for the fix. If you are a devel­oper, you wait anx­iously, as your com­peti­tors get an hour, a day, or what­ever, head­start while you wait for your fix to be available.

With a web based appli­ca­tion, you have zero con­fig updates — users need to do pre­cisely noth­ing to update their ver­sion of the app, as it all resides on the server (or in libraries that the client appli­ca­tion loads each time it runs). The App Store is a big leap back­ward over the always up to date nature of web appli­ca­tions, and even the desk­top world, where apps can auto update, and devel­op­ers can con­tact their user base to notify them of updates, and where devel­op­ers can make sure the lat­est ver­sion is avail­able online as soon as it is ready.

So, are there any argu­ments in favor of devel­op­ing native apps for the iPhone? Well, arguably, there’s the whole issue of busi­ness mod­els. People, we are often told, don’t buy web appli­ca­tions, but they do buy desk­top apps, and so by exten­sion will buy native iPhone apps. So there’s a ready made busi­ness model there. In fact, being able to charge for your apps is one of the key points of inter­est for many devel­op­ers.

But let’s take a look at this issue in more detail. Disclaimer and aside — this is all back of the envelop stuff. But it is also based on 15 years of suc­cess­fully devel­op­ing and sell­ing soft­ware online, and 15 years of pretty seri­ous inter­est in this issue, and many frank dis­cus­sions with other folks in a sim­i­lar sit­u­a­tion. Yes, the iPhone may just change every­thing about the soft­ware busi­ness. I just don’t think it will. If folks want to argue that iPhone native apps will turn all soft­ware busi­ness expe­ri­ence on its head, I’d be very inter­ested to hear their argu­ments and see any evidence.

Firstly, peo­ple will and do buy web appli­ca­tions. Just ask folks like Flickr, Remember the Milk, and 37 Signals. In fact, they don’t just buy the app, they sub­scribe to the ser­vice, and pay recur­ring monthly or monthly fees. Now that’s a busi­ness model! Do you won­der why mag­a­zines offer sub­scrip­tions at a steep dis­count to the new­stand price? Recurring, guar­an­teed income. One off sales with inter­mit­tent upgrades is not nearly so good a busi­ness model — just ask Microsoft, who’ve been try­ing to move users to a sub­scrip­tion model for years for Office and their OS prod­ucts. Once more, native iPhone apps are a leap back­wards, to the desk­top world, and a time when free­ware was on the whole not very good, and folks had the choice of either buy­ing, or copy­ing soft­ware. A lot of folks bought. But as any suc­cess­ful “share­ware” devel­oper will tell you, any­thing more than 1% of your down­loads trans­lat­ing to sales (on the Mac typ­i­cally these con­ver­sion rates were a lit­tle higher) was a pretty good out­come. In this regard, the App Store is a dou­ble whammy for devel­op­ers — at a glance, many cat­e­gories seem to have sev­eral free apps for each for fee app (just look at to do lists for a start). And, because there is no “try before you buy” sys­tem, what are folks going to down­load? The free app, or the $12.95, or even $1.95 app? So if the free ver­sion is “good enough”, you’ll strug­gle to com­pete regard­less of how bril­liant your app is. Good enough is a great strat­egy with soft­ware, and dou­bly so on the iPhone.

And even if you do start sell­ing your app, let’s look at the kinds of num­bers you’ll need to have a com­mer­cially suc­cess­ful app. Let’s sup­pose you are a small devel­oper team. Hey, one per­son even. If you are a remotely good devel­oper, an annual salary of $75K USD is prob­a­bly on the low side. But let’s aim for just $50KUSD in income. Let’s say you sell your App for $1.95. You’ll need to sell 25,000 copies to make your income. Hang on, Apple take about 30% so you’ll need to sell 30% more. That’s 36,500 copies. If you look at a typ­i­cal con­ver­sion rate of say 3% of down­loads to sales (in my expe­ri­ence, good Mac apps can get that kind of con­ver­sion), if this were a desk­top share­ware app, you’d need to have 1.2 mil­lion down­loads. That’s more than 10% of the entire pro­jected iPhone user base for the end of 2008 inter­ested in your app.

OK, let’s think about higher price points — at $5, you need to sell 14,000 copies, with a the­o­ret­i­cal down­load of 476,000 demo copies. Up this to $10, and we are look­ing at 7,000 sales, and 233,000 demo down­loads. And that’s for a sin­gle devel­oper. Double this for 2 devel­op­ers, triple it for a team of three, and so on.

In my expe­ri­ence, these are all very big num­bers, and even with restricted com­pe­ti­tion (Apple is the gate­keeper remem­ber, and there is only one way to develop and dis­trib­ute your apps), I won­der how many folks are going to be mak­ing a decent pro­fes­sion or busi­ness out of devel­op­ing native apps for the iPhone.

Now, let’s com­pare the “sell the app” busi­ness model with the increas­ingly com­mon “sub­scrib­ing to a ser­vice” model (like 37 Signals Basecamp and sim­i­lar offer­ings). The model here is typ­i­cally a free gate­way ver­sion — with some kind of limit on how much you can do — for exam­ple the num­ber of projects you can man­age — then a grad­u­ated series of lev­els, start­ing at a small recur­ring fee ($5 per month for instance), up to a limit of typ­i­cally $100 a month, which pro­vides more or less unlim­ited functionality.

Let’s say we only have cus­tomers pay­ing $5 a month. They are already pay­ing $60 a year! So to make our $50KUSD, we’ll need around 1000 cus­tomers (about 14% of the num­ber of sales of a $10 app). And I’ve fac­tored in about 12% costs here (trans­ac­tion and host­ing costs, based on per­sonal experience).

Interestingly, from what I’ve seen, the con­ver­sion rates from free to pay­ing accounts for more than one such ser­vice based busi­ness is around the mag­i­cal 1% num­ber. So, you need 100,000 cus­tomers a year to try out your ser­vice, rather than any­where between a quar­ter of a mil­lion and 1.2 mil­lion. Still a big num­ber — but spread across all web users, not restricted to just iPhone users.

Now, there’s of course no rea­son not to have an iPhone native ver­sion of the client soft­ware for your ser­vice. It might even be an inter­est­ing mar­ket­ing tool, and point of dif­fer­en­ti­a­tion from your com­peti­tors. But it will require con­sid­er­able effort and resources, which many small teams just don’t have. [3]

The launch of the iPhone was greeted with great excite­ment, but right from the out­set, the lack of a way of writ­ing “native” apps was con­sid­ered widely to be detri­men­tal to the plat­form. To my mind this shows still how lit­tle we really “get” the web. Instead of this being a defect, the iPhone marked the launch of one of the first, and cer­tainly most hyped, web native devices. The way you wrote appli­ca­tions for it was using open, inter­op­er­a­ble, non pro­pri­etary standards.

The arrival of native apps brings lit­tle or noth­ing to any­one other than Apple, and per­haps a few devel­op­ers who launch suc­cess­ful busi­nesses based on sell­ing native apps. And it draws our focus away from the truly fan­tas­tic thing about the iPhone — its sup­port for the web, which has dri­ven data plan pric­ing down dra­mat­i­cally in many mar­kets (sadly not yet in Australia), and as a con­se­quence, ush­ered in an era of always on, web native devices, and seen a huge increase in mobile web usage. And, we are already begin­ning to see the impact on other mobile browser and device devel­op­ers, as they ramp up inno­va­tion in the face of the suc­cess of the iPhone.

But imag­ine as newer Nokia, Windows Mobile, and other devices come online. Will devel­op­ers have to develop for each indi­vid­u­ally? Yet another great leap back­wards to the days of the plat­forms wars of Windows ver­sus Mac, ver­sus the rest.

That way mad­ness lies.

The iPhone has amaz­ing stan­dards based sup­port for devel­op­ing appli­ca­tions — CSS/​HTML/​Javascript. Applications which will also run on the desk­top browsers, on other mobile devices, on the Chumby, on your fridge, on your Wii, on Panasonic Viera tele­vi­sions, and devices not yet even built. It’s time to put plat­form spe­cific frag­men­ta­tion behind us, and write appli­ca­tions for the one true plat­form. The web.

  • [1] Others I’ve not tried that look pretty amaz­ing, and which would prob­a­bly prove far more dif­fi­cult as web apps than native apps include the Moo music apps, and var­i­ous games.
  • [2] On the other hand, an appli­ca­tion like Graffito, which lets you post notes that are then asso­ci­ated with where you posted them, and let you see other notes posted in the same area.
  • [3] Notice I’ve made no men­tion of the adver­tis­ing busi­ness model, for either iPhone or web apps? That is no busi­ness model at all in this space I’d argue. but that’s the sub­ject of another post.

37 responses to “iPhone native Apps: the great leap backwards?”:

  1. One Web to rule them all. One Web to bind them. One Web to bring them all and in the dark­ness bind them.

    Apologies. I couldn’t resist.

    • By:john
    • July 20th, 2008

    Someone is pay­ing attention :-)

    • By:blucaso
    • July 21st, 2008

    Well, a cou­ple of points you don’t seem to have addressed.

    1) Sometimes the dif­fer­ence between a web app and native app is not WHAT it can do, but HOW FAST it can do it. I found a really nice web app to track time spent for projects /​ clients, and it was very slick and well-​​designed, I would have gladly paid $4.99 for it, even being a sim­ple appli­ca­tion. However it was DOG SLOW to run on the inter­net, not to men­tion that it sucks bat­tery when I’m on 3G.

    The point of this for me was that if the appli­ca­tion doesn’t NEED access to the web, as in this case, the non-​​web ver­sion would be FAR supe­rior to the user (me). No down­load time, no lag on screen changes, and no wor­ries that I’m not con­nected to the net at any given time.

    2) The idea that the inter­net is always avail­able is still a faulty assump­tion. No wifi and no sig­nal = no inter­net. Suddenly all your web apps cease func­tion­ing. Cloud com­put­ing has its lim­its, and this is one that peo­ple don’t seem to address often enough. I need my cloud, but I need at least basic func­tion­al­ity in many areas even with­out my cloud.

    3) A cou­ple things I think you’re miss­ing in your back-​​of-​​envelope analy­sis of return on invest­ment. You’re com­par­ing desk­top share­ware mod­els to iPhone soft­ware mod­els, and it leads to a cou­ple of false assump­tions I think. One is that share­ware “con­ver­sion” rate you cite. Well, as you know, there isn’t a share­ware model that really works. Right now the main group of pro­grams are “buy and try” not “try then buy”. This means you don’t need 100,000 down­loads to make 3,000 sales, you only need 3,000 downloads.

    Another false com­par­i­son could be that most share­ware is not $.99 or $1.99 or even $9.99. Some of it is, but good qual­ity share­ware is often $20 or more. For this, the price is a pretty big deter­rent to any “buy and try” model. However, on the iPhone, most paid apps are $0.99, $9.99 or $4.99. These are the emerg­ing price points (besides free) that are coa­lesc­ing right now. And my the­ory is that at $.99, there is almost no bar­rier to entry. A lot of peo­ple will still down­load at $4.99 based on a descrip­tion and screen shot. At $9.99, it bet­ter look really good in the App store, but still doesn’t seem like a huge invest­ment. $59.99? That’s an investment.

    So I think a lot of apps will sell eas­ily, with­out the share­ware model being nec­es­sary. In fact, I have long thought that share­ware (while I use it all the time, and enjoy its ben­e­fits) is in actu­al­ity a ter­ri­ble model for run­ning a busi­ness. If I were a soft­ware devel­oper I would be hor­ri­fied at the prospect of 97% of my cus­tomers want­ing to use my soft­ware and never pay for it, still give me feed­back, expect sup­port, and use and abuse my servers. Ugh. The app store elim­i­nates this, and charges 30% for trans­ac­tion fees, servers, update sup­port, and all the has­sle of deal­ing with the user at the out­set. Not a bad deal from my POV.

    Finally, I think you are ignor­ing (or at least under­stat­ing) the nature of the closed system’s ben­e­fit — namely, that because 95% of users will not be using “jail­bro­ken” phones, that means 95% of all users will only know one way to get more stuff on the phone. I’ll tell you straight that if you could even have a PRAYER of get­ting 60% of all Mac Desktop Computer users to go to a sin­gle web­site that paraded your share­ware appli­ca­tion in front of poten­tial users, devel­op­ers would be sali­vat­ing. To deliver a store that shows your app to EVERY user? That’s beyond expec­ta­tions, it’s awe­some power. And it’s the only way to do it for most of them. And if they want to try it, they have to pony up the cash first.

    For these rea­sons, I think your mod­els are really off.

    4) I should also men­tion that if you haven’t tried any paid apps, you really shouldn’t speak about the over­all qual­ity of what’s avail­able, as you’re only sam­pling the low­est end of the mar­ket. Not that there aren’t some good free apps (and yes, Remote is the most amaz­ing thing I’ve down­loaded to my iPhone, to be hon­est) but the aver­age paid app is prob­a­bly bet­ter than the aver­age free­bie, and more likely to be updated and sup­ported over time. So I think you’re doing a dis­ser­vice to your­self and your readers.

    That all being said, I think you’ve pro­vided an inter­est­ing coun­ter­point to the gen­eral blog/​news/​media take on the App store. And I def­i­nitely agree that Apple being the gate­keep­ers has cre­ated quite a mess from the stand­point of get­ting updates done quickly, get­ting apps released in a timely fash­ion, etc. It’s not a bad thing that Apple wants to do some qual­ity con­trol, but the restric­tions on pro­gram­ming infor­ma­tion have got to be loos­ened, and clearly they need to re-​​think the app review process.

  2. I don’t know if I agree with you or not — I didn’t bother read­ing your post because it’s nearly 6 screens long and not chun­ked with sub­head­ings, but hey … that’s just me being fussy.

    Anyhoo.

    I did get a sense that your thoughts are based on the free apps avail­able in the store, not the paid ones. Why is that? blu­caso said the same thing. Why didn’t you hand over $25 tax-​​deductible dol­lars for, say, Crash Bandicoot Racing and the Things GTD app, just so that you could write a more bal­anced review? Nobody’s ask­ing you to shell out $600 for Photoshop, after all.

    • By:john
    • July 21st, 2008

    @martinjy,

    prob­a­bly the same thing that stopped you being both­ered read­ing 2500 words :-) No one’s ask­ing you to read war and peace :-)

    But I didn’t, did I? Which is kinda the point.

    j

  3. […] Allsop wrote a long piece over at Web Directions South with some thoughts on writ­ing native iPhone apps ver­sus web-​​based iPhone […]

    • By:Manuel R. Ciosici
    • July 21st, 2008

    Why couldn’t Apple design a way to store webapps localy so that we wouldn’t be tied to the cloud? An update but­ton in the webapp would suf­fice the need to update the app (or the app could update itself through AJAX if web is available).

  4. […] pm on July 21, 2008 | # | iPhone Native Apps — The Great Leap Backwards? […]

    • By:Dan S. Black
    • July 21st, 2008

    Great Article. A good exam­ple of this is eBook read­ers. I was really excited to switch to native apps to get a native ebook reader. Turns out after apx $30 total spent (pur­chas­ing each one in the Appstore) dBelement’s eBook reader (http://​reader​.dbele​ment​.com) is still the best. It’s not even a com­pe­ti­tion. Their reader app is a webapp and it is by far the best book reader I’ve ever used. It has all the fea­tures you expect and even includes a free pub­lic library.

    I’m very dis­ap­pointed (to say the least) with the native ebook reader apps (I’m look­ing at you ereader). For now I’ll stick with reader webapp by dBele­ment. It’s no doubt the best reader on the iPhone at the moment.

    The Native Games are awe­some though. I’m in love with Enigmo.

    • By:Mitch
    • July 21st, 2008

    I agree with most of the first part of your story. A lot of apps are not doing any­thing spe­cial or any­thing that couldn’t be done in a sim­ple web app.

    However, I don’t agree with a lot of sec­ond part. The ease and expe­ri­ence of buy­ing some­thing (a music album, a game, a pro­gram) from the iTunes store and App store is so easy and quick. That makes a big dif­fer­ence. It’s even sim­pler than buy­ing soft­ware off a web­site. And the App store is just always available.

    Regarding pric­ing: I think it is not cor­rect to com­pare the sale of a $4.99 app to a ser­vice you pay $5 a month for. $5 once is easy to spend while wait­ing for a train. If you want some­one to sub­scribe for $5 a month, my feel­ing is their com­mit­ment to your prod­uct has to be far big­ger. It’s like com­par­ing flickr with an iPhone app writ­ten by one per­son. That $60 per year from a sub­scrip­tion is likely to go to many more than 12 peo­ple, if a ser­vice is to be worth $5 a month to a large num­ber of consumers.

  5. You do seem to be miss­ing out on quite a few impor­tant things that the desk­top gives you. Now if I could write a web app with the same level of usabil­ity and slick­ness, the same speed, with as lit­tle code and gain as many users as I like just run­ning on one web server that I don’t have to pay a monthly fee on and have no need to care about any sort of scal­a­bil­ity issues other than pro­vid­ing sup­port, then I’d agree with you. Web apps have many flaws and are still only using what are effec­tively baby frame­works com­pared to what is avail­able on the desktop.

    Next, you have the issue of who would pay a sub­scrip­tion for web apps. Generally those who pay for web apps are busi­nesses. There are some excep­tions, but these are gen­er­ally sites that are free but pro­vide Pro fea­tures (see Flickr, last​.fm etc). The iPhone is start­ing to be aimed more at busi­nesses but it is still a mostly con­sumer ori­ented device and these are the peo­ple who are more inclined to pay once than to pay a fixed amount over and over.

    Now to address some of your other points:

    after all, CocaoTouch is a sub­set of Cocoa, itself a desk­top appli­ca­tion devel­op­ment platform.”

    CocoaTouch isn’t really a sub­set of Cocoa, as much as a dif­fer­ent branch of Cocoa. It shares a lot of sim­i­lar­i­ties but many parts are com­pletely unique to the iPhone.

    As devel­op­ers, you need to rewrite your apps for other plat­forms, as well as, of course, for the plat­form that really mat­ters — the web.”

    This all really depends on whether the devel­oper has any inter­est in releas­ing for other plat­forms. As you pointed out ear­lier, many of those com­ing to the iPhone are already Mac devel­op­ers, many of whom develop solely for the Mac with no real inter­est in other platforms.

    But that’s not the end of the prob­lems. As noted by many devel­op­ers, debug­ging CocoaTouch appli­ca­tions is hard. Compare this with the debug­ging tools and resources avail­able for web developers.”

    Actually, debug­ging CocoaTouch appli­ca­tions is incred­i­bly easy, get­ting debug­ging infor­ma­tion from users when your app is out in the wild is what is hard. On the Mac you can just look at the crash logs, on the iPhone the tools aren’t yet avail­able to deci­pher them. That is the point being made in that post

    App Store is only open to reg­is­tered devel­op­ers, who both pay for the priv­i­lege of being a devel­oper (an ongo­ing fee, presently $99 a year),”

    Can you point out where you’ve seen where it says this is a yearly fee? I’ve not seen any­thing that says or implies that to date.

    The App Store is a big leap back­ward over the always up to date nature of web appli­ca­tions, and even the desk­top world, where apps can auto update,”

    This is a valid point, but is very eas­ily reme­died. As with many things wrong with the App Store, it is a flaw but not one that would be impos­si­ble to fix.

    Recurring, guar­an­teed income. One off sales with inter­mit­tent upgrades is not nearly so good a busi­ness model”

    You have man­aged to extremely sim­plify and incred­i­bly com­plex issue. If you tell some­one “This is only $5 a month” they may look inter­ested before they realise it’s $60 a year for how­ever long they wish to use it. Now this may work for web apps accessed via the desk­top where you can access a decent amount of fea­tures, but on the mobile it’s dif­fer­ent. You need to design for smaller screen which means sim­pler UIs and less func­tion­al­ity exposed (and some func­tion­al­ity just not really pos­si­ble). Now try to get some­one to pay $5 a month for that. It’s very unlikely.

    Next issue is get­ting some­one to find your app. How many steps would it take for some­one to find, pay for and start using a web app. The lat­ter two options can be con­trolled, but the for­mer is com­pletely out of your con­trol. On the App Store you can find, pur­chase and start using an appli­ca­tion in around 8 taps of the screen, plus enter­ing your pass­word. You don’t really have to spend much on mar­ket­ing your prod­uct as it’s so easy for some­one to find it and then get it.

    I believe ulti­mately your argu­ment is founded on the assump­tion that the Web is always a bet­ter plat­form for both devel­op­ers and users and that both these groups will even­tu­ally com­pletely move to the web. The real­ity is that the web is an impor­tant plat­form, but will never be the sole plat­form, the basic physics behind com­puter net­work­ing makes sure of that. There is always a claim that the web will match desk­top apps in X years. The prob­lem is that by then desk­top apps will have pro­gressed X years.

    The real­ity is that there future is in the desk­top will be much more con­nected. People sat at their com­puter will use a desk­top client for their apps, which can then sync data online (or the data is already stored online), which they can access through a web inter­face when they’re away from their com­puter. Funnily enough this has been around for a very long time in email. Most peo­ple using email seri­ously will use a desk­top client most of the time and use a web inter­face when they don’t have access to it. And this is why native apps on the iPhone are useful.

    • By:Tim Swan
    • July 21st, 2008

    An inter­est­ing take, but fun­da­men­tally flawed because the native apps are only one option avail­able to a devel­oper. If all of your assump­tions are true then I sup­pose we’ll see over time whether peo­ple pre­fer native or web apps. After all, the iPhone’s strengths as a web client remain and some appli­ca­tion devel­op­ers will still pre­fer to develop web apps.

    Until my data is avail­able on the “cloud” when I’m not inter­net con­nected, there are some apps that I’d pre­fer were native. Frankly, there are very few online apps that I’ve found as sat­is­fy­ing as native soft­ware, except for those that are by their nature either col­lab­o­ra­tive or web-​​based (such as Flickr.) BTW, when I tried to post my com­ment, I got an error: “Safari could not open the page “http://​www​.web​di​rec​tions​.org/​b​l​o​g​/​i​p​h​o​n​e​-​n​a​t​i​v​e​-​a​p​p​s​-​t​h​e​-​g​r​e​a​t​-​l​e​a​p​-​b​a​c​k​w​a​r​ds/” because the server is not responding.”

    Hopefully the native apps just add another choice.

    • By:Alex
    • July 21st, 2008

    I think that you are miss­ing the impor­tance of the user expe­ri­ence in all of this.

    1) Purchasing. The iTunes store is bril­liant because of the ease of impulse pur­chas­ing. I want that song, it’s mine. I sim­ply have to type in my pass­word. I don’t even have to type in my username/​email address. No credit card num­ber. No billing address. And for apps, no seriel num­ber to enter or installer to use. I just hit “buy” it it’s mine. I hon­estly do not know how much money I’ve spent on the app store — $40? $50 — but it is money I was not going to spend of soft­ware oth­er­wise. It was just really easy.

    Moreover, the free apps accus­tom me to that impulse kind of thing. Then, if it’s a cheap app, why not grab it? It’s easy, and I can spare $4.99. I have never impluse sub­scribed to an online ser­vice. There’s the has­sle of sign­ing up. And there’s the issue of need­ing to remem­ber to unsubscribe.

    You want a real exam­ple? Well, I never both­ered to down­load and install NetNewsWire or Twitterific on my mac. But I did for my iPhone, grab­bing the free ver­sions. They were easy, and I liked them, so I down­loaded the paid ver­sion for iPhone and will pay for the desk­top app, too.

    Convenience. Convenience. Convenience.

    2) The iPhone might be always on for some, but it is not for oth­ers. There are mil­lions of New Yorkers — tens or hun­dreds of thou­sands of iPhone users — who ride the NYC sub­way. We don’t have phone/​interenet access dur­ing our com­mutes. That might not sound like a big issue, but I don’t need iPhone web apps when I am at home or at work — times that I am at a full fledged com­puter. I need them when I am out and about, and usu­ally when I am get­ting from point A to point B.

    What about other sub­way sys­tems? What about on air­planes? This is iPhone time, but there’s no inter­net access. (Yes, inter­net access is com­ing on air­planes. What will it be? $10/​hour? I’d rather have my apps, most of the time. I’ll use them to down­load the things I want quickly, and then read things offline.)

    The iPhone is NOT con­nected 100% of the time, and the times when it is least likely to be con­nected are the times when it is most likely to be used.

    3) EDGE.

    I occas­sion­ally need to look up ingre­di­ants on my iPhone from a cook­ing web­site, to which I DO sub­scribe. It takes too long. I’ve got to get to the page, sign in, look up the recipe and then read the ingre­di­ant list. How long do I stand there look­ing like a fool? (It’s not look­ing like a fool that both­ers me. It’s the time.) I would pay for an iPhone app, sim­ply to be able to look things up faster.

    Perhaps it is fast enough on 3G. Surely the web­site itself is partly to blame, because the slow­est step is sign­ing in — the site’s cook­ies only last like 24 or 36 hours. But that’s how they make sure only sub­scribers get in.

    Right now, most iPhones are EDGE, not 3G. In many parts of the coun­try, 3G is not avail­able. In the future, many peo­ple will turn off 3G so that their bat­ter­ies last longer.

    So, the greater speed of a local app makes a dif­fer­ence in usabil­ity. A big difference.

    ********

    The con­ve­nience that can leade to impulse buy­ing. The com­mon occas­sions when many peo­ple do not have inter­net access, even on their iPhones. Speed.

    You make some good points, but you do not acknowl­edge these real­i­ties that make iPhone apps so useful.

    • By:MJR
    • July 21st, 2008

    John, how about reply­ing to some­one like blu­caso who brings up sev­eral valid points that I agree with com­pletely, rather than the guy who admits to not read­ing your post.

    • By:Mikey
    • July 21st, 2008

    Great arti­cle. Someone finally gets it. It’s sad that some peo­ple read­ing this get all caught up in “CocoaTouch” isn’t really a sub­set of Cocoa.…which isn’t the point.

    I have to agree with John. I was very inter­ested in get­ting an Iphone 3G as my first iPhone expe­ri­ence but I’m see­ing the mar­ket­ing machine behind the phone more and more everyday.….….and not the phone I want to see. There will always be Apple apol­o­gists and I have to agree, it’s a great mobile plat­form. But being an owner of mul­ti­ple Macs and an Avid Apple fan — as well as a Director of Marketing for my indus­try — I have to admit that Apple’s launch of all things iPhone will be stud­ied for years in Marketing. But sadly, it won’t cause me to finally buy an iPhone.

    Apple could have pio­neered a busi­ness model and with their mar­ket­ing bril­liance, they could have eas­ily con­verted the flock to sub­scribe. Easily.

    But sell­ing yet another pro­pri­etary plat­form was their goal. Nothing wrong with that but they could have launched another spec­tac­u­lar prod­uct with the App Store.

    Great arti­cle John

  6. Debugging Cocoa Touch appli­ca­tions is not hard. The link you used noted that it’s hard to tell what prob­lems your users are hav­ing if the app crashes, but even there you have some help in the form of a crash log that can be sent to you (the spe­cific com­plant was that it was not as easy to tie that log back to your code as it is when you have a crash in person).

    But actual debug­ging, is not that hard and Apple has pro­vided some great tools for you to see what is going on.

    I agree to some extent that some apps seem like they could be done as web apps, and indeed a defin­ing ques­tion that I think should be asked before devel­op­ing any appli­ca­tion is “what does this bring me vs. using the web or devel­op­ing a web app”? But the answer is clear in a lot of cases — bun­dled graphics/​media and there­fore a MUCH lighter touch of the net­work for you app. That means bet­ter response time, bet­ter bat­tery life, and a faster appli­ca­tion all the way around. Even if some­thing could be done as a web app if some­one is going to be using the app often, or in areas of ques­tion­able net­work con­nec­tiv­ity, a stand­alone app buys you much over a web app.

    As time goes by we’ll see more apps start to get a han­dle on using some of the phone fea­tures in ways a web app can­not. One thing I would hate to see is too much cus­tomiza­tion of iPhone spe­cific fea­tures in a web app, at some point you might as well have writ­ten a native appli­ca­tion that at least did not need a server to launch and does not have all the nav­i­ga­tion issues that browser based appli­ca­tions inherit from run­ning in a browser.

    • By:Alan J.
    • July 21st, 2008

    @Dan

    Spot on, the dbele­ment reader is just great. It really shows what the web can do. I can’t believe that they pulled off one touch scrolling. Major props to the db team.

    • By:john
    • July 21st, 2008

    Hi all,

    apolo­gies for not reply­ing right away, as it has been overnight here in Australia. I’m now up with my two girls aged 2 and 3 months, then have an entire day on the road — so I’m not sure how much I’l be able to reply today, sadly. I’ll do my best,

    thanks for the many thought­ful replies (even if on the whole folks seem to dis­agree with me ;-) )

    john

  7. […] Allsop also just wrote a long and inter­est­ing piece com­par­ing native apps to webapps over at web direc­tions south. Though he didn’t really look […]

    • By:john
    • July 21st, 2008

    @martin pilk­ing­ton

    Re the $99 fee

    http://​www​.macru​mors​.com/​i​p​h​o​n​e​/​2​0​0​8​/​0​3​/​0​6​/​9​9​-​y​e​a​r​-​d​e​v​e​l​o​p​e​r​-​f​e​e​-​t​o​-​p​u​b​l​i​s​h​-​a​p​p​l​i​c​a​t​i​o​ns/

    Yes, it is macru­mors, but they quote a press release. I saw it some­where on Apple’s site the last day or so.

    • By:flo
    • July 21st, 2008

    Mmmh, I too agree that some apps could be done as web apps, how­ever I agree with most posters above that speed mat­ters, and native apps are faster, even with the improved speed of mobile safari in 2.0.
    But more impor­tantly, which I know was also already pointed out above, the impor­tant thing is that the iphone is not “always on”. Take for exam­ple that cock­tail app you men­tioned: You say it could be done as a web app, but as I see it, not hav­ing to con­nect to the net to get those recipes is invalu­able. Especially because many great party loca­tions I have been to have no cell­phone recep­tion at all. The same can be said for apps like epocrates or the Netter flash­cards … imag­ine you had to get all that data over the air … a nightmare!

  8. […] The Great Leap Backwards takes a look at devel­op­ing Web apps vs Native (Cocoa) apps for the iPhone. He starts naively talk­ing about the bet­ter devel­op­ment plat­form, but does even­tu­ally get into the kicker behind AppStore — the busi­ness model. Web apps aren’t king for all, and they won’t be until there are some seri­ous client side hard­ware inter­ac­tion improvements. […]

    • By:JoeBoy
    • July 21st, 2008

    You’ve got some good points but you’re some of the huge advan­tages of native iPhone Apps for the iPhone over web-​​based apps:

    Lets sup­pose I am build­ing an app for the iphone, and I build two ver­sions of it, one that is a native iphone app, and one that is a web app. What will be dif­fer­ent about the user expe­ri­ence between the two apps?

    1) Network per­for­mance will alter the user expe­ri­ence, the native iphone app will feel MUCH faster than the web app. The web app has to be down­loaded from the web every time the user does any­thing on it (or loads a new page on it any­how): all the images, css, javascript libraries and markup have to be down­loaded for it to work. Native apps only have to be down­loaded once, so that when you use then they only have to use the net­work to get the infor­ma­tion that you actu­ally need. This dra­mat­i­cally improves the user expe­ri­ence by mak­ing the app far more respon­sive. It also has the addi­tional ben­e­fit of increas­ing bat­tery life. Win Win.

    This is already appar­ent to me in many of the new native apps — they feel far more respon­sive to me than their pre­vi­ous web-​​based coun­ter­parts and I guar­an­tee you that this is because.

    the other user expe­ri­ence ben­e­fit is that my apps are actu­ally, well … apps. They get their own wrap­per, not just their own icon. Rather than hav­ing to run under mobile­sa­fari as tabs of the same app they are their own entity with their own data. If some run­away script on another mobile­sa­fari crashes the browser, I don’t lose all my appli­ca­tion states. I don’t acci­den­tally open yet another instance of the same app in a dif­fer­ent mobile­sa­fari tab every time I click on the iphone icon.

    While I can under­stand your gripes with the app store, there are many prac­ti­cal rea­sons that I much pre­fer native apps over web apps on the iPhone.

    • By:Hendrik
    • July 22nd, 2008

    I just wanted to say that I am really impressed with the level of dis­course here. Excellent points are being put for­ward both in the arti­cle and in the comments.

    To me the App Store def­i­nitely seems like an amaz­ing oppor­tu­nity for devel­op­ers. Very few peo­ple pay for share­ware apps (or com­mer­cial appli­ca­tions too in fact). Just as pretty much nobody used to pay for music online. Before the iTunes store came along. Making it super con­ve­nient made peo­ple actu­ally pay for music online. When it first came out I thought there was no way in hell that peo­ple would stop down­load­ing music for free and start pay­ing. But they did. And now buy­ing appli­ca­tions at the App Store is so con­ve­nient that I am sure tons of users will buy. Of course if you are try­ing to sell a 1.99$ tip cal­cu­la­tor and there is already a 0.99$ ver­sion plus a dozen free ones doing the same thing your sales might not be so hot. That being said, if for exam­ple the 0.99$ ver­sion looks nicer than the free ver­sions and gets good reviews than I am sure it will still sell quite a few copies. Try to get any­one to buy a sub­scrip­tion to your tip cal­cu­la­tor web app.

    Let’s hope that Apple fixes the remain­ing unpleas­ant issues sur­round­ing the App store and devel­oper pro­gram soon.

    • By:Travis Butler
    • July 22nd, 2008

    Perhaps my biggest dis­ap­point­ment is that so few of these appli­ca­tions take advan­tage of the con­nect­ed­ness and “always on” nature of the iPhone (and to a lesser extent the iPod Touch). They tend to use local stor­age of data, and do very lit­tle tap­ping into the shared resources and intel­li­gence of the web.

    Well, yes… that was one of the major points of native apps.

    I have to come down hard on the native app side as well. Apologies if I’m mis­char­ac­ter­iz­ing things, but this arti­cle seems to be writ­ten from the posi­tion of some­one who thinks of web apps as the be-​​all and end-​​all of soft­ware devel­op­ment. And that just ain’t so.

    I’ve been fight­ing this par­tic­u­lar idea in var­i­ous guises (‘thin client’, ‘cloud com­put­ing’, ‘net­work appli­ance’, etc.) since work­ing at a Sears Service Center in the mid-80’s. (Sears kept all its parts records on main­frames in Dallas and Chicago; the con­nec­tion to the main­frame went down around once a week, leav­ing us stranded for how­ever long it took for them to get things back up.) Network con­nec­tiv­ity is not ubiq­ui­tous and is not reli­able. I’ve spent five min­utes on the iPhone wait­ing for a web­page to load, sit­ting in a restau­rant in a fair-​​sized city, and that’s just a sim­ple web­page — not a web app.

    Even when the app is devoted to read­ing infor­ma­tion from the net­work, it still is a big win much of the time to min­i­mize the amount of data being sent… WeatherBug runs much faster when all the server has to send is the raw weather data, com­pared to the Weather Channel’s admit­tedly very nice web app that has to down­load all the page ele­ments, graph­ics and scripts as well.

    I’ll also agree that native apps are far more respon­sive than web apps on the inter­face side, even with­out hav­ing to worry about net­work connectivity.

  9. fyi — check out http://​www​.torah​web​.org/​a​u​dio — using the iPhone UI style on a web app for an audio and video library, all stan­dard js and css

    • By:Klimzk
    • July 22nd, 2008

    I don’t get this. An app is sup­posed to take advan­tage of what its under­ly­ing plat­form pro­vides. If AJAX can­not do it, what’s wrong let­ting native apps take over? Not Apple’s fault that AJAX is just not sexy enough.

    • By:J Walker
    • July 23rd, 2008

    Many have already stated this, but for me, your arti­cle hinges on a faulty premise; con­stant con­nec­tiv­ity to the ‘webs. I’ve been out of the coun­try since late March, which until the 2.0 release, basi­cally meant I had a nice iPod.

    That’s really it, isn’t it? It’s hard to build a log­i­cal argu­ment on such a flawed foun­da­tion. Of course, if the idea was to gen­er­ate page views, then I would say your arti­cle was a success…

    • By:john
    • July 24th, 2008

    Hi all,

    I’ve posted a fol­low up arti­cle address­ing many of the com­ments here. Sorry it took a lit­tle time.

    http://​www​.web​di​rec​tions​.org/​b​l​o​g​/​i​p​h​o​n​e​-​n​a​t​i​v​e​-​a​p​p​s​-​r​e​d​ux/

    • By:Susan
    • July 27th, 2008

    Who can list 10 things that can be done with an ‘iPhone app’… that’s *IMPOSSIBLE* to do with an “iPhone web app”?

    Or… who can list other 10 things that can be done with an ‘iPhone web app’… that’s *IMPOSSIBLE* to do with an “iPhone app”?

    • By:dave
    • August 1st, 2008

    It should be easy to find 10 tasks that can only be per­formed natively. Things that are cur­rently out of reach for a web app: access­ing address book, appts on the cal­en­dar, using the cam­era, GPS, accelerom­e­ter, access­ing media in the iPod library, pick­ing pho­tos from the library, core ani­ma­tion, recording/​playing audio, access­ing voice­mail, etc.

    Seeing as you can embed a UIWebView con­trol into a native app, it is fair to say that a native app can do pretty much any­thing a web app can do. However, a native app will have a hard time ren­der­ing cus­tom con­tent (even to the extent of text that uses mul­ti­ple fonts) with­out resort­ing to this control.

    As it stands now, it appears a hybrid solu­tion cov­ers most that the device has to offer, but each SDK falls short when used on its own.

  10. […] some while back I wrote quite scathingly about native iPhone apps. I still stand by what I wrote there — but that hasn’t stopped me down­load­ing some apps, and […]

  11. Just like in the non-​​mobile world both apps have there place, and it pains me that apple doesn’t just offer some sim­ple xcode tem­plates which expose uiwe­bkit, and would be accept­able in the app store. So the app would mainly be web­based but have a native look and feel. (much like air on the desk­top) Yes you can do that with just an uiwe­b­view, but apple con­sid­ers that a web­clip­ping app and WILL reject it.

    Given that there is a lot func­tion­al­ity you need the native envi­ron­ment for. Not to men­tion if you have some func­tion­al­ity when the web is unavail­able or your hit­ting mul­ti­ple web sites, or want to keep open mul­ti­ple ses­sions and push data from one ses­sion to another using server push. btw. I’m still try­ing to work that one through because there seems to be a bug in using mul­ti­ple uiwebviews.

    The point is, from an enter­prise copo­rate stan­dards apps that get and dis­play data from web­pages are prob­a­bly more cost effec­tive as web apps and more secure.
    But if you need phone func­tion­al­ity or more pol­ished look an feel you want to use a native wrapper.

    We have a project using the server side ice­faces here, you might be inter­ested in.
    http://​www​.moon​catven​tures​.com/​b​l​ogs

  12. […] Our inter­est is sim­ple — the way you develop for the Pre and its new webOS is to use CSS, HTML and JavaScript. Now, this was the way Apple ini­tially announced you should develop appli­ca­tions for the iPhone, but then ulti­mately realeased their own Cocoa based devel­op­ment frame­work for native iPhone apps, CocoaTouch, which we sug­gested was a “great leap backwards”. […]

  13. […] iPhone native Apps: the great leap backwards? […]

  14. […] iPhone native Apps: the great leap backwards? […]

  15. […] iPhone native Apps: the great leap backwards? […]

Your opinion:

XHTML: You're allowed to use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>