
Apple's Mistake - EliAndrewC
http://paulgraham.com/apple.html
======
edw519
A customer recently asked me to look into a program that used to run in 5
minutes but now took 1 to 4 hours. It's used by thousands of people all over
the world all day long.

It iterated through an array doing 3 SQL SELECTs against non-indexed files for
each element. There used to be about 50 elements in the array; now there were
more than 5000. I rewrote the whole thing in one day to do a total of 4
SELECTs and run in 12 seconds.

But it took 6 days to get through QA (while the users continued to suffer).
QA's biggest complaint? I indented 4 spaces instead of the (unpublished)
standard of 5 spaces.

Of all the things I have to deal with, nothing pisses me off more. Software QA
is becoming more and more like TSA security at the airport: illogical, and
obviously so. Last year, flagrantly unacceptable code was promoted without
question while its replacement was held up on a meaningless detail.

I got the feeling from the programmer's quotes in this essay that the same
thing is happening at the app store.

We programmers are a funny lot. Make us struggle for business or technical
reasons and we adapt beautifully. Make us struggle for something stupid and we
just get pissed off and do something else. What a pity.

~~~
lt
Not that the indentation complaints are valid, but the fix should definitely
go through QA while the users continue to suffer. While I'm sure it works on
the developer machine, it is much better to have a program that takes a long
time and works right than for it to give incorrect results to users, or make a
different part of the application stop working.

If the feature was really critical and important, QA should find a way to
expedite the verification, but it should never be skipped in order to ship the
fix faster.

~~~
Periodic
QA is basically your testing framework. It's there to do all the tests to make
sure the software actually does what you say it does.

No developer is good at testing their own code because deep down no developer
wants to break the code they just lovingly crafted.

~~~
joe_the_user
I've always been treated well by QA. I'm sure there are problem QA departments
out there but I doubt they are the rule. It's amazing to me that the parent
got down moded for supporting the task of QA.

~~~
dasil003
QA is awesome.

I think people are responding to the suggestion that in general developers
will subconsciously protect their ego by willfully ignoring flaws in their own
software. That is just tremendously offensive to any real hacker, and if it
were true the world of software would be a pale shadow of what it is today.

~~~
xsmasher
I don't think it's a slam on developers - I've hit and played outfield, and I
know what each side feels like. It's not that developers wants to ship bad
software, but haven't you ever avoided running a test because you're afraid of
opening a can of worms? QA wants to open that can. There's a perverse glee in
seeing all the worms get out.

When a new bug is found (a good one, not BS indentation) then QA has a
justifiable joy in finding it before it got to the customer. The developer may
also be devoted to quality, but doesn't your heart sink a little when you see
a new bug? Overall you both want to ship good product, but your minute-to-
minute motivations are just different.

------
JunkDNA
Part of Paul's reasoning depends on Apps being central to the iPhone
experience the same way software is central to the desktop experience. I'm not
totally sure this is the case. While apps are certainly a major component to
the iPhone, are they really _the_ major factor in end-user adoption? With the
exception of games, how many killer iPhone apps are there that don't already
ship with the phone? The phone shipped for an entire year without an App Store
at all. I even read something not that long ago that said the majority of apps
sit unused on people's phones after they get them.

Now, this doesn't mean that developers won't want a developer friendly phone,
or that Apple is hurting their reputation with developers. I'm certain it has
been frustrating to deal with the whole process. However, if 3rd party
software isn't essential for the iPhone as a platform, then developer
satisfaction moves down a bit in terms of importance in Apple's eyes.

Now, it's clear that games are major for the app store. Games are also a
special class of software application that benefits disproportionately from
having access to the hardware at a low level. They also have properties more
similar to music and movies (incidentally, things the iTunes store is good at
selling). Except for the simplest games, they require a lot of up-front design
work and investment. It's rare that a released game goes through a ton of
rapid iterations to "get it right". Games may still have bugs after release,
but in general the functionality they are going to have is there on day one.
They also ship with the final sound effects, music, artwork, etc... Games are
also probably very unlikely to "duplicate existing functinoality" or any of
the other cases where "normal" apps hit barriers. Perhaps Apple has
(intentionally or unintentionally) created an environment optimized for game
approval?

I'm certainly not defending the app store process, but I just wonder if the
software development community has a disproportionate view of its importance
to the iPhone as a whole.

~~~
Retric
Thank you, I just got an iPhone and I have found zero apps worth downloading.
Take this 35 list of _great_ apps
[http://www.techcrunch.com/2009/08/15/the-35-best-iphone-
apps...](http://www.techcrunch.com/2009/08/15/the-35-best-iphone-apps-of-the-
year-so-far/) and find something useful or fun.

~~~
gridspy
Gosh, I had no idea little quality software was on offer until now. I can only
see one or two useful apps in there.

------
joecode
Talk about it. I just got a rejection today for a major bugfix on my last
update. The only change in the update is to use utf-8 encoding---one tiny
change on one line of code. After 2 weeks, they tell me they can't approve the
update because I'm using undocumented APIs in a couple places. Sure, OK, looks
like I was using some methods that went from deprecated to undocumented... but
that's exactly what's in the store right now... ugh. Meanwhile, users are,
rightfully, pissed-off.

I'd say about 50% of the time my submissions get rejected, and always for a
stupid reason like this; this is one of the better ones, actually. Will I stop
developing? Probably not, because it's good money. But am I seriously
considering moving to Android? You bet.

~~~
akamaka
I think it's worth pointing out that even Apple's own developers don't get the
luxury of being able to push out bug fixes whenever they want. Point releases
of the iPhone OS are often months apart, so good testing is not optional for
them.

~~~
tumult
Apple employees have the advantage of being paid by Apple to work that way.

------
b-man
My vote for a truly free hand-held platform is the n900[1].

It's beautiful, clean and comes with with Debian based distro, Maemo.

My opinions about apple were never positive, probably because I'm only 25 and
did not program in the 80's. I've only saw apple as a manufacturer of shiny,
well designed rich boy toys, but that is probably because I live in Brazil,
where only rich people have it and they think they are 'computer people'
because of it.

I was always more influenced by the open source community, and apple's record
is far from shiny on that aspect.

My 2 cents.

[1]<http://en.wikipedia.org/wiki/Nokia_N900>

~~~
kirse
I've got this baby on preorder, can't wait to see if Maemo lives up to the
hype.

Personally I've never been an iPhone fan either purely because you can get
phones with far, far better technology for the same price. iPhone wins hands
down in UI right now (I still hate touchscreen-only phones though), but that
really won't be an issue for long with Nokia/Samsung/SE/HTC working double
time to improve their OSes.

------
poub
I don't think the claim saying that "Apple doesn't understand software" is
correct.

Apple do understand software. You cannot release Mac OS X, iLife and other
jewels without understanding software. Also Mac developers jumping off the
iPhone bandwagon are not jumping off the Mac plateform.

For the iPhone, Apple tried a different model that nobody really tried before.

