Hacker News new | past | comments | ask | show | jobs | submit login
Serious doubts about the App Store (marco.org)
131 points by functional-tree on July 17, 2009 | hide | past | favorite | 41 comments



Wow, he hits the nail on every major sore spot, although I think I would have mentioned the iPhone Developer program portal as a huge issue as well, especially the 100 device/membership/year limitation and the way it was implemented.

It's quite frustrating to want to spend more time on iPhone development but hitting a brick wall everywhere because Apple just doesn't seem to really care about making the experience better. And it's really saddening because their engineers are clearly awesome folks I love to have a drink with or talk to, but they just can't help much. WWDC, despite the one disastrous app store session, was the only chance I and many other developers got to personally hound engineers we didn't know to fix/workaround a lot of issues that nobody cared about. My one single problem (big enough that we couldn't ship the app until it was fixed) that was lounging in ADC and DTS support hell for months was fixed in under 1 hour (most of that waiting) by a single very awesome person there. Some of these things just shouldn't be waiting as long as a year for the one week in the year WWDC happens, but I guess we just have to live with it. I'd even pay more to get these problems fixed. But some of them have existed for...well...a year now. And new problems keep popping up that make me want to rip my hair out (like 17+ ratings for all apps with built in browsers and similar? what the hell!).

I've heard about and seen experiences with other mobile platforms that are equally as bad, but it's really disappointing when Apple comes out with this phone that changes the smartphone market but then just keeps this backwards and nonsensical attitude towards developers.


> Apple just doesn't seem to really care about making the experience better

They do. They're just not moving fast enough to please everybody.

Case in point: For months, ad-hoc distribution would fail unless you made up a config file with a special key (get-task-allow), fed it through gcc, and attached it to Xcode via some bizarre build settings. Just recently, this trick became documented in the official "how to build things" manual, even though ad-hoc builds have been broken without it since forever. (Also, nobody seems to know what exactly get-task-allow does, although there are reports that it maybe affects debugging. Somehow.)

For months, you had to put exactly the right incantation into the bundle identifier in order for things to sign correctly. Maybe you have to put in the part before the first period, or maybe you put in the part after. (Wait, you didn't include a period? Wait, not period, you're supposed to include an asterisk in there. WTF Apple added a period !? Wait, you expected a Unicode character to work just because that was how it was documented?) Maybe Xcode doesn't tell you when you've done it wrong. Maybe iTunes connect doesn't tell you when you've done it wrong, and you get an app rejected because the documentation is fail. This has all since been fixed, although it's still more complicated than it should be.

The iPhone is just a series of secret handshakes, and everybody winks very hard. If you are okay with that, and are okay with searching the forums for undocumented Apple bugs every few days, you will be fine, and possibly make lots of money, because there are lots of people who are not willing to wink hard and look the other way, and so you can bill $150/hr.

Don't get me wrong, I get angry too, and have little fits of rage at Apple for some stupid, stupid problem. But at the end of the day, I get a pretty good check for not much work, I write things that I'm proud of, and occasionally Apple fixes their bugs. Good project, good paycheck, good stack: pick two.


> They do. They're just not moving fast enough to please everybody....

Problems with adhoc and provisioning in general were somewhat understandable and are (sorta) being fixed and documented all over the place, which is not what I have a gripe with minus the occasional issue that makes me want to rip my hair out and wonder why it's not any better. It's that situations change and then Apple announces some arbitrary change with seemingly good intentions but with disastrous effect on apps in the store now. You see things like the change where any app with UGC should now be rated 17+ lest Apple reject updates until you change it to 17+...who on earth thought that was a good idea?

So then when I do have this occasional issue that makes me want to rip my hair out, combined with all these new problems that arise and that nobody at ADC is particularly helpful when problems do arise (I still have unanswered emails to Apple that are over a year old), I wonder if I'm being paid enough to deal with this :)


I believe you are making a ton of money because by the tone of your note, you seem to need to get back to work right away.


>I've heard about and seen experiences with other mobile platforms that are equally as bad, but it's really disappointing when Apple comes out with this phone that changes the smartphone market but then just keeps this backwards and nonsensical attitude towards developers.

One thing that I think we all have to take into account is the fact that the rules for Cell Network access are a lot different than what we're used to for general purpose computing networks. The fact remains that these networks are extremely, rigorously, monopolized and maintained by groups that are not going to give them up without a fight.

Its an underlooked fact that cell networks are considered a military asset. Every single cell tower, its location, and its operational condition are monitored by the Pentagon on a realtime basis. You do not get access to these towers without permission.

It should come as no surprise that stringent control is being applied to the terminals used to gain access to these networks. For sure, we have a consumer mentality about it - freedom of choice, freedom to buy, freedom not to use, etc.

But the raw hardware on the backend: it does not belong to you. You are being granted permission to access it by the military-industrial complex which controls the means and resources by which the asset is maintained, stringently.

