Why Learn Android ??

Photo by Guido Coppa on Unsplash

Why Learn Android ??

“The design is not just what it looks like and feels like. The design is how it works” — Steve Jobs

Hi,

If you are wondering why you should learn how to develop native android applications, let me give you some insights from my personal experience. Programming is one of the inexpensive ways you can learn a skill. I learned to code using my mediocre HP laptop and below-average internet connection four years back. I started my coding journey with CS50 - Intro to Computer Science (A free online course by Harvard), which made it clear to me that Computer Science is not about programming per se, even though that's how we perceive it in college, but it's about problem-solving and discipline. That is exactly what Android development teaches you, problem-solving and discipline, but in a fun way.

Let's start with why Android

We are in an era where Google’s Android operating system has penetrated the nook and corner of the world. According to 2019 google i/o data, there are more than 2 billion monthly active Android devices. Just imagine the impact you can create with your project. I mean, anyone can just download and start using your app without needing any extra hardware, literally anyone.

  • It's OpenSource ✨✨

5ccb6c1365eb03504cd8c01fe20fe11a.jpg

One of the best things about Android is that it is open-source, and that's why there is so much innovation. You see, all these mobile device manufacturers have their version of android os based on the device needs, which they customize to add new features.

  • It is everywhere 👀👀

5032794.jpg

You can learn one tech stack and develop applications for various devices. Android is everywhere( smartwatch, smart tv, cars, tablets), which gives you the freedom to make applications for any device.

  • Gradual learning curve

351glkxbngo31.jpg

There is a lot of inhibition among Android app developers over what they need to learn to develop Android apps. One has to agree that the person must be innovative, identify opportunities in the market and, come up with new ideas.

Okay, let us be Serious (Black) ⚡

Getting started with Android is easy, but it gets messy once you go in-depth. You have to take care of every aspect of software engineering, follow all the good practices, write clean code, and much more. Android is tough but a fun way to learn computer science concepts.

I will give you an example. Let us say you are developing a web project. While writing the code, you do not have to worry about the orientation change of the device right, but since mobile devices are portable, you can change the orientation. This creates a whole new problem in Android, and that is because of the way Android draws elements on the screen. So when you open an application for the first time, the Android OS figures out where to place elements on the screen by using coordinate values and device dimensions. When you rotate the screen, the Android OS destroys the UI and constructs it again, and because of this, all of the previous data gets destroyed. To solve this problem, you have to use Architecture, and learn about activity lifecycles and stuff.

All of this might sound too technical and complex, but what I am trying to say is that Android is tough, but on the other hand, it makes you a good software engineer.

So, If you have made your mind about starting with Android Development, then God help you ( I’m just kidding :p )

PS: Kotlin >> Java

i-will-see-3ac3f5e773.jpg