They indeed have a broken store but the previous models on other platforms
never worked. The most successful one before was for the PalmOS and it wasn't
over the air.

However Apple always been an arrogant company. With their customers, their
providers and their developers.

The climax of this arrogance has been reached with the iPhone eco system
(certainly helped by the arrogance of the mobile phone operators).

And for many it is not sustainable.

But anyways, who really cares?

Apple can open the doors of the store overnight. It wouldn’t have been the
first time they do one thing making you beleive it was the only way and then
suddenly change in the opposite direction.

That’s the strength of Apple: they can change. Not only they can change but
they usually know when, with what, for who and at which price.

I never realised the arrogance was a trade mark of this process though. Note:
I don't mean being evil by being arrogant.

~~~
e40
> I don't think the claim saying that "Apple doesn't understand software" is
> correct.

I think he just left out a word: marketing. They know how to build it, for
sure. Paul's point is that they're marketing it like it is music.

------
larsberg
My biggest problem is that it's a half-assed review process. Neither is it an
open platform nor is it a relatively clear and thorough review process like
you get on the gaming device platforms (Microsoft, Nintendo, and Sony).

I made three applications (only one that was popular - WiFinder) for the
AppStore. Every time I interacted with reviewers, either by e-mail or phone, I
got the feeling they had no idea what they had signed up for, and had not
thought out beforehand how to deliver on the promise of only having quality
applications in the AppStore. Which is a shame because it's an old problem.

------
tptacek
Though I can't marshall any evidence to support this claim, it was
specifically _not_ my impression that Apple was a company pro developers loved
working with before the iPhone.

~~~
onewland
In high school, I thought that the CodeWarrior IDE (which was, as far as I
knew, the dominant development environment) was absolutely terrible. I'm not
sure how good my judgment at that time was.

That said, with OS X they really became a lot more developer friendly just
because they adopted a UNIX base. At this point, I'd say they're the default
platform for ruby/web development. Look at all the rails job postings for
small startups promising 30" Mac Pros, etc.

~~~
YuriNiyazov
The relevant times under discussion are: the era of the Apple II which came
with built-in Basic, and the era of post-OSX but pre-iPhone

~~~
rbanffy
The Apple II... A computer you could turn on and start programming in 3
seconds... When will we be able to do that again ;-) ?

------
petewarden
Apple has _always_ treated third-party developers with suspicion. The
developer website is only accessible by creating an account and agreeing to
their license agreement. They churn through and deprecate APIs comparatively
fast. They will quite happily steam-roller over third-party developers by
adding competing features to the OS:
[http://en.wikipedia.org/wiki/Dashboard_%28software%29#Compar...](http://en.wikipedia.org/wiki/Dashboard_%28software%29#Comparison_with_Konfabulator)

None of this is new, the only difference is that there's now a release
bottleneck that requires Apple's approval, and there's a lot of developers new
to the platform.

The thing is, this is part of Apple's culture for a reason. Steve is an
obsessive control-freak when it comes to a great user experience, and third
party developers are seen as a threat to that. Microsoft has always been a
great company to deal with as a third-party developer - they value their
ecosystem, put effort into free documentation and solid IDEs, and rely on
outside developers for key applications. The trouble with this comparative
openness is that you end up with 800 pieces of software written by different
companies fighting it out on your desktop, leading to crashes and inconsistent
UIs all over the place.

I think Apple is in danger of screwing up a great opportunity with the app
store, but this way of operating is in their DNA and it won't be easy to
change. Despite what the geek consensus might be, the record shows they've
made a lot of money in the past whilst ignoring third-party developers.

~~~
bad_user
> _The trouble with this comparative openness is that you end up with 800
> pieces of software written by different companies fighting it out on your
> desktop, leading to crashes and inconsistent UIs all over the place._

And that's a bad thing because? Who has the mainstream OS now with over 87%
market-share? Even popular cross-platform applications that were first
available for Macs (like Adobe Photoshop) are now more optimized for Windows.

Microsoft has always been more open ... you can install Windows on any
hardware you want as long as it's compatible (and most hardware is, with the
notable exception of ARM-processors).

The developer tools where a lot more competitive because Microsoft allowed
competition from the likes of Borland. And the Windows API was free to use (as
opposed to OS/2 for instance). And for end-users ... Microsoft has always been
committed to backwards compatibility (at least for popular applications).

Microsoft can be called "evil" yes, because of their aggressive tactics
regarding competition. But imagine what would Apple do in the same position
... and it's kind of ironic that many developers choosing openness went to
Apple for that.

Apple makes money, yes, but they were on the edge of bankruptcy ... they
should've learned a valuable lesson then (besides keeping Steve Jobs as the
CEO).

~~~
rbanffy
"you can install Windows on any hardware you want as long as it's compatible"

Sorry, I had to laugh.

Part of the blame for Itanium losing the 64-bit bandwagon could be pointed to
Microsoft, for not having Windows ready for it when it became available. Or
for delaying the launch - it's silly to launch a processor without an OS to
run it on.

Having Windows support for your hardware is paramount to any desktop computer
company since the early 90's (with the notable exception of Apple). Alpha,
MIPS and PowerPC (as in PReP) desktop systems are not dead because x86 systems
were a better price/performance choice: they are dead because Microsoft pulled
the plug on NT for them (and Linux was not ready to take its place at that
time). That's also why all our computers are remarkably alike from the inside.
It's not that Microsoft is open - it's that they have computer makers
cornered.

Today I can get a non x86 computer and expect all my userland to work (with
the possible exception of Flash, Skype and parts of Eclipse). I could not do
that in the 90s.

The Itanium is not an expensive server chip because Intel cannot build an
Atom-like processor with the Itanium ISA (heck - it must be easier than do it
with the x86 ISA). It's an expensive server chip because it won't run Windows
7 and Office.

I see very little competition in the development tools in the Microsoft space
these days. Tool makers know better - if they make something that competes
with Visual Studio, Microsoft will come after them in the next release cycle
and it is not worth the pain to fight them. That's why every non-Microsoft
development tool around is built for a niche. Or is free, a case where
Microsoft will not be able to go after you. That could be a reason for the
free language explosion we are seeing.

And thanks. The Psystar imbroglio is a statement of how evil Apple can be
about competition these days.

It even seems that after stopping attracting the best and brightest, they
started attracting former Microsoft minions...

------
antirez
Paul captured my whole feeling about the App Store matter, especially about
buying Apple products. Now I feel like I'm doing something wrong. I still like
the products but I no longer like the company.

Today my small team of developers submitted the first "toy" we released just
to test how the approval process works. Let's see if we'll have some bad
experience as well.

~~~
catweasel
Faustian bargain? Assholes? Evil? .. really, if this is the most serious
accusation of "evil" one can level at Apple then it isn't really going to
affect my buying decisions. It's not like they're dealing in small arms or
manufacturing cluster bombs. If you step back and think about it all Apple is
doing is stuffing up their own app store, which can be classified as
monumentally stupid and short sighted but not really "evil".