This is bleeding through, all the way through, and Apple are doing a pretty good job of picking up the attitude. Seriously.


Seriously? While Blackberries, PalmOS, Symbian, Android and Windows Mobile devices have all let you load whatever the heck you want onto their phones over the past 5+ years, we are now going to claim that it's not that Apple doesn't have its shit together, but that the Pentagon is getting in their way?

There is no such control being applied to most of the other smartphone platforms. They all have their issues, either with the end user experience not being very good, with overcomplicated development processes, with low uptake, with poor or nonexistent app stores, etc, but only Apple behaves so strangely towards its developers.

Apple has come the closest to nailing the big picture: technology, uptake, user experience. Instead, the part they are failing on is treating developers like they care. It should be the easiest thing to fix -- and that's also what makes it so annoying for so many people.


Pardon my ignorance, but is there anything preventing people from installing apps without going through the App Store?


If you jailbreak your phone you can install any apps from Cydia, the unofficial installer that supports multiple sources of unofficial apps.

The problem is that only a very small number of iPhones/iPod Touches are Jailbroken, and you have to deal with purchasing/registration yourself if you're a developer.


the only legitimate way to install iPhone apps is through apple's own app store. you can go the jailbreak route, but that's dodgy and error-prone, and you'd only be targeting the fringe that way.


It sounds like this is the area where developers are going to have to innovate if they don't like working under the App Store's conditions.


As far as I know, unless your iPhone is jailbroken, you will be unable to run applications without a digital signature from Apple. Thus, for the vast majority App Store is the only place to get their apps.

Maybe, someone who is an actual iPhone developer, can explain the process in more detail.


You compile your apps against different profiles depending on what you want to. Generally for:

1) Debugging your own app (works only on your own phone)

2) Distribution : http://imgur.com/PFYnK.png

i) Ad-hoc, limited to 100 devices: http://imgur.com/HjwnN.png

ii) For the app store

So yeah, you can compile it for 100 friends if you have their iPhone/iPod UUID, but you can't make it freely available for everyone.


From a developer point of view, you're able to compile your own applications for up to 100 devices (as long as you have the device unique identifier (UUID) for each of them). There's no easy way to do this for the public however.


So err, what happens if you are developing apps on behalf of clients, and you want to demo apps to each of them, and you end up with more than 100 clients?


There's a different kind of registration for that I believe, I have a standard developer program license ($99USD/year), there's another "enterprise program" which I think can do 500: http://developer.apple.com/iPhone/program/apply.html


The enterprise program lets you issue a provisioning profile that's not tied to UUIDs. Translation: you can have as many app users as you want.

On the other hand... there's no easy way to charge. The provisioning profile is all that's needed to run the app.

Also, these profiles are intended for "internal distribution" (inside a company). I'm sure Apple will blow up your certificate if you try public distribution.


I generally have clients sign up for their own apple certificate under their company, so the app purchases go directly to their bank account, the app the branded under their company name, and you don't have to think about that.


See my post from yesterday, it's pertinent...

http://news.ycombinator.com/item?id=707050


As far as AppStore is the shortest way from developer to paying customer and iPhone outsells any similar mobile platform (more than 20M iPhones sold vs. 1M of Android phones and <0.5M of Palm Pres) this will continue.


Probably, but I'd expect some part-time developers to defect just to have a better experience. It's not like everyone makes a ton of money on the App Store anyway. It took me significant frustration and annoyance to get my app out, only to have 100 people buy it. If there was a mobile platform that was fun to develop for, I'd switch to it immediately and make stuff there.


I don't know about other developers, but "defect" might be the wrong word. At any given moment, I'm developing for at least 3-5 different platforms, so adding another mobile one, in addition to the iPhone, would make more sense than ditching one for the other.

...maybe it would even help get an app approved faster, if it was a hit on another platform first?


From the post:

"Because it’s working for them. They’re making a killing taking their 30% commission on the 1.5 billion copies of $0.99 top-25 games that they’ve sold. Who cares if the App Store discourages good developers from putting serious effort into it? Apple doesn’t need to care. And, clearly, they don’t."

Yes, it's working for them. They are making money hand over fist. They don't care about developers because it's not in their interest to care. I know an app store dev with a top 100 app and he makes $5/day. The top 10 apps are making their authors rich and the rest of the apps are just trying to win that lotto.


Top 100 in his category? Or top 100 overall? I find that impossible to believe overall, and not surprising by category. There are a lot of less popular categories.


As much as it sucks, I do see the reasoning behind giving apps with internet-content an adult rating.

While it's true that Safari, Youtube, and even Mail can be used to access unsavory material the difference is these apps can be restricted by parents, individual third-party apps cannot.

Aside from having parents block all third-party apps, which neither Apple nor developers want, the only option is to have a "your kid could potentially access adult content" rating.

Everything else in this article is fair comment though. If Microsoft/RIM/Palm get their act together I can easily see many developers defect.


