A recent report by OpenSignal revealed that there are 18,796 distinct Android devices in use. This data was gathered directly from users who installed the company’s app. Even though device fragmentation is not a new phenomenon in the Android world, the sheer number of devices is impressive (up from 11,868 devices counted last year).
Have you ever wondered what happens to all those useful little tools that were created as by-products within a project? Tools that facilitate the lives of their developers or source code that solves a particular problem? What usually happens is that those creations eventually sink into oblivion once they’ve served their purpose.
No doubt, mobile is huge. With more than 700,000 mobile apps in the Apple App Store and as many in the Google Play Store, mobile computing has demonstrated impressive growth. According to a Gartner survey, 61% of CIOs plan to enhance their mobility capability during the next three years. However, some (particularly small) businesses are still hesitant developing and implementing a mobile strategy. A common concern has to do with the fragmentation of mobile platforms. Even if you focus on the two major systems, iOS and Android, which cover about 85% of smartphones and over 95% of tablets, you still have to master two separate worlds with quite different programming languages (Objective-C and Java), IDEs (Xcode and Eclipse+Android SDK) and APIs; not to mention specific requirements in order to comply with the terms and conditions of the corresponding app store. This leads to little or no code-reuse and, in the worst case scenario, complete recoding for each platform you want to support. With Windows Phone 8 (.NET) as a potential third big player, this doesn’t help ease the situation either.