Where to start on mobile development? – What to choose Android or iOS?

W

Note: This is the second part on a series I am currently writing, here is the first part: part1, for those who missed it.

In the previous part of this series we talked about the hardware you need to start developing on mobile platforms. There we mentioned there is an initial stopper for developing on iOS, ‘you need a Mac’. If this isn’t a problem for you and are still wondering which one you should choose, this is what I’m going to talk about on this article.

red and blue robot toy

I think this is a topic where you can find thousands of opinions online, not only from developers, but for almost anyone who has owned a phone. Everyone has something to say about it. In my particular case, I have no preference. My not choosing position is always a matter of question, but I see no point on fighting over this, so I will be as neutral as possible on these lines.

Which one is easier/harder to learn?

Well, this is not a hard question to answer, in my opinion Android is easier to start with and get going. The main language for Android is Java, which has had a large community of developers for a long time (since the 90’s), so if you want to find someone who will help you out with a problem, or teach you, it is more likely you will find a Java developer out there than you will find someone who knows Objective-C or Swift (the main languages for iOS).

Apple tried to counter this when creating Swift, which I will discuss later.

But as any thing that is easy, it also very easy to do it wrong. Becoming an Android professional is a very long road, which I may also describe as never-ending.

What if I am a ‘stickler’?

Yeah, I hadn’t seen this word before either, but I found this when trying to find a word for describing someone who likes to do thing by-the-book.

The dictionary definition: One who insists on something being (done in) a certain way. (Wordreference, 2018)

please stay on the path signage

I hope this is not an offensive word, and if it is I didn’t meant to insult anyone. What I really meant, is that if you don’t mind spending a lot of time on learning a set of rules, and like things that are correctly delimited and documented, iOS may be a better option for you to start with.

As you may know, Apple has a limited amount of mobile devices, and as such, the rules for programming are also well defined. I think, that if there is something that does Apple products appealing is the “cleanliness” on their image, and this is also reflected on their programming languages. Asides, you have a limited number of devices on which you will have to test, and therefore, you can be sure that if your application works on those, it will work on any other device.

I want to release an awesome app into the store as soon as possible!

If so is the case don’t think twice and go after Android. Why? iOS has a bureaucratic process for releasing apps, which includes reviewing your application, which may be usually rejected for a long-list of reasons (maybe I will explain that on another post), and if you want to launch an app, just for getting the whole process from beginning to end, this will also prevent you from doing that.

Android on the other hand makes this really easy, it allows you to release into the store without much of a process, and also to send your apps to testers/friends on a straightforward way. Regarding the prices, Android requieres a one-time fee of $25 USD, while iOS requires $99 USD yearly, I don’t see the point on paying that much if you are only going to test some ideas.

I don’t care for time, nor complex, I want to make beautifully crafted apps

You may be someone who cares a lot for things that look beautiful, and I think you would agree iOS is a master on doing sight appealing things, so is the case for development, you have a graphical interface and a predefined set of elements to compose your screen a specific way, which will allow you to see the elements you are looking for.

person holding click pen

On the other side, I have to recognize that Android has made great efforts on their last releases, introducing the concepts of ‘Material Design’ which helps you achieve uniform graphical interfaces, which with an adequate level of work can be really appealing. But still, Apple is the master on this.

So… what’s your choice?

I actually wasn’t intending to make a choice on your behalf, but instead to give you important information to take into consideration for making your choice. This all comes to a mixture of personal preferences, intentions, goals, and a long list of characteristics to might have driven you to want to develop an application.

I know all the information dropped on this article may be subject to debate, and I don’t consider myself the owner of all the answers, but if you have something to say don’t hesitate on reaching me on the comments.

If you need any services regarding mobile apps please come to my webpage, evisoft.mx or drop me a line contacto@evisoft.mx. For more content like this visit my blog evanamargain.com/blog/

About the author

Evana Puig

Add Comment

By Evana Puig

Evana Puig

Get in touch

Mobile Developer expert in Android and iOS, with 10 years of experience. Visit me at evanapuig.com. Author, and topic master at raywenderlich.com