Forgot your password?
typodupeerror
Google Cellphones GUI Handhelds Operating Systems Technology

Devs Grapple With 100+ Versions of Android 386

Posted by CmdrTaco
from the propagation-of-the-androids dept.
Barence writes "The scale of the challenge facing Android developers has been laid bare by Twitter client TweetDeck. During beta testing of its new software, TweetDeck encountered more than 36,000 testers using an enormous pool of 244 different handsets. Not only was hardware for the platform fragmented, but Tweetdeck had to contend with more than a hundred different versions of Android, highlighting just how muddled the market is for the open-source platform. The splintering of Android is making life difficult for app developers. 'It's not particularly harder to develop for Android over iPhone (from a programming standpoint),' said Christopher Pabon, a developer who writes apps for both the iPhone and Android platforms. 'Except when it comes to final quality assurance and testing. Then it can be a nightmare (a manageable nightmare, mind you).'"
This discussion has been archived. No new comments can be posted.

Devs Grapple With 100+ Versions of Android

Comments Filter:
  • by NoZart (961808) on Thursday October 14, 2010 @11:37AM (#33895084)

    I understand that platforms like consoles and the iCool stuff benefit from the unified platform, but why is this SUCH a big issue? Computers were always fragmented and no two machines were the same in my vicinity, yet still there was working software everywhere - sometimes even crossing OS-borders (playing q3 between different windows and linux versions was never a problem).

    I am not a coder, so could someone explain to me why all of a sudden diversity is such a problem?

  • Android Dev (Score:5, Interesting)

    by tobes (302057) <<tobypadilla> <at> <gmail.com>> on Thursday October 14, 2010 @11:53AM (#33895356) Homepage
    As I say in the original post (http://blog.tweetdeck.com/android-ecosystem [tweetdeck.com]), it's great that our app can run on so many different devices. It has been a bit more work supporting all the custom ROMs and hardware specs, but there are more difficult platforms to develop for.

    One REALLY nice thing about developing for Android was that we could have a beta period that involved 36k users. Being able to distribute the APK outside the Market was a real blessing. It's much harder to test iPhone software before submitting it to Apple.
  • Re:So? (Score:3, Interesting)

    by pr0nbot (313417) on Thursday October 14, 2010 @12:06PM (#33895574)

    App developers just need to think about the spec they want vs the number of handsets of that spec in the market.

    This translates to: "in the fragmented Android market, you need to choose your fragment".

    Or (if disparaging Engadget despite fundamentally agreeing with them makes you squeamish) perhaps this translation: "There is no such thing as the Android market, there is the Droid market, the Galaxy S market, the Desire market, etc."

    How easy is it to get information about all the shards of the Android market and so make a decision about what to target? All the pie charts I've seen have wedges that just say "Android" or at best "Android 1.6, 2.0" etc.

  • Re:So? (Score:5, Interesting)

    by jmichaelg (148257) on Thursday October 14, 2010 @12:11PM (#33895638) Journal

    You're missing a key point.

    Back in the early days of DOS, the OS was relatively stable but the hardware on which it ran was all over the map. We wanted to port Crystal Quest from the Mac to the PC but punted when we saw that we had no way of knowing how many PCs there were that had both a mouse, sound hardware and a video card that could handle bitmap video. All of those features were standard on a Mac but were customizations on a PC. It wasn't until Windows 95 came out that Microsoft started dictating minimum hardware specs that all machines had to have and Microsoft wouldn't let the manufacturer say the PC could run Windows 95 until Microsoft had QA'd the box.

    Android is still in the DOS days. Once Google gets around to learning the same lesson Microsoft learned (albeit slowly) and develops a QA test suite that they administer, the problem will only get worse.

  • by Anonymous Coward on Thursday October 14, 2010 @12:15PM (#33895702)

    As a consumer of apps, why the fuck should you care what language the platform uses?

    Anonymous troll posting 2girls1cup videos.

  • by gklinger (571901) on Thursday October 14, 2010 @12:21PM (#33895830)
    In regards to the unending Android vs. iPhone debate, this story made me think of Eric S. Raymond's The Cathedral and the Bazaar [catb.org]. As a long time user and proponent of open systems I surprised myself when I realized that I while I'd rather my computers be bazaar, I prefer my phone to be a little more cathedral. I wonder how many others are comfortably embracing this dichotomy?
  • Re:So? (Score:3, Interesting)

    by molnarcs (675885) <molnarcs@gmai l . c om> on Thursday October 14, 2010 @12:22PM (#33895846) Homepage Journal
    To be successful on the Market, you need a) good ideas b) programming skills to implement them. There are lots of hugely popular applications on the Android Market that I haven't seen problems reported by users on any handset. Basically, this is the same as with other platforms - Windows, Linux, etc. Linux is a good example.

    We have thousands of applications and libraries on Linux. They not only work across different versions of the OS, most of them work across different versions AND different architectures. Now if a programmer releases an app that works only on Ubuntu 9.04 and breaks on every other platform - that's shitty programming, plain and simple. At that point, the programmer can either improve his/her skills, give up on the Linux platform in general, or whine on a blog and get linked on Slashdot (seriously, WTF were the editors thinking?). Android is exactly the same. Except that if the programmer with the broken linux app would whine about fragmentation on his blog, most would ignore him, others would probably flame him to death.

    Of course, now we have lots of developers coming from the closed iOS ecosystem, because Android is hot. They were used to developing for a single hardware + OS spec. Most of them get the job done. Some give up. Some throw a tantrum over fragmentation. I have obviously no problem with the first group. I don't have a problem with the second group either. The whiners piss me off, however. It's completely, utterly useless and stupid. Android won't change, and other developers already proved that programming for the platform should not be a problem - provided you have the necessary skills. So shut up and improve your skills or go away, just please don't whine. The Market is booming, if a few dozen programmers leave, that won't affect Android much. There are thousands of developers with the will and the talent to target Android.

  • by Anonymous Coward on Thursday October 14, 2010 @12:33PM (#33896052)

    It's google's fault for not forcing handset makers to adhere to a set of guidelines or they cant call it android, droid, etc...

    Google should have forced : handsets can be upgraded to the latest android version. Add on apps CAN NOT be required and must be able to be removed by the user. standard Android apps MUST NOT BE REMOVED.

    google dropped the ball and now you have handset and tablet makers doing half assed jobs of it. they are utterly ruining the platform.

  • by jank1887 (815982) on Thursday October 14, 2010 @12:41PM (#33896240)

    actually, you shouldn't put windows and open source OSes on the same side of the equation.

    controlled platform = OSX

    varied hardware platform, consistent software interface = Windows

    varied hardware platform, varied software interfaces = OSSOS's.

    the common interface is the key to successful third party developer participation.

  • by JSBiff (87824) on Thursday October 14, 2010 @12:41PM (#33896248) Journal

    Google hasn't exactly done the best job of trying to coordinate things. Google can Open Source the platform, but do like Sun did with Java - anyone can implement Java, but you can't *call* it "Java", unless you passed a conformance test that Sun had. Google should have tried something similar to Android - make it so people can't market their phone as running "Android", unless they conformed to a certain definition of what Android is.

    It's too late for that now, of course, but for future releases of the OS, they could do something similar - e.g "Android 3.0". I know these different phone manufacturer's think they MUST modify the OS so they can have "Product Diferentiation", but that's going to bite them all in the ass when some apps will only work on some Android phones and not others. If that starts to become too much of a problem, it might frustrate users and lead to the platform being abandoned by a lot of customers.

  • The problem is real! (Score:3, Interesting)

    by King_TJ (85913) on Thursday October 14, 2010 @01:11PM (#33896858) Journal

    Sure, there are "thousands of Android apps working without problems" -- but that doesn't mean it was easy for everyone to get them there.

    Just last week, I did updates to the apps I use on my Android phone, and I think it found 4. Of those, 2 had "reviews" of 1 star, warning people not to download them because they caused massive crashes and issues. (I believe one was the "Trivial Droid" app, which supposedly was crashing so bad for some people on the latest update, they had to pull their batteries out of their phones to get them to reset.)

    I forget the other that had issues, but the author commented about how the update was yet another bug-fix to address incompatibility problems, and expressed his frustration that it was such a challenge to develop for the platform.

    Honestly, I'd say the Windows analogy helps argue the opposite of the point you're trying to make with it, too! How many hassles did people have getting older apps written for Windows '95/'98/ME working properly under newer versions of Windows? How many things that worked in XP had no support at all under Vista or 7? How often did Windows suffer from crashes due to incompatibility issues related to some specific hardware component that was never tested against?

    Apple's iPhone is always going to be the easier product to quality test against, because nobody but Apple is making the phones -- so you have a complete, exhaustive list of the possible configurations readily at hand, and it numbers FAR less than all the variations of devices running Android OS.

    Throwing all the blame at "shitty programmers" is a cop-out. There will always be some developers with less skill than others ... but that should be equally true across all platforms possible to program for. Although it's been a LONG time since I did any coding and I don't claim to know all the details of coding for today's "smartphones"? It's not difficult to see that there are a lot of software issues arising that seem to stem from unexpected differences in hardware between different handsets with Android. (For example, the Google Goggles app immediately crashes and exits on my Kyocera/Sanyo Zio as soon as it tries to activate the camera. Isn't that app developed by people at Google? Are you saying THEY are "shitty programmers" for letting something like this happen? Sounds to me like they're simply not anticipating something about the way the camera communicates with this particular phone.)

  • Re:So? (Score:3, Interesting)

    by Tharsman (1364603) on Thursday October 14, 2010 @02:32PM (#33898204)

    Then 1.5 doesn't count since it's share is less than that of Vista (sitting at 13%)

    It's not about share. Anyone that is running Vista can upgrade to Windows 7, as it's actually lighter than Vista. There are still Android devices out there with no way to upgrade because their providers don't offer a supported upgrade path.

    Even then, though, as the article noted, there seem to be over 100 different versions of the OS. Every carrier makes their own version of each release, on top of the versions people install on their own into Windows Mobile phones. All with differences that make them slightly incompatible.

    On top, I have heard (third hand comments I can't assure validity off) I understand Android versions are not very backwards compatible. With the iPhone or Windows, most of the time you make an iOS 3 or WinXP application and chances are it will work with little testing in iOS4 and Win7 respectively. I heard off (third party yada yada) many developers forced to make heavy code change for their apps to run in the latest versions without breaking compatibility with older versions, that's without getting into different device flavors.

  • by Anonymous Coward on Thursday October 14, 2010 @03:11PM (#33898794)
    And the Microsoft astroturfer mod team as well!!!
  • An insider's comment (Score:1, Interesting)

    by Anonymous Coward on Thursday October 14, 2010 @03:48PM (#33899408)

    I work for one of the big mobile phone manufacturers, and my job involves making sure that android runs fine on our hardware and that the inner frameworks of Android doesn't crash or behaves badly.
    One of the problems is this; Android is, in many places, implemented like complete moronic shit, pure horror duct tape cope & paste spaghetti coding that defies every KISS and OAOO rule there is.
    So Android has bugs, *loads* of them. There is a special stability/endurance test that many phone manufacturers runs to check their stability against competitors, rumor are that Google's nexus one
    (Pure vanilla/open source android) lasts for 10 minutes or so, while a typical phone from some major brand lasts up to 500 hours.

    The truth is - if you buy an Android phone from some major brand, the software is patched up like hell to be stable enough to meet the brands standards, and since all manufacturers may do
    different fixes, it can lead to inconsistencies in the framework behavior between brands, which will be fragmentation and a pain in the ass for 3rd party developers.

    Blame Google here - what Google should do to end the fragmentation of Android is to simply fix the bugs in their shitty code.

  • Re:So? (Score:3, Interesting)

    by node 3 (115640) on Thursday October 14, 2010 @08:14PM (#33902846)

    No. Mac developers tend to develop for the latest OS X version only

    Nonsense. But considering the source, ignorance is to be expected. I know of no software that doesn't run on Leopard (10.5) as well as Snow Leopard (10.6). I'm sure there must be some examples, but they aren't even remotely common, let alone the norm.

    which is why owning a slightly old Mac is such a frustrating experience

    Snow Leopard runs on every Intel Mac, which is to say every new Mac since around 2006. Leopard runs on PPC Macs even older still. Every so often there is a piece of software that is Intel-only, although that's not terribly common.

COBOL is for morons. -- E.W. Dijkstra

Working...