~~~
catweasel
General Electric, now there's a company that's "evil".
[http://www.google.com/search?q=%22general+electric%22+%2Bevi...](http://www.google.com/search?q=%22general+electric%22+%2Bevil)

Do you see my point? To anybody outside the app development community it's
going to look a little bit "self important" for developers to be using such
strong language and talking of boycotts over something most folks would agree
is not evil. I agree what Apple is doing is stupid, in the long term the app
store is going to be polluted with crappy apps and they're approval backlog is
going to be rather daunting. I think strong lobbying from the development
community is in order, but it takes conscious and deliberate inhumanity for me
to label someone "evil".

~~~
astine
Yeah, but it's Paul's point that it's the developer's opinions that matter,
hyperbole or not. Microsoft didn't get into the business of operating systems
until Apple kicked them off of theirs. If Apple makes it too hard for
developers to write software for them, developers will go to the next best
thing, even if it's DOS.

------
gruseom
Oldtimers have told me that they liked PCs better than Apples in the early 80s
because they were more hackable: you could mix and match and tinker and make
them do your own thing, while Apple's stuff was closed. Users loved Apple, but
hackers didn't like their we-know-best mentality. If that's true, it may not
be the first time Apple has made this mistake. Perhaps losing hackers was what
caused them to lose to PCs the first time around.

~~~
billswift
That was why Stephenson described Apples as "hermetically sealed" in "In the
Beginning Was the Command Line..."

------
credo
I agree with the primary point that Apple is making a mistake in not treating
developers well.

However, I think that the essay misses a couple of points.

1\. The essay rejects the notion of an "intermediary" or a "software
publisher". However, it fails to appreciate the fact Apple has opened up the
mobile app market to developers and eliminated far worse intermediaries (the
walled gardens of carriers). This is a huge order-of-magnitude improvement.

2\. A lot of developers do release badly-buggy apps out there and then end up
"blaming" the Apple review process for their customers dissatusfaction. While
I agree with the launch-fast-and-iterate approach, I don't think
developers/companies should use that as a license to release poor-quality
crashing apps. Cutting/postponing features to launch the app quickly can be a
good thing, not testing the app and releasing an app with crashing bugs is not
a good thing. \---

I don't expect Apple to throw out the review process, but I do hope that they
improve the review process. A simple/easy improvement would be to show the
latest queue ranking of apps that are waiting for review. That will go a long
way towards reducing the "ongoing karma leak" that pg mentions.

Replying promptly to developer emails about app-store rejection will also
help. Setting a limit of n apps for a $99 license may also help Apple cope
with the incoming deluge of apps

~~~
wvenable
1\. Carriers never had walled gardens around smartphones. Apple didn't invent
smartphones, they've been around for years before the iPhone was released. In
fact, the carrier (AT&T) has more control than they do on blackberries or
WinMo phones.

2\. I'm not sure what you're trying to say here. The review process _exists_
so developers are already doing their best to not be rejected and Apple is
rejecting anything badly-buggy. Bugs still escape that process, it's
inevitable. Fixing them should be easy and quick, but it's not, and Apple is
entirely to blame for that.

------
scscsc
I totally agree with the article. However I wonder what prompted PG to write
it. Did one of their startups' apps get rejected recently?

~~~
pg
A lot more than one. The App Store is tied with US immigration as the biggest
source of complaints I hear from founders.

~~~
netcan
That comparison should be worrying to Apple in itself. You should have put it
in the essay.

------
charlesju
1\. While I agree with most developers that Apple has room for improvement, I
think we should take a step back and realize how much of an improvement the
iPhone has made mobile developers from a couple of years ago when the carriers
were in charge of mobile applications.

2\. I think the solution to the iPhone fiasco should be for Apple to hire more
reviewers and allow developers to pay more money so that they can buy a faster
turnaround time. It doesn't make sense for me to wait 2-3 weeks for another
shot at the review process because I placed a bad keyword in the description.

~~~
jgrahamc
I strongly disagree with your conclusion. Both smack of 'religious' thinking.
Your point 1 is essentially 'be thankful to the merciful god who has ended the
drought'. Your point 2 doesn't solve the problem, it just throws more priests
at it.

The solution is to open the platform to all developers. Imagine if Microsoft
had vetted every DOS and Windows app, or if we had to submit Linux apps to
Linus for review.

~~~
allenp
I keep seeing this notion of opening the platform brought up here. I'm having
a hard time visualizing how this works out.

Does Apple continue the overhead/cost of the app store? Do they have a giant
disclaimer that they do not support or condone the applications, take no
responsibility for any damages, etc? Do they still act as the payment gateway?
How does this impact Apple's brand and the consumer trust of the product?

Why is it that mobile phones with open app development have not taken off even
with years and years of head start?

What is Apple's incentive to do this? Can they make money on a phone that
allows this sort of development?

I really think there is a lot more to it than just "open it up the world
deserves to be free" and we're not talking about it. Why is that?

~~~
fhars
Before Android, there was no phone platform with open app development, JavaME
and Symbian require a code signing certifiate (at about $300 per year) just
for running your own code on your own phone in an acceptable manner. Symbian
seems to have opened up a little bit in the last few months with free online
signing for your own IMEI, but it is still very little, very late.

~~~
dejb
Not True. Windows CE/PocketPC/Mobile has always allowed you to get Apps from
anywhere.

------
zyb09
You know on BlackBerry AppWorld each submission of an update costs you $20 AND
goes through a lengthy approval process. (you need to purchase 10 submissions
for $200 at a time). Oh there's a bug in my app? I could fix it in 5 minutes,
but too bad..

~~~
sfwc
There's a fundamental difference between BlackBerry and iPhone here, though:
You don't have to use BlackBerry AppWorld if you don't want to, you can make
your application available directly from your own website. Furthermore,
AppWorld only takes a 20% cut: I think getting another 10% of the gross
revenue (over what the App Store charges) should be worth a flat $20
administration fee to you.

------
cpr
I think a lot of the problem stems from the fact that Jobs hates third party
apps (because he can't control them), and he always has, and always will.

He just realizes he can't build a successful product, long-term, without them.

But his main internal smart software guys know better, and build a great
software ecosystem.

Thus Apple is now projecting a seriously schizoid personality.

~~~
forensic
But see this is the dynamic between the user and the developer. This kind of
tension is necessary to the process.

When developers can make whatever they feel like making, we get linux.

When Steve Jobs is there to lobby for the customer, to lobby for beauty and
ease of use and a focus on the details and thorough documentation, then we get
OS X and the other "It Just Works" features that Apple is becoming known for.

Customers want a Steve Jobs parental figure to stand there beating back the
hordes of opportunistic Bonzi Buddy coders trying to make a quick million.
That's why people pay premiums for Apple products.

Love it or hate it, the philosophy behind the App Store is a large part of
Apple's growing success. The philosophy is that the user will pay more and in
return the developer has to jump through some hoops and get his app approved.

Having said that, obviously the approval process needs to be adjusted. It
sounds relatively trivial, in fact, for Apple to implement a procedure that
would allow minor bug fixes while still putting apps through an approval
process.

It would be great if customers could trust developers, but the truth is they
can't. This has been proven over and over again. For every hacker that is
dedicated to making something people need, there are ten willing to code
exploitative Facebook apps and spambots and spyware and toolbars and programs
that run in the background and phone home constantly so they can sell user
data.

------
mattmaroon
"Google and Apple. If Microsoft was the Empire, they were the Rebel Alliance."

I always think of them more in terms of Animal Farm. Microsoft was Mr Jones,
Google and Apple are Snowball and Napoleon.

------
barrkel
Since when was Apple's reputation with developers great? They've always been
capricious, flighty and controlling - not what you need in a solid platform.

------
prakash
I wish Amazon gets into the handheld device business.

They clearly understand consumers, software, infrastructure & user-experience.
They missed the boat with the ipod, here's a fantastic opportunity to do
something about it.

~~~
kylec
Since the "1984 incident" I trust Amazon even less than I trust Apple. At
least Apple doesn't yank music/apps/whatever off their customers' devices.

~~~
bkudria
I suspect because it's difficult for them to technically do so. They would
have pulled the GV Mobile app in an instant, if they could have, but the
iPhone OS doesn't have this capability. The Kindle does.

~~~
boucher
Actually, they do have this capability, but they haven't used it.

------
c1sc0
I cross-post this from the other thread I started since I noticed the Apple
heat is in this one, if you want to learn the background about my app, check
this thread: <http://news.ycombinator.com/item?id=951360>

Below is what I've learned after 2 months of AppStore dev.

Here are a few dirty tricks & ideas that I hope will make life in AppStore
purgatory easier:

Use the 'Easter Egg' field to plead directly to the reviewer. It's a free-text
field that every reviewer will read and a little social engineering will work
wonders.

If the app name is important to you, reserve it by submitting a dummy app
without binary. You'll need dummy 512x512 and 480x320 artwork in order to be
able to fill out the form.

Phone contacts at Apple are pure gold. I consistently got on the line with the
same reviewer. Depending on their mood reviewers can expedite things. But it's
still pretty random.

Set your app price low ($0.99) while it is in the review queue & jack it up
immediately on release date. I got an app rejected because the reviewer did
not like the price I set.

It pays not to be a bottom-feeder. Maximize revenue, not units of sales. Often
a slightly higher price will give you more revenue. There's more than the
$0.99 price-point. At a higher price point you can also afford to pay higher
CPM/CPC for initial customer acquisition.

Count on doing your own marketing. The time when you could solely rely on
rankings to boost your sales is over. The AppStore UI is so broken right now
that you have to assume that your customers will not find your app without
some effort of your own.

Expect long approval times. I've started thinking in development/update cycles
of at least one month. Agile is not the mindset at Apple. Work on new apps
while your other apps are in the queue. I wish Apple would crowdsource the
approval process or look into setting up community-managed 'repositories' like
Linux.

App Complexity is a good predictor of approval time. This is a big problem
because it does not reward taking on the risks of building better apps. It
took me 2 months to build up the confidence to start a more complex project.

Private API calls are an absolute no-no: even if you were approved before,
your next update will be rejected because Apple started using automated tools
to inspect your code.

If you give unlimited access to the internet through a UIWebView, your app
will be pulled unless it has a 17+ rating.

There's no (easy) way to measure where your app sales come from. This makes
traditional SEM/SEO difficult. You have no conversion numbers so your
marketing funnel is broken.

Don't mention Apple products in your description. Don't use images of Apple
products. Don't mention real-life persons in your description, I got an app
rejected for that last one.

Don't count on being able to schedule a release date. Once you do get the
approval mail, go into iTunes Connect & set your release date to $NOW.
Remember, this can work both ways: I got surprised by an early release before
my marketing materials were ready.

Yes, you will be pushed back to the queue upon rejection, even if you have the
reviewer on the line and beg him to make an exception.

In all fairness, not all is bad. Apple seems to have started picking up speed
lately. My experience with App approvals has been that it got faster in the
last 2 weeks, at the same time when the AppStore itself went in disarray
(wonky rankings, wrong release dates, ...). However, take care and remember
"Correlation, Causation et Al.". Also, once I was in contact with Apple over
the phone they were very courteous and professional in resolving issues. Slow
& polite.

~~~
mseebach
You list of advice is good. It's that it needs to exist to put software on one
of the most popular devices of the decade that's absurd.

In the 80's you could travel pretty freely as a western visitor in communist
eastern Europe if had a similar list, telling you who to nudge where, what
gifts to bring for cheap bribes (IIRC I heard that a good ball point pen got
you far in some places) and so on. Now, the ultimate solution isn't a better
list, I think was PGs point.

~~~
hristov
I don't know about ballpoint pens but a good bottle of cognac always worked. I
knew some people that started a business right after communism fell -- they
had to buy cognac by the case.

------
lt
This is a very developer-centric view, though. For users, the app store is
great - tons of applications, and they're easy to find, buy, and to install.
The approval process, for the user, makes a better overall experience,
increasing the overall quality of available apps. For each bugfix waiting for
approval there I'm certain there's lots of buggy apps being rejected, and for
each anedocte of rejection due to using the wrong icon or such nonsense,
there's lots of appropriate rejections due to unstable apps.

Obviously without good and satisfied developers those benefits are moot. I'm
certain the approval process needs to be
[improved/changed/redesigned/removed], and maybe some kind of sanctioned
jailbreak should exist where more advanced users can manually install third
party apps, but I do believe the App Store itself is a good thing when you you
look at it from a user perpective.

------
crayz
As Moore's law marches on, it's inevitable that the computing power needed by
Joe Sixpack will fit into smaller and smaller packages. The rise of the
desktop, then laptop, now netbook. Each iteration takes less time than the
previous one. That asymptote will soon - a few years at the outside - hit the
iPhone/PDA form factor

Apple must understand this, and they can't possibly believe they'll be allowed
to maintain this sort of dictatorial control over people's primary general
computing platform

~~~
cpr
Why not? They're certainly going to try, and they're winning so far.

Maybe our generally-accepted notions of what should succeed in the market is
wrong.

------
nickpp
That mobile platform has already arrived. It's called Windows Mobile.

I was surprised too: my wife has a 3GS and I was planning to get one for
myself too.

Instead I got a HTC Diamond2 which I plan to upgrade to a HTC HD2. I'm a
developer, not a essay-writing millionaire. I like platforms that are
Powerful, flexible and CUSTOMIZABLE to my taste. I like pretty too, but form
has to follow function, not the other way around.

On WinMo, thanks to xda-developers I belong to an AMAZING (real, not wannabe)
hacker culture and environment. The latest HTC ROMs are sleeker and better
than the iPhone. More useful and immensely customizable.

My wife still has to click an "App" to get to her favorites... mine are on the
first page. Which first page is GORGEOUS, not an old matrix of icons.

But the most important part... my phone is HACKABLE. My wife's is like my ps3:
untouchable.

~~~
forensic
But does your wife want a hackable phone? Does she really care?

Does she want to have to deal with it when she downloads an app that sounds
cool and it ends up installing spyware on her machine and drains her battery
and drops her phonecalls?

Or would she maybe rather give up some hackable freedom for ease-of-use and a
promise of a protected experience?

~~~
nickpp
No she doesn't. She's perfectly happy with the iPhone. Even if she envies the
functionality on my HTC sometimes.

But the discussion here were HACKER phones, not consumer phones.

------
derefr
The App Store is only viable because Apple is protecting it as a crown jewel
loss-leader. If the Store were spun off into a separate company (not a
subsidiary) that had to be profitable on its own, I can imagine the policies
changing for the better rather quickly.

~~~
mcormier
A separate company would probably want a higher percentage of sales too
though.

~~~
boucher
Unlikely. 30% is already pretty high, probably more than any startup would
have been able to credibly command. It's another instance of the lack of
choice allowing Apple to dictate whatever terms they like, however unfavorable
they may be.

------
petenixey
The other huge irony about the app store approval process is the massive
advantage that it ends up giving Apple's competition.

The app store is already far ahead of the competition but it could be factors
further ahead with shorter cycle time.

Progress is a non linear function of cycle time. Apple are holding themselves
back by many factors by artificially extending cycle time and making it far
far easier for the other platforms to catch them up.

~~~
clawrencewenham
The killer feature isn't that you can run lots of apps on it. The killer
feature is that it has a market built into it.

The more I think about it, the more I think a QA review process is necessary
to make the market work in the long run, and I think the idea of "rapid
iteration" on mobile devices--while nice for the developers--is ultimately
wrong for the users.

APIs are notoriously hard to get right without either committing yourself to
support a broken implementation forever, or breaking thousands of apps. So
access to the API is rolled out slowly and gradually to give engineers time to
see what's working and what should be changed.

And the value of "don't have to think twice about buying" for the users is
probably worth millions or billions of dollars to a large marketplace. I don't
think you can get that with certifications, because it really hasn't been
working for SSL certificates and "TRUST-e", etc.

A mobile phone is NOT the center of my world. I already hate the fact that the
few apps I have installed on my iPhone keep coming out with updates that I
keep having to install. I do _NOT_ want rapid iteration being performed on a
phone with 10-20 apps on it. It's a chore to keep installing the new versions.
Nor do I think they should auto-update, because that comes with its own can of
worms, too.

Apple isn't handing an advantage to its competitors. The review process _is_
the advantage. We've been needing a good review process for the notoriously
crap-assed QA problems in commercial software for a long time.

------
maurycy
The sad fact is a complete lack of alternative. Personally I hate Apple so
much. However, I still buy one or two Apple computers a year.

If you're a developer, and you want a stable environment that gives you access
to the Terminal (bye, Windows!), has nice typography (bye, Linux!), excellent
text editor (TextMate is the best one I found for Ruby) and does not cause
stupid problems with printers or wifi (bye, bye, Linux!), you have no choice
but OS X.

Their hardware is a piece of crap. Even a company that made an ad with them,
agrees with that:

[http://37signals.com/svn/posts/1489-every-mac-ive-owned-
has-...](http://37signals.com/svn/posts/1489-every-mac-ive-owned-has-failed)

I think it's very similar if you are a professional photographer. Windows is
so bloated it's painful to work with. Linux has no Adobe toolkits and you end
up with OS X again.

------
roundsquare
Maybe I'm missing something here (I don't own an iPhone or make iPhone apps),
but I think the analogy between the app store and a traditional start up is
very flawed.

How many people associate an iPhone app they download with a 3rd party? I
would think most people associate everything on their iPhone with Apple.
Launch fast and iterate is great for developers but for Apple it makes it look
like they keep releasing buggy software.

Contrast this with a software company. Most people have learned that if an app
doesn't work on their Dell, its the developer's fault, not Dell's (usually).

This misconception about iPhone apps is made even stronger by the fact that
users buys apps through Apple!

Edit: I don't mean to defend Apple completely. Obviously their processes
should be better, but I'm just disagreeing with the rapid iteration model.

------
tokenadult
Y Combinator RFS 5: Development on Handhelds, mentioned in the submitted
article:

<http://ycombinator.com/rfs5.html>

~~~
charltones
Some Nokia devices have a TV out facility that lets you see the screen output
on an attached TV. Coupled with a Bluetooth keyboard you have the beginnings
(I know it isn't perfect) of an acceptable input and output arrangement. Then
take a text editor and something like Python for Series 60 and voila - a
mobile development device. I've already got Putty (SSH) running on my phone,
so I can do server side development via that.

~~~
kirse
Yea, my Nokia N95 (built in 2007) has this... it works perfectly for showing
videos, etc. Mobile mfgs. are starting to build 720p HD-ready devices (ala
Samsung Omnia i8910) but there's still tons of bugs and it's all very beta.
Give it 2 years and we'll have phones outputting quality 720p, they're already
recording at that resolution. With the latest tech like Qualcomm's Snapdragon
(1ghz chip) on phones like the HTC HD2, I wouldn't be surprised if you could
get some decent dev-work out of it.

------
augustus
I have now two published apps in the App Store. Both business apps - one in
finance and the other in business.

The biggest change they have made that took me off their platform was their
recent policy to not show updated applications along with new releases.

Let me explain. For the longest time, if you looked under released
applications you could see applications that were recently updated. This was a
great incentive for developers of existing applications to keep updating their
applications and getting it easily noticed by users.

Apple no longer allows updated applications to be displayed in the released
applications list.

There is now no way for users to discover your application except for about
one or two days when it is first released.

~~~
CamperBob
_This was a great incentive for developers of existing applications to keep
updating their applications and getting it easily noticed by users._

It was also a great incentive for developers to game the system and swamp the
reviewers by submitting trivial updates every week to keep their apps at the
top of the list. Tragedy of the commons.

~~~
philwelch
Actually, I think it's a positive thing to the user, since it encourages
incremental development. Anything that incentivizes "release fast and iterate
often" incentivizes good development.

On the other hand, it did tend to swamp the review process.

~~~
augustus
The lesser evil would have been to allow everyone an update at least once a
month.

The current app store policies encourage developers to iterate apps i.e
develop a bunch of apps in a month or two and hope one or two of them shoot to
the top.

Developing compelling desktop level full featured apps over the long run are
discouraged.

------
jsz0
"If software publishing didn't work in 1980, it works even less now"

The App Store is an experiment for Apple. The publishing model has worked
pretty well for Nintendo, Sony, and now Microsoft in the console games market.
It should be pretty clear that's what Apple wants on the iPhone. They may lose
developers to other platforms but from their perspective there's plenty of
others waiting to take their place. I say it's an experiment because Apple can
ditch the closed model at anytime in the future when/if it starts to
negatively impact iPhone sales. If they had started open it would be
impossible to go closed at a later time.

------
andrewljohnson
Yep, we had another rejection yesterday for a "pre-existing condition."

Our latest release of Gaia GPS was just a handful of bug fixes - no feature
changes - and Apple rejected it on the grounds that our map screen didn't warn
the user they were offline.

They also rejected the new version of our Lite app for a totally different
reason - because we used a "private" API - actually just a function restricted
to Mac programming called dateWithString.The non-lite version builds from the
same code, so it's also annoying that they just pick one random thing to
reject you for. They didn't mention the "private" API call for our non-free
app at all.

------
raintrees
I am about to show my ignorance of developing for the iPhone, so please
forgive any incorrect assumptions and mistaken conclusions.

It is my understanding that apps can also be installed directly from third
party websites... If so, is there a way to create an app for the App Store
that is a shell to a website where a conglomerate of listings can be offered?
It seems this would give the value of having everything fairly easy to find
(one extra click) and yet get out from the management of the App Store for all
but the original shell app...

~~~
mechanical_fish
_It is my understanding that apps can also be installed directly from third
party websites..._

This is not true, and that's the essence of the problem.

You can install software that you've written yourself on your own phone. And
there's some sort of deal that lets you give your software to beta testers and
let them install it. A year or so ago some clever fellow tried to use this
beta loophole as a way of selling an app that was banned from the App Store. I
believe they threw the book at him and he had to stop. I haven't heard of that
happening again.

You can distribute apps for jailbroken phones, but that is not really a
solution.

------
chaosmachine
If you want a developer environment that fits in your pocket, look no further
than the TI-83 graphing calculator.

Much of my free time in highschool was spent creating games on it. It's
extremely easy to develop for (it uses a variant of BASIC), and the menu
system is designed to minimize keystrokes, which means you can bang out your
code very quickly.

Of course, the platform is very dated: 6 MHz CPU, and a 96×64 monochrome LCD
screen! I'd love to see something in the same format, built with modern
technology. Maybe the default language could be Python.

~~~
Mongoose
The goal would be to have that kind of developer-friendly functionality in a
_much_ more powerful and usable form. Imagine having a "phone" with a robust
and developer-friendly OS that could wirelessly connect to external displays
and peripherals. You'd have a single, compact brick of computing power in your
pocket at all times. And if the oft-projected future of cloud services comes
to fruition, the device itself wouldn't necessarily have to have ultra high-
end computing power or storage.

 _That's_ a mobile experience that I'd get excited for.

------
nekoniaow
I think Paul properly describes why Apple's current management of the App
Store would ultimately end up deserving them if they didn't address it
seriously rather sooner than later. However, deducing anything about the
reasons which lead them to this situation seems a bit risky.

One doesn't need to look back far in the past to find examples of situations
where Apple, after refusing to acknowledge the existence of a problem for an
extended period of time suddenly came up with a solution that not only fixed
it but also extended the playing ground significantly. The iTunes Store, the
App Store, the iPhone copy and paste mechanism, etc. John Gruber could
probably list quite a few.

Apple, or rather, Jobs' main problem is not one of efficiency but one of
communication. His combined obsession for secrecy and control of the end user
experience his mostly likely what produces this insanely inadapted public
stance in face of the App Store obvious problems.

I seriously can't exclude that Jobs' obsessions won over the best of him and
that he's actually fighting the tide instead of surfing it, but I wouldn't be
surprised if a solution was already being tested inside the walls of the
castle.

If Apple critics and users must learn anything about the company, it's that
its public posture doesn't give away any information about what is actually
brewing inside the company labs. If Apple must learn anything if it doesn't
want to alleviate its most valuable partners (by which I mean developers),
it's that posturing is not an acceptable communication practice and should be
left people like Steve Balmer who have not much else to propose.

------
ErrantX
I disagree with the blanket statement that it doesn't work: for every 10
programmers who cant be bothered to create FOO app because of all the fuss
there will be one who does because he can take some market share.

I agree in spirit the system is screwed - but Apple _do_ have a hell of a lot
of sway. They have the leading product and the huge customer base (and the
cool factor). To a point they can dictate things (and I agree this is bad and
we should stop them)

------
zmarc
Apple will fix these problems. But Apple does things at their own pace. It can
be frustrating, especially to independent developers who are used to operating
at a lightening pace. Remember cut and paste? Apple took "forever" to
implement that, but when they finally did, it's far better than cut and paste
on other platforms.

The same thing will happen with the App Store. Instead of "solving" the
problems the way most companies would: throwing money willy-nilly at the
problem, hiring hundreds of new untrained reviewers, etc., Apple will look at
the core issues and figure out ways to fix it. Keep in mind the App Store is
unprecedented in numerous ways (size, growth, etc.) and is new and not even
Apple anticipated it would be this popular. It will take time, but it has been
getting better and will become great.

(I predict the same kind of slow fix on the App Store itself, in terms of
discovering apps, which I think is a more important problem than a handful of
frustrated developers. Even if that handful is tens of thousands, finding apps
is an issue that effects millions of users _and_ developers, since if users
can't find your app they aren't going to buy it.)

------
antipaganda
I don't think we'll see a "proper" handheld developing environment until AR
specs, Accelerando-style, become linked with virtual-keyboard interfaces in a
big way. (I'm talking the sort of thing that detects the position of your
hands and fingers at all times, so you can type on a keyboard that exists only
in your glasses. Force-feedback gloves might also be important, for that
clicky-keyboard feeling.)

------
netcan
_Genuine question about the RFS:_

Why so specific? If the idea is get iphone-replacements into developers hands,
why not just say that. 'Development on handhelds' sounds like a reasonable
idea, but maybe it's impossible. Maybe it's just one of several possibilities.

'Get developers using something other then an iphone' seems like something
that could at least yield some good ideas. Is there any reason the RFS is so
granular?

------
teeja
Here's how I see the question: When did it suddenly become acceptable for a
computer manufacturer to decide what software the customer can run on that
computer?

I'm sure the money can be good ... but is that really the road anyone wants to
go down? Is it worth having your leg chained to the table?

------
slim
I have an objection on YCRFS 5 : <http://ycombinator.com/rfs5.html>

Mobile devices are physically constrained by their use case. They must be
small to be carry-able. I believe in a future where mobile devices will be
more ubiquitous, and where specific tasks (like development) would be
delegated to "static" machines.

In the future, mobile devices will be more like a _magic wand_ than a
workstation. We would enable functionalities in different "static" devices
with the same mobile device.

Also, you ask : How could you make a device programmers liked better than the
iPhone?

I would suggest : make an open device for less that $100 and you will win. Now
we know that _price is a feature_. No need for a big touch screen.

------
chrischen
I'm sure part of the reason Apple isn't as keen to rapidly iterate its
software is because it wants to keep its image of quality software up.

There are also _some_ benefits to having a closed app store. 1) No viruses 2)
Easy platform to collect payments 3) What else?

