Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Operating Systems Cellphones Google Handhelds Linux

Fragmentation vs. Obsolescence In the Android Ecosphere 315

whisper_jeff writes "Engadget has an interesting article up discussing whether or not Android is fragmenting. While the article discusses the concept that it may be more about handsets becoming obsolete at a dramatic pace rather than the OS fragmenting, it also begins by noting that there are currently five different versions of Android on the market, which implies there is a notable degree of fragmentation. Regardless of it being fragmentation or handsets becoming obsolete to new feature sets in a terribly short period of time, I believe this development cycle could turn casual consumers away and hurt Android's chances for long-term mainstream success."
This discussion has been archived. No new comments can be posted.

Fragmentation vs. Obsolescence In the Android Ecosphere

Comments Filter:
  • by Trepidity ( 597 ) <[gro.hsikcah] [ta] [todhsals-muiriled]> on Sunday May 23, 2010 @08:03PM (#32318336)

    There's hardware heterogeneity issues also, though: some phones have multitouch and some don't, for example, and the processor speeds and screen sizes are different. Even for devices with the same sensors, the sensors can behave differently, e.g. what kind of control over the camera you have and what data it feeds you, and what the accelerometer's characteristics are.

    Doesn't matter for a decent number of apps, but matters for, say, mobile games.

  • by Cyblob ( 800812 ) on Sunday May 23, 2010 @08:13PM (#32318408)
    You can specify the hardware and software requirements of your app in the manifest file and it will not show up in the market for devices which do not meet the requirements.

    You can be incredibly specific. If you app requires an auto-focus camera then you can specify that and it will only show up for phones which have one.
  • by causality ( 777677 ) on Sunday May 23, 2010 @08:20PM (#32318454)

    The flash runtime has experienced the same problems as it was a developing platform. Flash 8,9 and 10 are all still in use today and have different feature sets and programming models.

    With Flash I doubt that the features added between Version 8 and Version 10 were natural progressions and refinements of the concepts and principles on which that system is based. Instead, I see them as "we gotta give our customers a reason to buy the latest version so let's add more bloat!"

    We as geeks bemoan long development cycles and slow progress.

    It depends on how sound and useful the initial design was. The POSIX standard has a slow development cycle. So does the X Windowing Protocol. I haven't seen many fundamental innovations for the TCP protocol lately either. I have seen bugfixes and things of that nature, but not much bloat and feature creep. For those things, the design closely matched the intended purpose and philosophy and there was little or no marketing pressure to always have something new to sell. I think it's precisely because those things are the concern of geeks and are the "under the hood" type of thing that average end-users wouldn't directly work with. Things like Flash animations and iPhones are much more visible and immediately practical for average users and there we see marketing pressures and faster developments.

    Adobe has realized this and their rate of development has slowed as they have stabilized on where they want the platform to go.

    I think what Adobe has realized is that the proposed video functions of HTML5 could be a direct threat to their little proprietary standard fiefdom and that vendors like Apple have some good (business) reasons not to use their products. I think that would get them to concentrate on something more substantial than more bells and whistles and put pressure on them to produce a good, solid runtime. The only thing I wonder is whether they are prepared to address the absolute joke that Flash has been when it comes to security. It's easily up there with Sendmail and BIND so far as track records are concerned.

    Give android a year or so, and once Google realizes where it wants android to go, the iterations should slow down dramatically, and fragmentation will be a thing of the past.

    I hope so. The closed nature of Apple's products is my biggest single problem with them. Most users don't care so there is little reason for Apple to see this as a problem. Therefore, what it would take to change that would be another company (like Google) who can give them serious competition without such tactics.

    I realize the analog is slightly different as android is an OS and not a runtime, but the fact remains that progress requires this.

    Conscious or subconscious, that looks to me like what you realize is that some Slashdotters love to attack you based on things you never actually claimed. Had you omitted that line, I could see them now, the follow-up posts saying "huh huh, an OS is not a runtime, therefore you don't know what you're talking about and you're wrong and I'm right so hah!" The way I explain it is that if I didn't explicitly outright claim something, it's for a reason and is not the product of random chance.

    My approach to those would-be killjoys for whom feeling superior to somebody is more important than reading comprehension is different. I refuse to add little disclaimers like that because for more nuanced posts, those would be longer than the point I am making. I also refuse to do it because I won't cater to maladaptive behavior that disguises itself as useful critique. Instead, I let them try that on me and then show them why it was useless.

  • somewhat misleading (Score:4, Informative)

    by Tumbleweed ( 3706 ) on Sunday May 23, 2010 @08:27PM (#32318508)

    Of the '5' versions, only 3 have anything resembling significant usage in the wild (1.5, 1.6 and 2.1). Multiple phones have had 2.1 upgrades released for them since the statistics were gathered, thus throwing even those statistics out of whack. Once all the handsets that are capable of running 2.2 are upgraded, I think that will be a pretty stable platform for quite some time - most everything that people have been clamoring for in Android is either in or supported by, that version (Flash, App2SD, bluetooth voice calling, JIT, etc). Many of the handsets that are older and 1.5/1.6-based might not perform all that well with these new features (if at all) due to constrained physical resources (slower CPU, less RAM, etc).

    Coming out with new hardware now with anything less than 2.1 should be a crime, though. I'm glad they've said the EVO 4G will have a 2.2 upgrade in July. *whew*

  • by ducomputergeek ( 595742 ) on Sunday May 23, 2010 @10:07PM (#32319168)

    And then one person with Android A can download it and tells their friend with Android B about it. Android B user goes to the market place and can't find or download that app and gets pissed off. It happens more than you'd think with a friend of mine. He has an HTC, his wife a motorola with the keyboard so she can send 500 texts a day. They've come across several apps that will work on his phone, but she can't even find it in the market place.

    As a developer, we're charging 4 - 5x's the price for an android app vs. an iPhone App. Reason being that Android is more expensive to develop for due to the number of phones on the market all with different OS & hardware specs. Since august of last year, we've spent over $6k now on Android and sets. To give you an idea, we spent $2500 from 2008 - present for iPhones and iPod touches.

  • by jo42 ( 227475 ) on Sunday May 23, 2010 @10:21PM (#32319248) Homepage

    With an iPod Touch you have to buy the OS upgrades, which I haven't bothered to do.

    Not if you know where to download the appropriate ipsw file (from Apple's own CDN servers no less!). Google is your friend here.

  • Re:Words of Wisdom (Score:5, Informative)

    by grcumb ( 781340 ) on Sunday May 23, 2010 @11:08PM (#32319506) Homepage Journal

    Someone want to explain to me what makes this "Interesting?" Or for that matter, what makes it at all relevant...

    Because the people providing the operating systems for mobile devices are discovering, to nobody's surprise but their own (and apparently yours), that being able to manage and maintain a software base over a diverse number of architectures and platforms is a non-trivial task.

    In my professional experience, the inventors of apt-get were the first to create an adequate means of maintaining a largely stable system, managing compatibility and dependency issues over tens of thousands of applications, utilities and drivers.

    The implication of my statement, therefore, is that Google should be giving more thought to package management issues as a means of reducing their own software maintenance overheads.

    Unfortunately, that's not likely to happen in any useful way, because all the phone suppliers only dream of being Apple, so they're intent only on controlling every means of access to the apps and other software that runs on their phone.

    Therefore, these vendors - who fail to understand why apt-get is important - are condemned to creating their own proprietary update services and interfaces, and because they are neither unified nor open, it's quite likely that each of them will get it wrong in unique and entertaining ways.

    That one little sentence took a bit of unpacking, but there you go.

    HTH, HAND.

  • by Namarrgon ( 105036 ) on Sunday May 23, 2010 @11:14PM (#32319538) Homepage

    Silly question I know, but reading your post just makes its title look all the more ironic.

    Hardware and legacy-OS "fragmentation" exists today in the iPhone ecosystem - nearly half [ilounge.com] of iPod Touches are running older systems, and there are already iPhone owners who will never be able to upgrade to OS 4 (even the beta). It's obviously greater in Android due to the larger choice of hardware and more rapid OS releases. Some may prefer a slower-moving target, but the monolithic, our-way-or-the-highway approach that's required to achieve this has too many well-documented [brightsideofnews.com] disadvantages [neowin.net] to be suitable for everyone.

    [Backwards compatibility] sounds like an unlikely situation in the android world

    That's just plain uninformed. No APIs have been revoked or broken; the only 1.0 apps that don't work today are the ones that did naughty, undocumented things - like any other platform. In fact, Android's VM model, excellent API version management and Marketplace manifest model make it easy to allow apps to run on any version of Android they can manage, or to target the app at whatever specific set of hardware features are required, making forward compatibility far less of an issue that for e.g. Linux or Windows (can't speak for iPhone OS personally). And Rubin points this out.

  • by bnenning ( 58349 ) on Monday May 24, 2010 @12:32AM (#32319954)

    The default for an Android developer should be the N1. The "weird screen" isn't a factor in practice, there still aren't any other phones with significantly better specs, and it's virtually guaranteed to get timely updates for the next few years because there are no incompetent and/or malicious middlemen.

  • A world outside US (Score:2, Informative)

    by codecracker007 ( 789100 ) on Monday May 24, 2010 @12:52AM (#32320058)
    App developer should realize that there is a world outside the US [and Europe], where:
    1. Phones are sold unlocked more as a rule than an exception.
    2. Enthusiasts change phones frequently
    3. There is a big market for cheaper and second hand/older gen. 'smart' phones.
    Android fits in well for these market. This is also the exact reason for the abysmal sale of iPhone 3G/3GS in India and China.
  • by BOFslime ( 178524 ) on Monday May 24, 2010 @01:01AM (#32320108) Homepage
    I agree, in fact there was a blog article [blogspot.com] written by an android game developer that kinda mock'ed this notion of fragmentation.

    Quote from the blog: "I'm lucky enough to have occasional access to lots of different Android devices via my work. The whole point of the Android approach to apps is that you can write an app on one device (or even an emulator) and deploy it across everything. In my case, that's been pretty true."
  • by mjwx ( 966435 ) on Monday May 24, 2010 @01:13AM (#32320174)

    "Mostly FUD", "the vast majority", "most API's"... In other words, there is truth to the claims of problems caused by fragmentation.

    In other words, I have experience with Android including very simple android development and do not believe the scaremongering caused by this so-called fragmentation.

    Which, like your statements quoted above, neatly dodges the issue

    Which, unlike your quotation, is not removed from it's context. How, did you somehow read that I didn't say "fragmentation" isn't a big issue? When the vast majority of developers will never encounter it, fragmentation is not a big issue.

    Android's application framework is based on the Dalvik virtual machine, if your are unfamiliar with how virtual machines work they serve as an intermediary between the hardware (or the HAL) and the application, the virtual machine is written for the hardware, the application only needs to be written for the virtual machine providing an identical framework for applications across divergent hardware platforms and versions. Finally, yes, Dalvik does this quite well.

    So take you scaremongering and out of context quotations elsewhere good sir until you actually learn about the "problems" you are spreading FUD about.

  • by jythie ( 914043 ) on Monday May 24, 2010 @03:17AM (#32320638)
    No cross environment or VM can replace actual testing on actual target hardware. No matter how closely manufacturers claim to follow the specs, quirks always manage to work their way in, and sometimes these quirks cause things to run differently. A serious development house will want to validate their code on all major versions of the hardware, esp if those versions come from different manufacturers.
  • by Hal_Porter ( 817932 ) on Monday May 24, 2010 @04:53AM (#32321082)

    Of course not. But it's not uncommon to find bugs that only appear on certain configurations. Most people test on Win7 64 and 32 bit, Vista 64 and 32 bit and XP to have a good chance of finding bugs before shipping.

  • by iapetus ( 24050 ) on Monday May 24, 2010 @05:56AM (#32321264) Homepage

    So you're a commercial Android developer, then?

    Didn't think so.

    There are all manner of bugs that can show up in an application that are dependent on the exact configuration of the Android device you're working on. Test an app on the stock Android emulator and it just works across the board, right? Wrong. An obscure quirk of the way the input method works for the custom keyboard on Samsung devices makes it crash in an embarassing way. The UI's thrown out of kilter by a different size status bar. All sorts of things can happen that you won't track down unless you test on those devices.

    Sure, if you're just throwing out simple apps on the marketplace that's not too bad, but if you're delivering something that has very specific requirements to run across a certain range of device, you've got to test on those devices. It's the same old story that it's *always* been with Java - Write Once, Test Everywhere.

  • by Builder ( 103701 ) on Monday May 24, 2010 @06:36AM (#32321424)

    That's completely different. On a computer, it's acceptable to have an application running in windowed mode and not taking up the whole of the screen. That is incredibly uncommon on a mobile platform - all apps are expected to use the whole of the screen. This very simple fact alone alters development considerably.

  • by arth1 ( 260657 ) on Monday May 24, 2010 @07:57AM (#32321742) Homepage Journal

    More testing than that is usually required.

    Say you want to release it in three language markets. A more complete test might want:
    Windows 7 x86, English
    Windows 7 x86, Japanese
    Windows 7 x86, Russian
    Windows 7 x86_64, English
    Windows 7 x86_64, Japanese
    Windows 7 x86_64, Russian
    Vista x86, English
    Vista 7 x86, Japanese
    Vista 7 x86, Russian
    Vista x86_64, English
    Vista 7 x86_64, Japanese
    Vista 7 x86_64, Russian
    XP x86 single-CPU, English
    XP x86 single-CPU, Japanese
    XP x86 single-CPU, Russian
    XP x86_64 single-CPU, English
    XP x86_64 single-CPU, Japanese
    XP x86_64 single-CPU, Russian
    XP x86 MPC, English
    XP x86 MPC, Japanese
    XP x86 MPC, Russian
    XP x86_64 MPC, English
    XP x86_64 MPC, Japanese
    XP x86_64 MPC, Russian

    Needless to say, few companies test all the possible combinations.

    Oh, and probably both home and business versions too. And a couple of server versions.

    And, if using graphics, with the most common graphics card variations -- at the very least the last 2-3 generations from nVidia, ATI and Intel. Repeat for sound if applicable. Then you repeat the tests with and without Administrator rights, and with and without UAC enabled.
    If you really want to be nice, you also test with accessibility features, different DPI settings, and a tablet PC too.

    Yes, there's fragmentation in Android. No, it's not even CLOSE to the fragmentation in the Windows world. Sure, it can be frustrating to port a cell phone app to run on a nook, but at least you know what the nook is going to be like -- it's not like a user has changed the DPI settings, runs a Danish business version of the OS, has replaced the sound card, and uses a 5 TB RAID instead of a micro-SD card.

"Everything should be made as simple as possible, but not simpler." -- Albert Einstein

Working...