4 ms·
So when Android is fragmented, it is awful and is the reason the platform sucks. When iOS is fragmented, it's innovative and fresh, masterfully executed to brin
by cheald 13y ago
So when Android is fragmented, it is awful and is the reason the platform sucks. When iOS is fragmented, it's innovative and fresh, masterfully executed to bring new opportunities to developers. Got it.
- ghshephard 13y agoAndroid Fragmentation is a problem because what version do you write your application for? 2.3? 4.0? Ideally 4.1/4.2, but that will miss 70% of your market who CAN'T upgrade because their Telco is not offering 4.1/4.2. Not because their hardware can't support it. Anybody on an iPhone 4, 4S, or 5 who wants an iOS 7 app, can have it within a day of the iOS 7 release. The downside of offering only one major phone a year, is that you don't occupy much shelf space in a best buy/AT&T - and someone casually looking for a phone, instead of a particular phone, is 90% unlikely to chose you. The upside, is that when you offer a new OS - everyone gets to upgrade. That's the Android fragmentation issue.
- cheald 13y agoNo, you write for the minimum API level your app requires. In a lot of cases, this is 2.3.3! If you want to target a wide audience and still use some 3.0/4.0 features, there are nifty polyfills available, too. Google is further improving this by extracting many of the super useful APIs out into a version-agnostic package that is updated independent of carrier say-so. Your API level 10 apps will run quite happily on Gingerbread, Honeycomb, and JB devices. Furthermore, Google supports multiple APK deployments, so you can actually build your application with different features for different API levels, and publish them under the same entry in the Play store; each device is routed to the proper APK. However, despite all of this, you are talking about the exact same thing that Marco is. He says you "ideally" want to target iOS7, but you can't afford to do so if it means cutting out your iOS6 users. His conjecture is that since the established players are stuck on iOS6 (Gingerbread), the up-and-comers will have a shot to disrupt the market among the iOS7 (Jelly Bean) users. The assertion, flat out, is that "the big players being unable to upgrade their iOS6 software to meet iOS7 standards due to legacy support requirements is good for the app ecosystem", which is a pure RDF spin on the whole fragmentation issue that the Apple ecosystem loves talking about so much.
- ghshephard 13y agoMarco's baseline assumption, if you read his full argument, is subtle. While it contains a few elements (as you've cited) of legacy support concerns - his principal thrust is not so much that you "can't afford to do so if it means cutting out your iOS6 users", rather, he primarily postulates: "I don’t think most developers of mature, non-trivial apps are going to have an easy time migrating them well to iOS 7. Even if they overcome the technical barriers, the resulting apps just won’t look and feel right. They won’t fool anyone." That is - the legacy app writers are going to have a huge challenge in trying to make their iOS 6 apps look "good" on iOS 7 - this is not a problem for someone starting from a greenfield scenario.
- cheald 13y agoI really do think I get the thrust of his argument. I just don't think it holds up. Let me ask this - why wouldn't app makers just migrate their apps to an iOS7 look and let the (by the arguments in this thread) vanishingly small non-iOS7 contingent deal with something that doesn't fit the theme of their system? If 90% of your userbase is going to be running iOS7, wouldn't it make more sense to just let 10% of your userbase have an app that doesn't feel like it matches the system (but definitely looks nice) rather than risk someone coming along and making a nicer-looking version of your app to steal the other 90% of your userbase? The only way this becomes an actual talking point is if there is some reason that vendors can't upgrade their software to iOS7 guidelines, and that's the point at which you begin to experience fragmentation.
- ghshephard 13y agoI don't know if his argument holds up either. I think he's approaching it with some baggage as the former proprietor or Instapaper. He frequently, on his podcasts, discussed his timing as to when he could simply "Require 5.x" as the iOS based on his user base. That's the other problem with abandoning even a small percentage of your customer base - even though their existing app will continue to work the way it always has, the fact that they can't continue to upgrade to newer features, might results in negative reviews. I agree with you, btw - that any app maker worth their salt, if they truly believe that 90% of the iOS userbase will be on iOS 7 in 3-6 months, should be prepared to completely abandon iOS 6 (except for those few that are targeting the iPhone 3GS and older iPod/iPad customer - big fish/small pond competitive technique) and focus all of their energies on iOS 7 development. Ironically, this creates a positive feedback loop - as no more apps are being written for Pre iOS 7, people more quickly migrate to iOS 7, resulting in more developers completely focussing on iOS 7.... Marco's counterpoint might be, "The set of interest/resources/skills/focus that allowed a developer to build a leading iOS 6 App, might not be present for the new 7.0 paradigms, with their 3-D Z-axis geometry stacking of translucent tiles, inclinometer responsiveness, background processing. Someone who has an entire week at WWDC (yes, the videos are available - but nothing replaces 30-40 hours of onsite time) + all the developer networking (and drinking) that takes place might drive ahead and find the "Sweet Spot" in this new world. Take, for example, Instapaper - perhaps a hungry up-and-comer will deliver a fully featured, iOS 7 ready read-it-later app, complete with background loading, fully 3D Sheet sliding of documents, light/colorful/iOS 7 palette brilliance etc... several months before Instapaper could be rebuilt. It's also possible (probably, as it turns out) that the original author of Instapaper didn't have the energy to rebuild Instapaper because they'd moved onto other things- And we haven't touched on this, "Upgrading an Existing App to iOS 7 gains a vendor no revenue (unless they have some IAP model)" - but does gain vendors of new iOS 7 apps lots of revenue. In other words (and this hasn't been voiced yet) - there is a lot of incentive for NEW iOS 7 apps, but, unless you are a top 5,000 App on the AppStore, much less incentive to put a lot of energy into rewriting/upgrading an existing app to iOS 7.
- shinratdr 13y agoHow do you even draw such a connection in your head? Nobody once, ever, has said that the new UI that came with ICS was a bad thing. The problem is that even now, years later, the most in-use Android version is three years old. Android fragmentation is about VERSIONS. APIs, bug fixes, security updates, and available features to a lesser extent. It has NOTHING to do with look and feel. At all. This tactic from Android fans is sad. Just expand the definition of fragmentation until it no longer means anything. Ridiculous. When 90% of devices are using the latest OS within a year of release, trying to call that fragmentation is complete bullshit. No platform in history has been able to tout those kinds of upgrade numbers, and it's a distinct advantage for both users and developers.
- cheald 13y agoDid you read the post? Fragmentation is about your userbase being split across incompatible platforms and the paralyzing effect that has on development, which is precisely what Marco was lauding as a good thing in this post.
- alayne 13y agoThat is not what he's saying at all. He's saying there is disruption and an opportunity now, not that continued disruption (fragmentation) is a good thing!
- cheald 13y agoFor what it's worth, I think he's right about it being an opportunity. If you can throw away some percentage of your potential market and leave them to your competitors, you might be able to work that to your advantage. This isn't really a novel concept; every major change in every major ecosystem undergoes a similar period. I mostly take umbrage at the specific attitude taken towards this, when the same move in similar ecosystems (the ICS/JB upgrade, for example, which saw a huge market open up for "Holo-themed" apps) was mocked and derided as pulling the rug out from under users' feet. iOS' consistency has been tirelessly lauded as a good thing, until Apple goes and changes it. I'm happy with progress and change, and am fine with the broken eggs required to make that particular omelette; I just think it's funny how the pundits' headlines change based on how their particular horse is doing.
- alayne 13y agoIt's not even comparable. Android has many more levels of fragmentation than iOS ever will and Google knows that they screwed up. You have display resolution * display density * OS version * carrier OS modifications * device hardware (hard keyboard/buttons/trackpad/...).
- cheald 13y agoAnd the OS is specifically built to handle that. Layouts are't done in visual pixels, but in density-independent units. The layout engine itself is designed to accommodate different display sizes and aspect ratios. The entire OS is built around a capabilities system that is designed to make it run on devices that may or may not have a camera or trackpad or whatnot. Android fragmentation is about the availability of API levels, not the variance in hardware.
- shinratdr 13y ago> And the OS is specifically built to handle that. Then it does a pretty crappy job. Why does the Play Store silently block apps from your device if this is the case? Why does every Android dev publish a list of supported devices? Because it's nowhere close to this simple, and can't be solved by improvements in the OS, which by the way don't reach the vast majority of users, hence the problem.
- alayne 13y agoWell, my personal experience is that things break on different Android devices for various and sundry reasons despite the existence of dp. If apps run on the iOS simulator you rarely find issues on an actual device except performance issues. But you'd better test on the Note 2, Galaxy S2, Galaxy S3, Galaxy Tab, Nexus 7, HTC Desire C, LG Elite, ...
- deleted 13y ago[deleted]
- cageface 13y agoI haven't found device fragmentation to be much of an issue in practice in Android development. Admittedly the apps I've written so far haven't really been pushing the envelope but aside from some hassles with older Kindles I haven't had to spend that much time on device-specific bugs. Not much more, in fact, than I've had to spend getting apps that run fine on iPhone 4+ working on the 3GS. It's even less of an issue if you can afford to target only 4.0 and above, which is an increasingly reasonable choice for a lot of apps.