------
sheena
Minor note: I think "inoculate" is misspelled.

~~~
pg
Thanks, fixed.

------
Wump
Some food for thought:

 _"In the short term, individual citizens and groups will pay. But in the long
run, you can see they can't win. The very nature of technology is you can't
harness it -- not authoritarian leaders, not anyone," Hom continued. "It's
like riding a tiger, and you can't get off."_

<http://www.foxnews.com/story/0,2933,529090,00.html>

[http://www.techcrunch.com/2009/06/24/censorship-20-china-
blo...](http://www.techcrunch.com/2009/06/24/censorship-20-china-blocks-
google-search-apps-gmail-and-more/)

------
davidw
> Could anyone make a device that you'd carry around in your pocket like a
> phone, and yet would also work as a development machine?

I can answer this one: there are already a few people who are interested in
Hecl for this reason: they want to use it to write code _on the phone_. That
was never my intent with the system, as it seems painful to me, but if there
are already a few using my little language, which is not well publicized,
there must be a bunch more out there. And if people are doing that with
existing phones, I think things will only get better in the future.

------
nearestneighbor
_If there was a version half the size I'd prefer it._

[http://i.gizmodo.com/5185837/a-hackintoshed-dell-
mini-9-auto...](http://i.gizmodo.com/5185837/a-hackintoshed-dell-
mini-9-autographed-by-woz)

