Before we delve into breaking down the technical aspects of a mobile app, I want to go over the four platforms for building Android applications: 1) Android Studio; 2) NativeScript; 3) Kivy; and 4) Ruby-on-Rails (ROR). Each platform has a mission to provide developers with options to make high caliber native apps. In addition, each platform has a dynamic volunteer community that supports and advocates for its status as the “best” platform online and, in some cities, in real life, resources abound. Most importantly, each platform allows you to develop Android apps using free, open-sourced technology.
There are numerous differences between building an Android app to an iOS app. A simple google search will produce pages of responses, so I won’t bother repeating. However, I will name a few that I feel make my case for Android.
For me, the advantage of building Android apps begins with its open-sourced nature. Since its debut in 2009, Android has acquired over two billion international users. A high percentage of those users are in developing country’s — which speaks volumes considering that there are few things from developed countries that translate well into a culture of a developing country. In addition, aside from phones and tablets, Android is available in cars, wearables, televisions, and computers. Its ability to be anywhere and do anything along with the backing of a vibrant and passionate google community make Android my number one pick for building mobile applications.
Ruby On Rails // Rails
Developed by Yukihiro “Matz” Matsumoto and released in 1995, Ruby is an object-oriented, general purpose, multi-paradigm, programming language (edited: in which Ruby On Rails is based on). Ruby was designed to “optimize the programmer’s happiness.” In this way, the code is flexible and forgiving, unlike its contemporaries Java or Python. Since Ruby’s syntax shares similarities to C++, Python, and Perl, to name a few, it is possible that anyone coming from another language will find commonalities.
Notable apps built using Ruby on Rails: AirBnB and Hulu.
Java was developed by James Gosling as a general purpose, multi-paradigm, object-orientated computer program language. Hansson describes it as a “language meant to protect the programmers.” Built on C (programming language), Java was created to be concurrent, class-based, and to have “as few implementation dependencies”. Another feature was “WORA: write once, run anywhere” which meant that any code complied can run on all platforms that support Java. Since its release in 1995, that is Perhaps part of the reason why Java has become the most popular programming language.
Android was developed by Android Inc and eventually became a mobile operating system for touchscreens. In 2005, Google acquired Android Inc but it wasn’t until 2008 that Android (operating language) made its public appearance on Nexus devices. Based on Linux Kernel, Android uses Java for the UI and C for the Core. The Android code is run in a Java runtime environment. The Android Studio IDE was released in 2015; before that, Eclipse was the default platform. Like NativeScript, Android is backed by a company which maintains the language and built the IDE. Online communities on GitHub create additional libraries that extend or create features.
Notable apps built using Android: Instagram and Uber
Python is an open-sourced general purpose, multi-paradigm, programming language. Released in 1991, it was designed by Guido van Rossum to be highly readable focusing on using space instead of brackets for syntax: “It is designed to have an uncluttered visual layout, often using English keywords where other languages use punctuation.”
Kivy, is the framework for building mobile applications using Python and Cython. Released in 2011, Kivy was developed and maintained by the Kivy Organization. Online resources for the app can be found on GitHub, the blog- Kivy Planet, and the user forum, all of which are found through the website.
Notable apps: Southwest and Cigna
Alright, now go find your language. If you are already a programmer, what is your favorite language?
|| Tech + Brew || About Adrienne
Adrienne is a DMV native with an interest in homebrewing (beer and wine), app development, and most things science fiction/fantasy. The District Nerd emphasizes the culture of beer, wine, and technology in the District, Maryland, and Virginia (DMV) communities.