How to Fix a Major Flaw in Our Current App Ecosystem

Google will do anything it can to get apps on its store, but let's face it, Apple has the better apps. Because Apple has the better apps, they want to choke off Android while trying to incentivize more devs to make apps for them, so they have a client stack that is as different from Google's as possible to make it hard for devs to switch over.
This post was published on the now-closed HuffPost Contributor platform. Contributors control their own work and posted freely to our site. If you need to flag this entry as abusive, send us an email.
Hand holding smart phone - gold/white color with blank screen
Hand holding smart phone - gold/white color with blank screen

(I'm a high school junior who, to give myself some credit, is a pretty seasoned app developer, but still, take this with a grain of salt.)

Apps are pretty cool. They are the biggest change in software since the creation of the World Wide Web even though they are really just slimmed down Windows programs. The change is more due to the medium in which they run rather than the software itself, but I digress, they are pretty damn revolutionary. Apps now are still created like they were when the first app store was made for both Android and iOS. They have had some big rewrites on the back end, but the actual process of making them still has the same advantages and shortcomings on each platform. These pros and cons are in a deadlock between the two platforms, who are both trying to take the advantage while harming developers in the process.

On iOS, you get a full featured, user-friendly development environment (Like Microsoft Word but for code) and stack (The tools used build the app), as well as users who love to splash the cash, whereas on Android you have an ok development environment, an infuriating stack, and a plethora of users who don't like to spend much money. For devs, iOS looks a lot more attractive on the pro side, but you really cannot alienate the majority who have Android phones if you wish to expand your user base, so in the end you have to make apps for both platforms. Because the stacks on each platform are so different, you will usually need to hire extra devs with experience on the opposite platform, and then you still need to make a functional app that can garner users and build a following.

This sucks for developers. Google will do anything it can to get apps on its store, but let's face it, Apple has the better apps. Because Apple has the better apps, they want to choke off Android while trying to incentivize more devs to make apps for them, so they have a client stack that is as different from Google's as possible to make it hard for devs to switch over. Because iPhones haven't been able to secure the low end market as well as the relative failure of the 6s, devs are still stuck in this grey area where they can't settle definitively for one platform. As the app ecosystems exist now, devs are thrown under the bus as long as no side wins the battle.

The main pioneers who are trying to break this vicious game of monopoly between Apple and Google are your good old friend Facebook, Adobe, and a small company called Telerik. These companies are developing frameworks for "hybrid" mobile apps. These hybrids utilize JavaScript, HTML, and CSS (The same languages that websites are made with) to render out mobile apps on both iOS and Android with one centralized code base. These products are very idealistic to say the least. They're trying to make something cross-platform that simply isn't meant to be. These hybrids come with some tradeoffs then. For instance, Adobe's framework really just serves as a wrapper for a webpage, making clunky, non-native apps that might as well be webpages. This leaves Facebook's React Native and Telerik's NativeScript. Both are open source frameworks and work approximately the same way. They take Javascript and an HTML like markup language and interpret it as native code for each platform. This sounds cool, but it requires a comprehensive development environment to prove easier than just writing apps in a native language. React and NativeScript are both open source, so anyone can contribute to the project as a whole, and both languages utilize a modular system of scripts to allow a developer to access any native API on any device. For instance, I can write a module for either framework that can tell it how to interact with my phone's fingerprint sensor. Once the catalog of these modules becomes robust and the interpreting engine is optimized enough, you could start seeing more unified apps between Android, iOS, and the Web.

These frameworks are showing promise, but aren't quite practical enough to draw crowds of developers quite yet. They instead serve as a way to kick Apple in the butt because soon they won't necessarily have the advantage of a more robust app store. Not only do these frameworks show a solution to the app ecosystem dilemma for developers, they also show an example of how open sourcing is screwing up these big corporations; how the minds of the many can beat the money of the few.

Popular in the Community

Close

What's Hot