------
RevRal
As far as a handheld development machine, the Pandora comes to mind:
<http://en.wikipedia.org/wiki/Pandora_(console)>

Looks pretty powerful, roughly the size of a Nintendo DS. Of course, it won't
replace a laptop... the keyboard size alone.

But if I could sync code between the Pandora and my laptop and compile stuff
on-the-go. The Pandora could function like notepad for writers... but for
programmers.

Its usefulness in developing for windows applications would be very limited,
however.

------
barmstrong
Two points I was surprised weren't mentioned in this article:

1\. Open source - this could be Androids greatest strength against he iPhone
and the key to making developers switch.

2\. The killer app for Android could definitely be free phone calls! VOIP
seamlessly integrated, not as an after thought.

I think Android will give iPhone a serious run for it's money, and put
pressure on Apple to change some of these things. Great topic, Apple needs to
wake up on this one!

------
rbarooah
I found it an interesting read. I especially liked the sentiment, "An
organization that wins by exercising power starts to lose the ability to win
by doing better work.", which I firmly believe.

However I don't see how PG shows that Apple is somehow winning by exercising
power. Can someone clarify this? PG even? I don't hear any explanation of how
their exercise of power is helping them win.

------
kleine2
But is the app store (like Microsoft Windows) a good thing from the
perspective of the users? App store makes it easier to buy software for the
users. Even if it makes life harder for the developers. It also lets
developers get paid for stuff that otherwise might be hard for them to get
money for.