We have an app that has been in the store for a few months. The app finds hiking and outdoor adventures near you, including displaying the wikipedia pages for parks. We've had to designate our app 17+, even though the only way to get to objectionable content is to load the wikipedia page for a park, and follow wikipedia links until you find something dirty.


If that was the label that went on the 17+ apps that are 17+ for third party content that would be fine - like for apps that would get a rating like 4+ otherwise. But it's not. Check out http://itunes.com/app/downloader for an example. The 17+ label for apps with mature content in the app and the 17+ apps rated as such for possible access to mature content are not even the same - at least the former is labeled only for the kind of content that is in the app, not the whole free-for-all.

...not to say that the 17+ rating should serve as the rating for "there might be adult-themed third party content", but that maybe apple should have one rating for the app itself and then a warning for the third party content...and a whole section in parental controls to enable/disable these particular apps with these warnings instead.


Alternatively, I wonder if Apple could put a hook into the iPhone's browser api such that any use of a browser in third-party apps can be restricted from parental controls.


Unfortunately the browser isn't the only place to access user-generated content. Take for example a Twitter client, just by nature of being a Twitter client and theoretically having access to the public timeline with mature content is enough to get a 17+ rating. Or...name any app that would need a browser built-in, presumably because the user would come across many links while using the app (and of course the dev wants to provide a better user experience via not having to quit the application)...where would the links come from? It wouldn't be just the browser that needs restricted.


"Aside from having parents block all third-party apps, which neither Apple nor developers want, the only option is to have a "your kid could potentially access adult content" rating."

They could parent protect the data connection. I think this would work fine for younger kids who don't need to be on twitter or whatever, and for whom parental protection is the most important (presumably).

With the arrival of the 3GS, a 1st generation iPhone just trickled down to my 2 year old. I just put it on airplane mode, but I am guessing that trick is only going to work for a couple of years.


Why would you give an iPhone to your 2 year old?


She watches videos, "reads" books (scanned images of picture books), plays games, listens to music and practices "typing". It's now a spare, so it doesn't have a calling plan. So just like a video iPod really.

I can tell you that multi-touch has been a lot easier to teach than mouse use.


Have had the same experience with multi touch interfaces and my kids: they instantly get it. They drag things around, stretch, move etc... all without being told.

Will be interesting to see what the future holds - perhaps the idea of a separate mouse to a screen will be seen as quaint one day.

The funny thing is the mouse should be a a very basic instrument - its basically point and grunt. But the dexterity required for kids is a bit of a step - touch seems to make it even more intuitive.


It is really a shame that all of these issues exist around such an amazing piece of technology. I am avoiding creating an app for the iPhone because I flat out don't like the fact that they have the final say in what users can get on their phone.

The device is a mobile computer and I can install any program I want on my laptop so why shouldn't I be allowed to install anything I want on my iPhone?

The only way I can see of this changing is for the users to change their opinion and side with developers. Only, then will Apple be forced to change anything. I hope that users realize how much they could benefit from more apps from more developers and less Apple control.

Until then I will start looking into Android...


While most of the points may be valid.

"Almost no app updates were approved during the entire month of June with no explanation."

This is because they were launching 3.0 and all apps needed to be capable of running on OS 3.0.


It really makes one wonder why an alternative to the App Store hasn't sprung up yet, and I don't mean Cydia.

It will of course be popular among the geeks first, but hey, how else have most of the web applications started out?

Bring on the democracy!


Apple don't allow that.

You aren't allowed to make an app that allows other apps to be installed. The App Store is the one and only way to install apps, forever.


Democracy? At Apple? Haven't you been paying attention for the last 30 yrs?


I have pretty much given up on iPhone development .. for now. Hopefully things will change, but when I compare the experience of gathering 10,000 users on Android in a single release after an hour, with waiting for Apples blessing for weeks and weeks, I'll take the former, thanks.

The nail on the head issue is this: Apple are making buck$ from all this. They don't care a damn. Android, well .. Google may have its nefarious plans for us all, data-wise, but at least I have a lot more control, as a developer, over what happens. And frankly, I think the feedback cycle with Android users has been a much more positive one than with the iPhone crowd.

I sure hope Apple loosen up a little, though I won't be counting on it. I'll just focus on Android as my primary platform for now. Its better for me, and better for my users: and thats what really matters.


If freedom is what you want, the android has plenty of it.

While Apple prevents any sort of app that provides a runtime or scripting language, Google developers have released something that lets you code Android apps on the phone itself in real time in a selection of different scripting languages.

The contrast is stark.


You can code your app in whatever scripting language you want, but it can't download and execute code arbitrarily. For example, the unity game engine for iPhone uses mono & C#/javascript for all it's game programming/scripting. But when you use the app, the app doesn't act as a player but as a standalone application.


This is a quite common misunderstanding among iPhone developers.

For instance, I'm starting to use TinyScheme embedded in my code. Pretty sweet.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: