A game of developer ecosystems : why mobile developers will be pissed off
It all started PhoneGap, back in 2008 by a small company named Nitobi which was later acquired by Adobe.
They had two beliefs :
- The web solved cross platform.
- Technologies deprecate with time.
The native development frameworks for Android and iOS also suffered from compatibility problems. As both platforms started to compete by stealing from each other, the operating systems started introducing weird things. So, the frameworks either had to deprecate a bunch of APIs or introduce completely new APIs every year. A nice example of it is notifications API in both frameworks.
And then, some developers started criticizing Objective-C as if it was feeling like writing Ada. Apple became worried about their ecosystem and combined Python, Go and Scala to introduce as a new programming language in 2014 with some shiny, already known words. Apple successfully created a hype around it by introducing new APIs and making it open source later.
Meanwhile, A large amount of cross-platform buzz started to appear. All of them wanted had two main goals:
- Single codebase for two platforms.
- Either taking money for product or to have dominance over ecosystem
They all started to claim benefits over native development frameworks. Most of them just wanted to do better marketing and earn some bucks from it. Titanium, Iconic, Nativescript and Codename-One were just few of them.
Facebook thought they shouldn’t be behind in the race of developer ecosystems. Things like F8 developer conference and Facebook dev circles started to appear. Later, they announced React Native in 2015, which became very successful because of the popularity of React on web. The performance was still a problem but solved for most business apps.
After the react native, the competition became intense between native development and cross-platform development. Many native app developers started learning multiple cross-platform frameworks. Companies started to pay attention to the cross-platform as they could build with the half of the resources.
Google kept quiet with this war. Then, the same story repeated. Many Android developers started complaining of Java being an old language. It was more like : ‘We are not feeling productive with Java just because iOS devs have Swift and our time is spent envying them.’ Google started worrying about their ecosystem and looking for options. There was one language which was already well-supported on Android. So, they decided to be back in the market by announcing Kotlin. Soon after the announcement, Google’s hard core Java engineers suddenly became Kotlin fans and started creating hype. Few videos were posted on YouTube explaining why they love Kotlin so much!