------
st-keller
Paul's new RFS "development 4 handhelds" seems to be quite simple: The only
problem to be solved is: How to design a IDE that doesn't need a keyboard. I
admit that this may be a bit diffcult as long programs are "written". Does
anyone have an idea, how programs can be "sketched" or "told"?

------
nickpp
Laptops displaced desktops?! You are deluded.

We develop on 8GB i7s with dual 24" screens. We have one at home and one at
work, Remote Desktop-ing from each other.

Gigabit ethernet and optical fiber internet. No molasses wifi here.

We work FAST, we work HARD. But we use Windows 7 too, so we're not limited to
Apple's crappy hardware either...

~~~
jseliger
Although I don't think your comment is true, I do have a question for PG: Did
you buy the 27" iMac just to use as a monitor, or for the computer part as
well?

~~~
pg
I bought it as a computer. It's my new, separate machine for using the
Internet, as described here:

<http://www.paulgraham.com/distraction.html>

~~~
Luyt
The moment Apple decides to make a model with a non-glaring screen, I'll buy
one too.

~~~
ivankirigin
I've seen people use "privacy screens" on latops make them matte

------
rythie
I see a lot of apps in the app store that could just be optimized iPhone web
apps. However discovery of iPhone web apps on the iPhone is very poor - Apple
have a site but it's not optimized for the iPhone and there are no ratings.

