
OK, MG, I Take It Back - playhard
http://techcrunch.com/2012/01/14/ok-mg-i-take-it-back/
======
cageface
The thing I've found most refreshing about iOS dev is that I can finally get
close to the hardware and really push it because I can make a lot of
assumptions about my target devices. After 10 years of web development this
feels like real programming again.

I've only dabbled with Android but the diversity of devices and versions seems
to require the same lowest common denominator techniques I burned out on as a
web programmer.

------
Samuel_Michon
_"Thus far Google’s attempts [to coerce Android carriers and manufacturers to
prioritize OS upgrades] have been an ignominious failure. Well, “fail fast”
has always been their motto, but I sure hope they get it right the next time.
Me, every other Android app developer … and every other Android user. The
latter group isn’t missing out on anything huge, yet; iOS isn’t that far
ahead."_

I'm not so sure, I think it'd be hard to argue that iOS 5 isn't far ahead of
Cupcake (Android v1.5).

The iPhone 3GS was released 31 months a go. It can run the latest version of
iOS and many iPhone 3GSes already do. In fact, 66% of all iPhones have the
latest version of iOS installed [1].

Are there any Android phones from that time that have the latest version, Ice
Cream Sandwich (v4.0), installed? How many even have Gingerbread (v2.3), which
was released more than a year a go? In June of 2009, the most recent version
of Android was Cupcake (v1.5); I'd wager that many Android phones have never
been updated since.

[1] [http://www.readwriteweb.com/mobile/2012/01/more-
than-66-of-u...](http://www.readwriteweb.com/mobile/2012/01/more-than-66-of-
users-have-upg.php)

------
slewis
Is it valid to compare the "fragmented Android OS means writing code for old
versions problem" to the browser fragmentation issues we've been dealing with
on the web for so long? I can't really answer this as I haven't written any
Android code.

If that is a valid comparison then perhaps building a library to abstract away
the OS differences (like e.g. jQuery) is a big opportunity for someone. On the
other hand maybe there are some features that are impossible to emulate on
older platforms, or there are orthogonal features that can't be abstracted
away.

~~~
shareme
I wish MG would get educated on what he is talking about..

MAcOSx application developers also face fragmentation so do BB app developers
WM developers, etc.

~~~
Samuel_Michon
I don't think anyone is arguing there are mobile OSes that have zero
fragmentation, unless there has only been one release. It's about the degree
of fragmentation.

Makers of iOS apps can safely develop for iOS 4.2, since more than 97% of iOS
devices have at least that version installed [1]. IOS 4.2 is little over a
year old. Can a full time Android app maker afford to solely develop for
Android 2.3 (which is also a year old)?

[1] [http://www.marco.org/2011/11/30/more-ios-device-and-os-
versi...](http://www.marco.org/2011/11/30/more-ios-device-and-os-version-
stats-from-instapaper)

~~~
mmastrac
If you were developing an app today, you'd probably want to target 2.2 as a
baseline profile. That covers 90+% of the devices out there, and it excludes
some of the first and second generation devices that are going to be the real
pain to develop for. In six months to a year, 2.1 will be off the radar for
developers:

[http://developer.android.com/resources/dashboard/platform-
ve...](http://developer.android.com/resources/dashboard/platform-
versions.html)

~~~
Samuel_Michon
So your answer to my question is 'no'.

Android 2.1 came out on January 12, 2010 (2 years). Android 2.2 came out on
May 20, 2010 (20 months).

------
mihaela
The OS version is one thing, but screen size is a real PITA. As well as
orientation and the presence of a real keyboard ( or not). iOS is uniform in
that space (just iPhone/iPod and iPad). To me that is the real issue, not the
OS version.

~~~
estel
Are you speaking as a developer? Personally, I agree with the OP that
android's tools for dealing with this are really pretty decent and flexible.
It's definitely something that I bear in mind when designing an app, but the
range of screen sizes has never really made development more difficult.

------
bookwormAT
If you want to make an app for both iOS and Windows Phone, you need to write
two different applications, which are not compatible with another. Both iOS 5
and Windows Phone 7 have completely different APIs. If you add a new feature
to one of the applications, it is not available on the other system. For every
new operating system, you need to split your work. And your customers get an
inconsistent and incompatible experience of your app across the different
versions.

This is fragmentation.

From the ~100 different mobile operating systems that are in use today, maybe
95 can be targeted by a single code base, because they are all compatible with
a common platform: Android 2.1 Eclair.

You still have to consider the many different hardware configurations. But
most of the work of porting your application from one system to another is
gone.

iOS and Windows Phone are complete end user operating systems, which are both
made for a very specific hardware configuration and user experience. Android
is a cross platform foundation that you can use to build those kinds of
operating systems on.

Is there a common application platform for both iOS and Windows Phone, and how
often is it updated?

The answer is: Yes, the web is such a platform. And it usually takes many
years until an update is universally installed on all systems.

