July 11, 2019

Why did we create a mobile app for PopStar?

鈥淵our mobile device has quickly become the easiest portal into your digital self.鈥 - Phil Nickinson of Android Central

Since we launched the PopStar Web Application, we have been anonymously monitoring our users thru Google Analytics, this is to view their behaviour on how they use our product and what gives them the most problem. Using the data we collected, we saw that 80.89% of our users are actually accessing PopStar on their Mobile Devices, where 70% are Android Users, 25% of which are iOS Users and the other 5% uses BlackBerry and other custom mobile Operating System.

This is still fine for us since we followed PWA (Progressive Web App) guidelines and make the website mobile-friendly so our users will be able to browse PopStar more easily, but we are still not happy with the result.

We want to reach more users.
We want to send out notification to users.
We want our product to become really close to users.
We want to know more about our users.
We want our app to work even offline.

鈥淟ETS CREATE A MOBILE APP鈥 everyone is thinking the same thing but we have a major problem and that is WE ARE ALL WEB DEVELOPERS. That is the biggest wall that we encountered, To be able to create a mobile app, we have to learn the tools, and ecosystem of developing a mobile application. We are astounded when we heard JAVA and Objective-C but we are hungry, and to fulfill this hunger, we have to tackle this wall in front of us head on!

Our journey on mobile development...

The first step that we did is to conduct research, should we go into NATIVE, HYBRID or ?

Mobile application development have evolved and there is a term called Native and Hybrid. Here are some of the meaning that we found from Google.

A Native Application is an application that is compiled into an executable file consisting of machine language instructions that the operating system can simple load on top of its Application Layer.

The 2 major operating system in mobile applications are iOS and Android these two have their own SDK to access the features, hardware etc.

A Hybrid Application is an Application that runs thru a Mobile Apps Native Browser, it is like a responsive website but will act like a Native App.

This is more of like a responsive website that that is saved into Home as a Shortcut in a mobile device.

and there is a new set of tools that are getting popular for developing a mobile app, specially for web developers like us who want to start making an app using the technology that we actually already know. This set of tools are called "Cross Compiled Apps" these are apps that are written using a single Programming Language and cross compiled into native apps for multiple platforms. one of these tools is called React Native.

We are very happy when we learned about it and since we actually wrote the mobile application using ReactJS, guess what? Most of the syntax, lifecycle, styling and tools are the same, we can also use plain JavaScript to create utility functions and the codebase for both iOS and Android will be one. Yes, we can compile it into an APK(Android) and IPA(iOS). We found the best weapon to tackle our problem and it looks easy on the very start.

Our journey continues...

Of course there are still problems that we've faced during the development including the following:

Learn basic Java/Kotlin.

Learn basic Android Project Architecture.

Learn basic Swift.

Learn basic iOS Project Architecture.

Learn Google Play Services.

Learn AppStore Services.

Learn GCM / FCM / Apple Push Notification.

Looking for native packages that we can use to avoid repetition.

Bug Tracking

The end is near...

After a month of making our hands dirty with React Native, we are able to grasp and work on it more efficiently, then after another month, we were able to release version 0.5 of PopStar Mobile application, this includes most of the key features that is present on the web application.

Here are some of the screenshots of our app inside an iOS mobile phone:

and here is the app in action:

We were overjoyed and proud with what the MVP (Minimum Viable Product) release did turn into. We did experience a lot of challenges specially on the tooling and ecosystem but we managed to break those limitations and be able to produce something that is worth the effort. This will not happen just because the Engineering Team @ YOYO Holdings wants it but also the Management Team for giving us the opportunity to grow and learn more things. There is a risk that we will fail to deliver this mobile app but we have no time to think about that, we only think of the final product that we want to deliver and now here it is: a mini PopStar application where every influencer can bring it with them.

Download it now on ios or android and experience it today!

Hi! I am Alleo a Senior Lead Software Engineer here @ YOYO.

I am in-charge of all the software development and engineering that happens inside YOYO.

I want to create an impact to society with the use of technology.

I travel for food.



July 30, 2020

Secret of WFH Based On A Three-Year Remote Work Experience

Looks like we are going to be in WFH longer than we all plan...

Read more

July 20, 2020

18 Things I Bought During Quarantine

Who else gets a mini-heart jump when a package arrives for y...

Read more

July 07, 2020

4 Productivity Tools You Can Maximize While Working From Home

Finding it hard to focus on work while at home? Still findin...

Read more