------
crocowhile
>They treat iPhone apps the way they treat the music they sell through iTunes.
Apple is the channel; they own the user;

Makes sense. I think it is not by chance that OSX is the least customizable OS
around (and that's why my mac runs linux).

------
tome
_How much of the goodwill Apple once had with programmers have they lost over
the App Store? A third? Half?_

pg, can you please clarify this? What exactly does it mean to lose "a third"
or "a half" of goodwill?

------
serhei
Paul Graham criticizes the App Store, which is significant because it's a rare
instance of a person with such major hacker street cred _and_ no vested
interest in the platform putting in their two cents...

... then he gives a really insane Request for Startups:
<http://ycombinator.com/rfs5.html>. I think the current upper limit for input
bandwidth on a 4-inch or so screen means that you would really have to invent
something not seen before. Moreover, given the stubborn habits of the top
hackers, you can't have significant adoption with an 80% solution. And you
really need to go after top hackers who influence others to get significant
adoption by programmers.

(Not to mention that ideally you need RFS5 users to be able to develop for
things that aren't RFS5 or generic Unix. Otherwise you just end up with an
adoption rate similar to Linux. Possibly even lower, if people have to buy
your hardware.)

I'm thinking of the fact that all top hackers have some kind of Holy Revered
Tool on which they are dependent for their workflow. These might be large,
clicky keyboards, vim, Emacs, or TextMate. Even if any given Holy Revered Tool
is used by 5% of important hackers, ALL important hackers have SOME kind of
Holy Revered Tool.

This means that the hypothetical RFS5 device would have to capable of running,
at minimum, vim and Emacs, with trivial compatibility between the new handheld
version and the old desktop versions (because the top hackers have years and
years of muscle memory and customization that they want to make use of without
months of retraining/rewriting).

If I were to spend time thinking about it I would broaden the problem
somewhat:

\- Alternative Goal 1 - invent some kind of user interface that smoothly
scales from handheld devices to small notebooks (not just netbooks, but even
something like a Macbook). The exact same software automagically squeezes into
a handheld, and stretches to fill a notebook. Make sure you can put the OS on
some commonly used notebooks. (Maybe even focus on easily supporting scenarios
like dual-booting a Mac?) You could have a notebook computer running the
software, and a companion handheld device, with really tight integration
between the two, hopefully down to the level of closing your notebook, and
having all of your open apps - the exact same session - in your pocket.

\- Alternative Goal 2 - create a distinct mobile experience, but have really,
really good sync to all desktop operating systems. Not an 80% solution, a 100%
solution. Make it possible to sync anything, really easily. If you use iPhone
you can only easily sync it with Apple stuff. If you use Android you can only
easily sync it with Google stuff. If you use WebOS you have a slightly wider
choice of services, but they're all cloud services and hackers might be
paranoid about that. All of these platforms only sync a limited range of
stuff. If you want to sync something else you have to wait for
Apple/Google/Palm to decide that you're a significant market segment. Not to
mention that (for Apple/Palm particularly) much of the data that is on the
device is locked down. Want to bet how long it's going to take for Apple to
allow their email client to view a Scheme/Haskell/Clojure source file someone
sent you? How about Arc source code? How about if you want to edit a .txt
attachment and forward it to someone else?

Alternative Strategy 2, by the way, might be useful as an intermediate measure
to get more of your hacking stuff onto the device so you can more
realistically evaluate, as a resourceful programmer as opposed to a regular
consumer, what wonderful things you might be able to do with it that appeal to
you in particular, and that Apple's restricted (read: lowest common
denominator, just versatile enough to be widely adopted and no more) user
interface doesn't let you do.

