

The Church of Market Share - pooriaazimi
http://daringfireball.net/2012/01/the_church_of_market_share

======
Kylekramer
So Gruber's conceit is iOS has "wider and deeper support from developers"
despite less market share, so market share isn't everything to developers. But
I don't really see iOS having wider and deeper support, at least anymore. Any
major company has an Android app to go with their iOS app. I can't think of
any smash iOS hit games that hasn't been ported to Android. Rockstar, who at
one point released GTA: Chinatown Wars for iOS only, just released GTA III
across iOS/Android same day. This is entirely due to market share.

The only place where "wider and deeper support" still holds true are niches
that tickle iOS users' sweet spot. Things like Instagram, Instapaper,
Flipboard, music creation apps, etc. And these also hit Gruber's sweet spot,
so of course he senses the iOS environment is better. But there are also
niches popping up for Android. Stuff like Tasker, Minecraft, AirDroid, etc.

So, yes, I think market share is everything and people can be reduced to
numbers. iOS just happens to have a larger number of design focused people
(like Gruber) who like a certain subset of apps. We've gone from an "iOS only"
to "iOS first, then Android" to now, where I think things are nearing 50/50
when it comes to what platform you release to first, if not at the same time.
And if the numbers tip too much in Android's direction, I wouldn't be
surprised if the fable repeat of Windows vs. Apple happens. Apple for the
designers, Android for the rest of the world.

------
CoffeeDregs
1993 called. They want your MS versus Mac arguments back. [seriously.]

~~~
CoffeeDregs
I was actually afraid that I'd get downvoted for this comment, but I was
perfectly serious. A lot of the arguments I hear about Android, iOS, etc rhyme
with arguments from 20 years ago: I loved using Macs and I used OS/2, and I
didn't listen to the market, preferring instead to argue that the technologies
I used were superior. I certainly was correct, but both technologies nearly
died in the face of Microsoft's "Church of Marketshare". "Strategy by analogy"
is dangerous, but, in this case, I'd put the burden of proof on those who
argue marketshare is not supremely important.

~~~
MaysonL
Of course, at the moment MS is losing the Mac vs. Windows battle: OSX and its
bastard stepchild iOS are grabbing market share, and amazingly enough, market
share in the _enterprise market_.

~~~
chii
i do not believe MS is losing market share to OSX in the enterprise. I _might_
believe that MS is losing some marketshare in consumer computing to OSX
(especially uni students).

~~~
MaysonL
See, for example: <http://www.asymco.com/2012/01/10/enter-prise/>

------
fleitz
I wouldn't code for Android simply because I don't like Java. It's just
shameful that C,C++,and Obj-C will have closures before Java. Java is a ghetto
and I don't want any part of it.

~~~
spacemanaki
I'm a Lisper and am usually firmly in the Java-hater camp, but I downvoted you
because of your last line, and because of your claim that C will have closures
before Java. That's simply too much of a stretch.

Java already has inner classes (and anonymous inner classes) which are much
closer to closures than anything in C. They are syntactically clunky and using
them like first-class functions is only kind of idiomatic so not many
libraries leverage them for their full effect (although see the Google Guava
libraries for examples of interesting usage). But if you squint they are
pretty close to closures. I find the whole closures-in-Java debate very tired
because of this.

Also, writing Java for Android isn't that bad, although I'm not qualified to
compare it to Objective-C for iOS. I would like to become qualified though,
because I love my Mac and I love my iPod Touch. My point being that I'm a bit
biased but not a fanboy.

~~~
fleitz
C already does have closures on the compilers I use.

~~~
spacemanaki
It occurred to me that Apple might have added extensions to C and C++ along
with whatever is in Objective-C, and went off to look it up. So today I
learned something new:

[http://en.wikipedia.org/wiki/Blocks_(C_language_extension)#E...](http://en.wikipedia.org/wiki/Blocks_\(C_language_extension\)#Examples)

But it's almost as ugly as the equivalent Java, and I'm pretty sure the
equivalent existed in Java 1.0^, while this apparently is new as of OS X 10.6
and iOS 4.

I still think it's disingenuous to say that "C will have closures before Java"
when this is a nonstandard extension. If you think it's easier to work with,
that's totally fine. But then we're just arguing over syntactic noise and
frankly I don't like either syntaxes. And I still don't think it's
constructive to talk about a programming language as a ghetto.

^ Nope, I think I was wrong. Nested and inner classes were added in 1.1

~~~
fleitz
I'm not thrilled about the block syntax either, I do prefer it to java. I'd
much rather a C#, F# or ruby style syntax. It's not that you CAN'T accomplish
a bunch of things in Java it's just that it's a pain to do so.

When one looks at java they see a language spec and virtual machine dominated
by a bunch of people who are resistant to any improvement that might break
compatibility with code written in 1994. Those people or their employers also
use various capricious tactics to stall anyone else from improving it. It's
essentially been left to rot while the owners of the language strip mine the
value.

When a situation such as that exists I think the word ghetto is the perfect
way to describe the ecosystem. Java is an ecosystem designed to cater to the
task masters who oversee the pair programmer chain gangs in the cube farms. If
they are happy with that lifestyle then so be it. Who am I to say they can't
live that way. But it doesn't make it not a ghetto.

