Slashdot Mirror


Why Android Is the New Windows

An anonymous reader writes "Windows' dominance of the PC market has been good in many ways: reduced hardware costs, increased IT literacy and a standard development platform to name a few. Perhaps Android will bring similar benefits. But unless Google are very careful, it is likely to bring some of the same problems, too."

33 of 424 comments (clear)

  1. mobile platform by devxo · · Score: 4, Insightful

    The biggest problem with Android is that from a developers point of view, it's a horrible platform. It's not just Android - this goes way back to early Symbian versions, Windows Mobile and other early mobile OS versions.

    Basically, you have tons of different devices you need to support, all with different hardware, resolution and features. They might or might not have changes made by the phone manufacturer and/or telcos. They might have physical keyboards or only touchscreen. Maybe multitouch on some. Camera on the back, maybe front too, or not at all? Different API's supported by different versions of Android.. It's a nightmare.

    This may now a days work okay for computers because they have a lot more power and space and you don't need to worry about batteries so much. But as for mobile developers, that's not true yet and it means you have to create and test your applications and games for every device and most likely make some changes and bugfixes to some of them. Take for example the popular Angry Birds game - the developers have outright said they just cannot support all the different Android devices.

    As much as I dislike Apple, iPhones are a solid platform. They have a few different versions of the OS (there needs to be progress, right?), but that's it. Much better for developers and for users. While Windows Phone 7 has definitely taken a better approach than before, they also haven't considered this issue.

    1. Re:mobile platform by Microlith · · Score: 5, Insightful

      Basically, you have tons of different devices you need to support, all with different hardware, resolution and features. [...] It's a nightmare.

      Sort of like developing for the PC, right? I know, we should all move to vendor-locked consoles.

      As much as I dislike Apple, iPhones are a solid platform. They have a few different versions of the OS (there needs to be progress, right?), but that's it. Much better for developers and for users.

      Well, when you've got such a tight-fisted control freak attitude it's not hard to ram everyone into a few boxes.

      While Windows Phone 7 has definitely taken a better approach than before, they also haven't considered this issue.

      Microsoft basically dictated every bit of hardware used at the level of the OS. There are some minor differentiating features, but they're all basically the exact same hardware with different attachments (displays, speakers,) plastic cases and vendor logos.

    2. Re:mobile platform by gstoddart · · Score: 4, Insightful

      Because some bozo starts whining about fragmentation whenever Android is mentioned?

      But, it seems to be a valid criticism.

      I'm sure I've seen people saying they can't get the latest update because their carrier won't do it, or when they do get an update it breaks things and introduces even further lock down -- completely against the aims of the Android.

      From what I've seen, fragmentation within Android is becoming a big deal as companies muck with it. Just how many flavors of the Android OS are there, and how much have the carriers/manufacturers been altering it to make themselves more money?

      --
      Lost at C:>. Found at C.
    3. Re:mobile platform by Anonymous Coward · · Score: 3, Informative

      "The biggest problem with Android is that from a developers point of view, it's a horrible platform."

      Which developer? I'm guessing you're not one?

      Android is probably the easiest mobile platform to develop for bar perhaps Windows Mobile.

      "Basically, you have tons of different devices you need to support, all with different hardware, resolution and features. They might or might not have changes made by the phone manufacturer and/or telcos. They might have physical keyboards or only touchscreen. Maybe multitouch on some."

      I assumed from the your first comment that you were referring to yourself as a developer, but as you apparently don't even understand that one of the basic principles of writing software is to decide what you're writing and roughly how it will work before you write it then it's no wonder the thought of having options as to how you do different things confuses you. Do you need a camera on the front and back for your app? If so then there you go, it's decided, your app only has to be developed for that, if you only need one camera then what's the problem? It's not hard to use it in your app.

      "But as for mobile developers, that's not true yet and it means you have to create and test your applications and games for every device and most likely make some changes and bugfixes to some of them."

      Or unless you're developing with the NDK, which for 99% of apps you wont need to, then you can just use AVDs. You do know what AVDs are right, I mean, you made your post with a well informed background about Android development and aren't just making it up as you go are you?

      "Take for example the popular Angry Birds game - the developers have outright said they just cannot support all the different Android devices."

      Yeah, and Crysis wont run on my 486, and apps requiring features that weren't implemented until later iterations of the iPhone can't run apps built specifically for features in the latest version. Luckily though MagicDevices (tm) are now widely available that can automatically adapt to run anything anyone has and will ever think of, so we don't have to worry about this if we buy MagicDevices instead of Android handsets right?

      "As much as I dislike Apple, iPhones are a solid platform."

      Yes, and here we have the point you were really trying to get to don't we? You're just a trolling Apple fanboy. Why not just cut the misinformed bollocks in future and cut straight to the point that you love your iPhone and want to put it up your bum and have someone phone you to make it vibrate whilst masturbating to pictures of Steve Jobs?

      "They have a few different versions of the OS (there needs to be progress, right?), but that's it."

      Oh that sucks for you iPhone users then, I didn't realise the iPhone 4 lacked GPS, is only 2G, and has a horribly dated screen resolution. I'd always thought the different versions had different hardware, but I guess if you say otherwise then it must be true, it's only the OS that's changed after all.

      "While Windows Phone 7 has definitely taken a better approach than before, they also haven't considered this issue."

      Because it's not like XNA and Silverlight are designed specifically to solve these issues or anything is it? This is the point you really proved you simply don't know what the fuck you're on about. I hate Microsoft, I really fucking hate Microsoft, but christ there's no denying they've got mobile development hammered out above all others.

      Fuck off Apple troll.

    4. Re:mobile platform by logistic · · Score: 3, Interesting

      Remember Windows CE hand held devices! You would run around the net looking for applications and they would not run (oh sorry was compiled for MIPS and you have and ARM device, or some other screen size or assumed a physical keyboard or was complied for V 2.11 and you running some minor incrementally different version).

      It's weird to see the same thing happening all over again. It's great to have an open platform but like an electrical outlet all the plugs fit, or USB or PCI (yes there are occasional incompatibilities) having standards that the developers can rely on is what makes things useful. Android is not even close to Windows (or any good modern desktop Linux Distro that will run on just about any hardware that meets spec and the applications for said OS for the most part will run)

      I think many of us would like that kind of reliable application experience sans Apple's vendor lock in on hardware and OS.

      As an aside I don't know why we're so willing to welcome Google as our mobile overlords. I personally don't see how the community can catch every bit of data gathering they've built into the code and then make a stable usable version you can compile for whatever hardware you've got. eg I'm unaware of tinfoil hat Android.

    5. Re:mobile platform by BagOBones · · Score: 5, Informative

      As a developer there is a HUGE difference...

      The iOS devices basically progress in a predictable fashion inheriting the functions of the last gen.. IE you can easily choose your lowest target and with very minimal tweaking support ALL higher / newer devices.. Also using consistent APIs you can detect specific models and enable specific features, knowing they EXIST on the device without writing custom code to detect them.

      As android has progressed there have been APIs from vendors made to support model specific features. You can't count on what UI the user sees since HTC, Sony and Moto all reskin the OS... Makes it fun to explain to users how to do stuff when the OS looks alien.

      --
      EA David Gardner -"... but the consumers have proven that actually what they want is fun."
    6. Re:mobile platform by grapeape · · Score: 4, Informative

      There is a big difference between obsoleteness and fragmentation, support for older devices has always been an issue of "we'll take what we can get" when it comes to technology. The problem with Android is that you can buy half a dozen currently on the shelf products and find that none are running android the same. The 3 devices I have were all purchased this year, one has 1.5, one has 1.6 and one has 2.1, 1 has google apps the other 2 don't come with, 1 has a custom front end with swipe, one has a custom front end that makes it almost unnavigable and one has a vanilla dated android front end with half the default stuff missing. I like android as much as anyone but burying our heads in the sand and pretending the problems don't exist isn't supporting the platform its supporting a path that will inevitably lead to its demise. While I like the idea of open source, Google needs to put their foot down and at least come up with a set of minimal standards that require manufacturers to comply with them for the platforms own good. As it is now its great for a geek that knows what he is doing but for the average consumer without a lot of research and someone to hold their hand has no idea what they are going to get when they go to buy an android device. I cant even count how many times I have had clients ignore my advice and go out and buy a cheap piece of crap since the cheaper one ran android too....then I have to deal with them pissed off with me that they have a version that doesn't sync with exchange or doesn't have google apps, or is missing media players, etc.

    7. Re:mobile platform by kakris · · Score: 3, Interesting

      I've done some development on Android and I don't think I'd agree that it's a horrible platform. There are plenty of things to pick apart, and it can be tiring figuring out the way Google wants you to do certain things, but it doesn't seem any worse than learning any new API. Generally my code works on 80+% of the devices out there the first time I test it after debugging. From there it's usually small tweaks, and the bugs generally stem from me not doing things according to best practice. It's not unlike developing websites to some degree. You'll do tons of cool CSS hacks, only to realize it doesn't work right in IE. As you get more experienced, you know to stay away from problematic areas. Android development is similar in many ways. Perhaps frustrating at first, but with experience you can write code that works everywhere the overwhelming majority of the time.

    8. Re:mobile platform by 99BottlesOfBeerInMyF · · Score: 3, Insightful

      Basically, you have tons of different devices you need to support, all with different hardware, resolution and features. [...] It's a nightmare.

      Sort of like developing for the PC, right? I know, we should all move to vendor-locked consoles.

      As the previous poster mentioned if you'd bother to quote them in their entirety, PC's don't have to worry about severely limited cpu power and battery life. Running Flash on a Mac can be annoying and will drain your laptop's battery and use way more processor cycles than any other plugin. Port the same thing to an iPhone or other Mobile and you have people with mobile devices that are unresponsive, crashy, and don't even last a whole day on a battery. When resources are limited by the size and portability, problems get magnified sometimes to the point where they are game changers.

      No one is proposing that we all move to consoles for the laptop/desktop market... but you're conflating that market with the mobile market where there are different needs and limitations.

    9. Re:mobile platform by diegocg · · Score: 3, Interesting

      Except that they do share his concerns. Not the version fragmentation problem, but the "lack of hardware uniformity" problem. Software testing in android is already hard, because the same software can work differently depending on some subtle hardware difference, so you need to test in different devices. It's not the end of the world, windows programmers were able to make programs for the hardware nightmare that the PC world is, but it's not nice.

    10. Re:mobile platform by Timmmm · · Score: 5, Insightful

      I'm an android developer, and I *do* share his concerns. There are three aspects to the problem:

      1. Unintended device differences.

      I've had loads of emails from people saying that my app behaves incorrectly on their phone, whereas it works perfectly well on mine and many other phones. There are certain areas of development where the differences in behaviour on different devices can be pretty huge. In my case it is sleeping and waking the device, but there are others, like sound latency, graphics capabilities, and multitouch behaviour (*cough* stupid dual-touch *cough*). You really do need to test these apps on the actual phones in order to make sure they work (or wait for "I am shocked that this free, ad-free app doesn't work." emails).

      2. Intended device differences.

      There are a ton of different android phones. Suppose you want a layout to work nicely on all of them. Android has a pretty nice framework for selecting a layout file based on device differences, and these are only *some* of the things it can consider: orientation, whether the keyboard is open, screen size, screen aspect ratio and night mode. Multiply those and you have a lot of work. Ok presumably you wouldn't use all of them, but you could *easily* end up with 6 layouts for one screen. It doesn't help that Android's layout system is one of... no *the* least well behaved I've used. It frequently does stuff that makes no sense (search StackOverflow for examples).

      3. Old versions of Android.

      Yes it is a bigger problem than on iOS. 17% of users are still on Android 1.5 or 1.6. How many iOS users haven't upgraded their OS for a year? Actually I checked, and Apple stopped providing updates for the original iPhone 2.5 years after its release. It seems most Android phones don't even last a year before they are end-of-lined. This affects developers because it means you can't use the latest nice APIs without either using ugly reflection hacks (not possible with the NDK) or ignoring some users.

      There's lots to like about Android, but don't pretend there aren't any flaws.

    11. Re:mobile platform by paeanblack · · Score: 3, Informative

      Linux doesn't have fragmentation issues either, unless you're goin for the fud route.

      The commercial Linux companies don't have a strong financial incentive to fragment the market. They rely on app developers to directly support their product, and if they stray too far from OSS principles, they lose the dev support. There is not enough money to be made locking in customers to overcome the losses on the development side.

      Phone companies do have a strong incentive to fragment the Android market. Their business model relies on making it as difficult as possible to switch providers and to provide incentives for unnecessary hardware upgrades by artificially restricting software upgrades to newer models. They don't care about openness. They don't have to. They are the phone company.

    12. Re:mobile platform by zeroshade · · Score: 3, Insightful

      No one is proposing that we all move to consoles for the laptop/desktop market... but you're conflating that market with the mobile market where there are different needs and limitations.

      Just because there are different needs and limitations doesn't remove the analogy. On a desktop or laptop you have all the same differences: different hardware, monitor, resolution, mouse/touchpad/trackball, joystick or no joystick, discrete or onboard graphics, discrete or onboard audio, drivers out the wazoo, varying amounts of ram, cpu, and disk space, built in camera or USB connected, or no camera at all, etc. etc. etc. Just because the environment's needs are different doesn't eliminate the fact that it's a similar situation. You have a system with a large amount of variation in the type and amount of hardware and specs. If developers can write applications for windows and linux that successfully run on hundreds if not thousands of variations of hardware for desktops, laptops, netbooks, etc. Then developers can write applications for Android. This type of variation is new in the mobile space which is the only reason why it keeps getting this much attention, it's not a new development for software developers and should stop being treated as such. It's just simply FUD.

    13. Re:mobile platform by grapeape · · Score: 4, Insightful

      Please explain where the "bullshit" is? The devices I mention are an Archos 7 Home Internet Tablet, An aPad and my Samsung Galaxy S. None are even remotely similar interface or app set wise beyond all having the little green robot show up when they boot. As I stated, denial isn't helping, why cant android fanboys figure that out...its as bad as apple zealots that dismiss areas that are lacking when they all know the minute Apple announced they have suddenly "invented" it again...it will become a feature they couldn't live without. It really is ok to like something and still be critical of it...there is simply no other way to improve upon something without it.

    14. Re:mobile platform by BasilBrush · · Score: 3

      A fair point, though it's reasonable to point out that there are currently three devices with different hardware specs which are the most recent targets of their line.

      3 product lines, with each version being a superset of features of the product before is very easily managable by developers. The huge variety of arbitrary differences of Android devices is not.

    15. Re:mobile platform by jedidiah · · Score: 3, Interesting

      ...which is a real hoot because I have this "fragmentation" problem with my Macs. Some are older than others but none are terribly old. Yet some of them are capable of playing big studio games and others aren't. It's not like I am trying to play some high detail fast past shooter on these boxes. I am just interested in relatively mundane strategy games. Even these don't support the "lesser" GPUs that slightly older Macs have.

      Unless the platform is entirely castrated, there will be "fragmentation" issues.

      Then instead of "fragmentation" you will have the problem of n+1 completely incompatible platforms or some monster monopoly.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    16. Re:mobile platform by dbc · · Score: 5, Interesting

      Fundamentally I agree with your premise, but Archos is not a good example, because it can never be certified for Android as it lacks key components, like that pesky phone part.

      However, speaking as someone who once upon a time managed a platform matrix validation lab for Windows software, I agree completely that the platform matrix for Android is unwieldy. People who say that it should be easy to support all Android *certified* devices (much less all Android devices) are simply not doing the math. Constructing and maintaining a test environment where you can check your software against all screen resolutions, API's, and peripheral selections is a huge problem with combinatorial complexity. And actually running and debugging all those test cases is hugely time consuming and expensive.

      Of course, I expect to be modded down. It seems that every time I reply with *actual* *real* *world* *experience* on a topic where I know enough to have managed many people and had a six figure hardware budget, I get modded down because my actual data conflicts with peoples' religious beliefs.

      But, in the end, Android will probably win despite the technical complexity of testing software. It will win because of openness, and customers will whine about how buggy the aps are because they are essentially untestable. It *is* the new Windows in that respect. I believe that strongly enough that two days ago I removed the iPhone SDK from my Macbook and installed the Android SDK.... but with eyes wide open about how nasty and alligator filled the swamp ahead actually is.

  2. Increased IT literacy??? by SpaghettiPattern · · Score: 5, Insightful

    Window's dominance of the PC market has been good in many ways ... increased IT literacy

    What?! That's like saying McDonald's did anything for fine cuisine. Gimme a break!

    --

    I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
    1. Re:Increased IT literacy??? by Migala77 · · Score: 5, Interesting

      Window's dominance of the PC market has been good in many ways ... increased IT literacy

      What?! That's like saying McDonald's did anything for fine cuisine. Gimme a break!

      Like McD has given us something with which to compare fine cuisine, Windows has given us a way to differentiate between those who are and aren't IT literate.

    2. Re:Increased IT literacy??? by Charliemopps · · Score: 3, Insightful

      McDonald gave us a restaurant in every city in America. That would be a better comparison. I'm guessing you weren't around in the 80's when the ONLY home PC was an Apple. DOS was hard to use for your average non-techie and Apple was ridiculously expensive. A similar quantity of ram for an apple was easily 10x the price of that for a PC. Almost all software written for Apples was also prohibitively expensive. Apple really did themselves in back then, had they priced their stuff reasonably, they would have crushed Microsoft.

    3. Re:Increased IT literacy??? by lluBdeR · · Score: 3, Informative

      I'm guessing you weren't around in the 80's when the ONLY home PC was an Apple.

      I'm guessing you weren't either.

    4. Re:Increased IT literacy??? by BlueStraggler · · Score: 4, Informative

      Dude, please. You're getting your anti-Apple memes all mixed up.

      Facts: In 1979 the Apple II+ cost $1195 with 48K of RAM. In 1981, the IBM PC cost $1565 with 16K of RAM. Apple had cheaper hardware and software for years. And furthermore Microsoft was a key supplier to both companies, so why on earth would anyone have wanted to crush them?

      The cheap PC clones vs. expensive Apple meme had real legs for about 10 years (early 1990s to early 2000's). It has been false for quite a bit longer than it was true.

    5. Re:Increased IT literacy??? by Opportunist · · Score: 3, Insightful

      Would you please read again?

      It's not a WORSE interface. It depends on what's your goal. If you want someone to accomplish something fast without a steep learning curve, then yes, a GUI is the way to go. But that does not make the person more "computer literate". It allows him to get something done, and get it done without having to dig into the matter deeply before he can actually accomplish anything.

      Now, if someone can accomplish something by knowing less, do you really think that makes him more literate?

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  3. Systems Integration by rjstanford · · Score: 5, Insightful

    Looks like I'm sticking with the iPhone for a while then. I've gotten to the point where I'll happily sacrifice a small amount of money and a little flexibility in exchange for a well-vetted, vertically integrated solution rather than an assembly kit that I can use - if I wish - to build something great. With the increased power to do your own thing all to frequently comes the need to do your own thing, with your own time and your own money. Not on my phone, thanks - I'll leave tinkering to the hobbies I choose rather than a useful accessory for my life. And yes, I'm a developer.

    --
    You're special forces then? That's great! I just love your olympics!
    1. Re:Systems Integration by Microlith · · Score: 3, Insightful

      if I wish

      Ah, there's the lynchpin. If you hadn't noticed, there's been a concerted effort in the mobile industry to make sure that even "if [you] wish", you can't. The point is to make you dependent on them, even when you could easily solve the problem yourself.

  4. This line from the article.... by GPLDAN · · Score: 5, Insightful

    "The entire phenomenon of viruses and malware is a result of the proliferation of Windows, the people behind malware take advantage of that same standard development platform."

    This sentence is so stupid that it invalidates the arguments contained within the entire article. Who thinks that if Apple and their marriage of hardware and software were to have only existed in some anti-Capra Steve Jobs as Mister Potter world of computing, that viruses and malware would have not existed? Because there are no viruses for MAC OS? By that logic, wouldn't NeXT Step have been the most secure UNIX ever? To lay the existence of malware at Redmond's feet is to be so ignorant of computing and O/S design as to make anything said about Android totally and completely moot.

    1. Re:This line from the article.... by drinkypoo · · Score: 4, Informative

      Also those of us who were using Macs back in the day remember that it was horribly common to get a virus, or at least to be exposed to them. It's not until we got that program that detected suspicious behavior... Gatekeeper? And then later, Disinfectant, a recognition-based AV, that it became possible to get a handle on things.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:This line from the article.... by w_dragon · · Score: 3, Informative

      Several years ago, in the early 2000s, I went to a tech-heavy university. Maybe things have gotten better, but at the time a default install of Debian on the school network would be rooted within a couple weeks. Linux isn't secure by default, if you don't know what you're doing it will be open to attack, just like Windows. The difference being that most people who use Linux are either in an environment where there is no local threat, or they actually know what they're doing.

  5. Re:Windows gave control, Android takes it away by Microlith · · Score: 5, Informative

    DOS/Windows gave people more control over their computers. people had the software locally and could install anything they wanted. anytime.

    This would have happened for ANY OS that wasn't tied to a big-iron vendor. As I recall, this was (and continues to be) true for Macs as well.

    same with my iphone.

    No. Unless you jailbreak, the software you run on it has to pass a vetting by them. If they pull it later, you'd better hope you don't lose the copy on your PC/Mac.

    with android the app install process is in the cloud and controlled by google

    Are you sure you haven't mixed up Apple and Google? Last I checked, you weren't forced to go to the Marketplace to install software except on a few obscenely locked down devices from AT&T.

  6. Re:Windows gave control, Android takes it away by poetmatt · · Score: 4, Informative

    where do you come up with this shit? on android you have an .apk that can run whether or not google removes it from the app store or entirely for that matter.

    Not only that, but these .apk's aren't hidden, they're on your phone, and even without root access you can back them up easily with plenty of solutions. Plenty of people install android apps without ever hitting the android market or ever having a wifi connection. in fact, there's an entire forum dedicated to it, essentially . Did I mention that things are fairly well documented?

    on iphone you can have it forcefully removed remotely, even by using the old version.

  7. Maemo/Meego by jspenguin1 · · Score: 5, Funny

    So if Android is Windows, iOS is MacOS, does that make Maemo/Meego the Linux of the mobile world?

    "My N900 runs Linux."
    "So does my Android phone."
    "But the N900 runs GNU/Linux!"

    I still get to feel superior.

  8. Re:Windows gave control, Android takes it away by zeroshade · · Score: 4, Insightful

    You're right, I can complain about the $99/yr cost. There is absolutely no reason why I should have to pay an additional $99/year just to install what i want on a device I own.

  9. I'm also an Android developer and I don't by beakerMeep · · Score: 3, Informative

    I'm also an Android developer and I don't share those concerns. There have been some frustrations, yes, but there are usually decent workarounds for a lot of things. As an example: Bluetooth support wasn't really solid until 2.0, yet there are excellent backport open-source libraries that make it easy to provide that support to 1.5 and 1.6 devices.

    I completely disagree about reflection as well. Using reflection you can degrade gracefully for platforms that dont support what you're doing. Reflection is not ugly at all, it actually quite an elegant deign pattern imho.

    If you're ending up with 6 layouts for each screen you're doing something wrong and perhaps overreaching in your support for older devices or your layout is overly complicated. It's unreasonable to think the latest Mass Effect game would run on a tiny 320x240 screen. And while that's hyperbole, yes, the point is made.

    Just to be clear though, I don't find you concerns invalid, However I don't think this is unique to Android.

    Granted there is still much work Google and the manufacturers could do to streamline all of this. But any software development platform, any OS, has some level of variation for what is supported. OSX, Linux, iOS, WebOS, Windows, Windows Mobile, Windows Phone 7, Symbian, HTML5/JS/CSS, Blackberry OS. Really the only platforms that don't, are the video game consoles. But now even that's starting to happen there too with external storage and peripherals.

    --
    meep