~~~
forensic
You can already run emacs on the iPhone. The issue is just that the keyboard
sucks. But right now I can do all my regular dev tasks on the iPhone by SSHing
in my webserver.

It's just kind of pointless because you get 50X the productivity by bringing
your laptop with you. My 13" MacBook doesn't exactly weigh me down.

------
binarycheese
"Android is an orphan; Google doesn't really care about it"

Couldn't agree more.

The documentation is incomplete, support is horrible and there is no way to
even view my Android 2.0 app without a DROID.

------
mid
I disagree. Apple understands software extremely well. What they don't
understand is 3rd party software. The same mentality that eventually killed
DEC.

------
tumult
Thanks pg, this one was great. I was just ranting about software here in HN
comments the last couple of days, so it feels even more timely.

------
clawrencewenham
There are two logical flaws in this essay, and I think a misperception in the
essay as a whole.

The first logical flaw is to point out how developers love Apple's support for
developing desktop software, and then a few paragraphs later say that they
[Apple] "don't understand software". Obviously they do understand software.

The second is that Apple's control over the app store review process will
create a closed monoculture. So the original iPhone development model of using
web apps has been forgotten already? Mobile Safari is continuing to support
new standards and APIs, enabling new kinds of app to be delivered that way,
and it will continue to be a competitive option for developers in the future.
These apps will work in other phones and do not require an approval process.

The misperception of the essay is that the app store, and specifically its
approval process, is evil. But this doesn't make any sense.

Apple just handed to small, independent developers a way to distribute their
software to tens of millions of customers with a real, working single payment
mechanism that is so easy it affords impulse buying from anywhere at any time.
The cost to enter this program is $99--less than the cost of the phone itself
and an entry barrier so low it's practically nonexistent.

So we now have apps developed by the recently unemployed--while sitting on
their living-room couch no less--making tens of thousands of dollars in a few
weeks.

This is unprecedented and incredible. It's one of the best things that has
ever happened for independent developers since the microcomputer. And then
they made it even better by adding in-app purchasing through the same payment
mechanism. This is huge.

The inconsistency of the app rejections points to the problem of hiring and
training people to interpret the policies, not the policies themselves. They
aren't likely to find people who want to do that kind of work, and I'm
figuring that the turnover is probably as high as it is for call centers. And
given some reports that app store submissions (or at least approvals) reach
2000 per day, I would be amazed if these kinds of problems didn't happen in
even the best run and most benevolent company in the world.

But while everybody is calling Apple evil for these growing pains, Apple is
busy learning how to do App Stores. Statements made by Tim Cook, the
rejection-reversals that come from higher up, policy changes and
clarifications, suggest that Apple does actually care and is (slowly)
improving the process.

Apple has a clear vision of what they want to deliver to the customer, and the
review process is part of how they're trying to make that vision work. I think
they're going to stick with it until they get it right.

I think it's likely that Apple will eventually find a way to solve these
problems. When it does, it will have a competitive advantage that Android and
Palm and even Microsoft won't be able to match for years: an app store that
customers trust and will readily make purchases from without second thought,
and a simple, painless way for independents to get their apps in. This would
pave the way for an Apple TV App Store, a iTablet App Store, a
Book/Magazine/Newspaper store and so-on.

It'll probably take a while to make it as painless as it should be for
developers, because these kinds of problems are _hard_. Harder than
engineering.

This isn't Apple's Mistake, this is an extra $100 or more per share of AAPL in
the next few years.

------
rbanffy
No match for "WOMANWITHHAMMER.COM".

>>> Last update of whois database: Fri, 20 Nov 2009 12:10:22 UTC <<<

Anyone wants to give it a try?

------
Aegean
"It's too complicated for a third party to act as an intermediary between
developer and user"

That's a good summary of the situation.

------
workhorse
Paul Graham should pull a Kevin Smith and put his writings into a book.

I would buy it.

If it already exists, someone link me!

~~~
joshstaiger
Really?

[http://www.amazon.com/Hackers-Painters-Big-Ideas-
Computer/dp...](http://www.amazon.com/Hackers-Painters-Big-Ideas-
Computer/dp/0596006624/)

From 2004, but comprised mostly of essays that are on his site.

~~~
workhorse
Jackpot!

------
radley
Just to add: Apple must break their current marketing / announcement strategy
and take direct action to resolve this issue.

Otherwise we won't see or hear of any solutions until June 2010 @ WWDC. (Apple
is not involved with Macworld this year.)

------
rtrunck
Most of Apple's policies handling the app store make me somewhat believe they
wanted their original plan to succeed, namely, making developers write web
applications and not opening up the iPhone to native development.

~~~
orangecat
Agreed. I think there's at least a 50% chance that the original plan was a
console-like model where the only native apps would be from Apple and hand-
picked partners. The popularity of jailbreaking forced their hand, because if
unlocking became common it would ruin their cozy relationship with the
carriers.

------
ynniv
Apple doesn't need the AppStore, they didn't even want it. Lets stop
complaining and better ourselves instead.

[ <http://news.ycombinator.com/item?id=951384> ]

------
the_real_r2d2
For me it is much simpler, Apple became much greedier that it was. They saw
the opportunity to monopolize the market and they took it without any remorse.

------
known
Apple attitude is

    
    
        Everybody should trust us.
        And we trust nobody.

------
lucifer
Paul, when you wrote this, did you mean by "programmer" anyone who started
programming in the new century? Because Dave Winer -- and here I'm feeling
like you did when you bought the iMac ;) -- wrote extensively on Apple's
treatment of developers in the 90s. This is not news.

~~~
ggruschow
I don't think he was referring to programmers from any period. I'd be
surprised if work for Apple computers ever constituted even 25% of programming
work, and I'd be shocked if Dave Winer's reach was even 1%. I don't mean any
offense by either, it's just it's a really big world.

------
erikb85
If there is somebody out there, making a handheld developing machine, I am one
of Ur first buyers! I was looking for that long before the netbook hype and
even some time before everybody was running around with laptops.

------
c00p3r
btw, Android would win in long run. This process already begins with
Motorola's Droid.

Apple very well monetized iPhone's wow!-factor, but now it is a mainstream
thing.

Let's see what their tablet would be.

------
Alnoor
Paul Graham, what are you smoking buddy?

------
rimantas
Meh. Apple does understand software. A bounch of peope hired to do reviews for
_thousands_ of apps flooding into App Store daily may not.

