Building a Mobile App: 5 things I learned
Building a mobile app can be a daunting endeavour. Unlike traditional websites, mobile apps require a different set of skills and expertise. Analytics, user experience, A/B testing, and deployments are completely different. Do you build a native app for iOS and Android or do you build a hybrid app using new technologies like Angular or React? What analytics tools will you use? How will you structure the experience to complement the mobile user’s expectations?
At ID90 Travel, we went through the growing pains of building our own mobile app. We learned a lot during this process and it helped refine our thinking when it came to mobile customers.
1. Consider building a Hybrid Mobile App
When you have a small team where resources are scarce, you want to ensure the technologies you leverage will enable you to deliver regularly and require little maintenance. For this reason, we decided to build a hybrid app with Ionic and Angular.
Hybrid apps allow your team to build with web and native technologies. Unlike native apps, you only need to write one app that can be deployed to both, iOS and Android stores. Whats more, frameworks like Ionic ensure the experience matches the expectations of both platforms from a UI toolkit perspective. This reduces the complexities of managing different apps and teams for each mobile app platform. That’s a huge win.
2. Choose the right analytics tool
Web products become exceedingly different than mobile app products when you think about how you’re going to measure performance and run A/B tests. I’ll be honest and say that we haven’t figured this out 100% yet. However,
what I can say is the measure of success is different. You’ll want to focus on users & retention versus sessions. You’ll want to monitor crashes instead of page load time. For these reasons, Google Analytics may not be the best choice. Our team is learning about Firebase Analytics and investigating other tools such as KissMetrics, Mixpanel, and Amplitude. Be sure the framework you use has plugins to easily integrate these tools into your apps.
You’ll find some idiosyncrasies when building a hybrid app. We quickly learned that Hybrid apps are extremely new to the technology scene and many tools we would use normally would not function properly. A/B testing, in particular, has been a major pain point. Many of the tools we’ve been investigating don’t work with Hybrid products—they only seem to work with web or native products.
3. Understand the customer’s needs when on mobile
Mobile and web are different. The screen real-estate, intention and expectations are entirely dissimilar. On the web, customers intend to do a lot of research to learn about your services or products and expect to find a rich breadth of information. On mobile, customers intend to complete a specific task and expect the experience is structured in such a way that removes all possible friction points, enabling them to complete the task with a few taps or gestures.
This is why I highly recommend hosting several customer interviews to learn about the customer. What are they looking to do when they’re on the go? Which pieces of content is superfluous when on a mobile app? Which screens are adding friction to the task at hand? Are there native functionalities the customer expects throughout the experience?
Building this sense of empathy for the customer is paramount. I believe customer interviews are an invaluable resource for designing experiences that delight and keep the customer coming back over and over again.
4.Rapid Prototypes and Design Thinking
In addition to understanding what the customer needs, you’ll want to prototype experiences to test before writing any code. We used Marvel to rapidly prototype designs and flows. During this team, we already had a mobile view that was structured in a specific way. Using rapid prototypes, we pushed ourselves to test more progressive designs that felt more native without completely changing out the experience. It’s important to use tools like Marvel, create experiences based on assumptions and put them in front of customers to see how they react to the prototype. This will save time and expose a ton of important data points around expectations, intent and overall sentiment towards your product.
What’s more, using prototype tools such as Marvel allows you to build beautiful experiences without the need of a designer. We modeled the prototypes after Ionic components and structured the content in such a way that allowed the customer to get to where they need to as fast as possible.
5. Think Native, Build Hybrid
One of the most powerful features of a mobile app is being able to access native functionalities found on the device. Accessing contacts, location, wallets, SMS, etc. is incredibly powerful. Having these things in mind should heavily influence the way in which you think about solving a particular problem.
For instance, ID90 Travel is a travel app for airline employees. These customers are on the go all the time and need a place to stay at a moments notice. For this reason, accessing the customer’s current location and building an experience that emphasizes speed was a win. We now know more customers use current location when doing a search than any other location. Likewise, if an employee wanted to share their itinerary or invite a friend to the ID90 Travel App, they would have to enter their contact information each time. Being able to access their contacts and facilitate the message through their SMS apps will reduce friction and improve the speed at which the customer is able to accomplish the task.
Think native, build hybrid.
Building a mobile app is an extremely exciting and challenging experience. Most times, you will need to rethink the way in which you approach solving a problem. Narrowing your focus is more important than ever before. Hybrid apps are at the forefront of technology and will inevitably cause some heartaches due to their infancy. However, the benefits outweigh the costs when it comes to flexibility, deployability and speed.