This document summarizes some of the challenges faced when developing a mobile app for Mygola, a trip planning platform. It discusses whether to build a web app or native mobile app and considers responsive design versus separate code bases. Key challenges include differences in features between web and native apps, cross-platform issues, and maintaining two code bases. The document outlines Mygola's hybrid approach of using a modular client-side MVC architecture with a separate mobile app and reusable widgets and APIs.
2. Todays talk is about…
•MYGOLA (Briefly)
•Why Mobile App (Briefly)
•Challenges Faced (In Detail)
3. MYGOLA
• Has largest collection of curated itineraries
• Lets you customize and share the itineraries
• Helps you to experience the trip before it begins
• Provides you a fantastic tool for trip planning
• Gives you access to professional guide community
4. Why Mobile?
• About 20-25% of traffic from small screen devices
• Higher bounce rate of mobile user compared to desktop users
• Mobile user on QnA pages spent more time than other pages
• Customer interviews reveled demand for an awesome mobile
experience
• Mobile Trust
5. Challenges Faced
• Web App Vs. Native App
• Responsive Design Vs. Separate Code Base
• Framework
• Cross-platform Issues
6. Web App Vs. Native App
• Web app means no offline access
• No phone alerts with Web app
• Native App not helpful to organic traffic
• Stringent app store guidelines and approvals
• Pushing updates on Native app is painful
7. Web App Vs. Native App
• Skillset in team
• Cross-browser Vs. Cross-platform challenges
• Criticality of accessing device features (Camera, GPS, etc)
Can there be a mid way Solution?
9. Responsive Design Vs. Separate Code Base
• RWD on legacy code leads to re-design all existing web pages
• Shipping entire site to mobile impacts performance
• Mobile user more sensitive to unimportant widgets/information
• Separate code base leads to maintenance overhead
10. Responsive Design Vs. Separate Code Base
At mygola we have
•Old QnA pages(MVC on server) – Blog page kind of view
•New Itinerary centric product(MVC on Client) – Single page app
•Template based modular widgets
•Client side MVC architecture based on backbonejs
•APIs on server spitting data in json format
11. Responsive Design Vs. Separate Code Base
• With the existing architecture, a separate app without migration
to RWD was simpler.
• Modular design on server side MVC led to convenient
customization of old blog views.
• Server APIs for backbone remained same for both the Apps
• Backbone Collections and Models were also reused absolutely
• Views for Primary app widgets were made by extending the
Views of mobile app widgets
Hi everyone, Very good morning to all of you. First of all I would like to thank for Dhaval and Damyanti for organizing this meet up and giving me the opportunity to present my experiences . My background : I work as a senior front-end engineer @mygola. We are here to talk about the how did we carve out mobile experience and the challenges and technology decisions we made while doing this.
How we created the itineraries - > crawl, tips reviews etc Not only read only view We allow users to customize itineraries Explain IV visualize your itinerary before being there …. By photos , videos , 360 views, photo gallery, tips, reviews etc Planner Planning is itself a complex process like which places to visit, local transport, time spent on a place, customizing all of that Guide community
Needless to say that smartphones usage is increasing at an exponential rate and more and more users are browsing the internet via mobile. Google analytics showed us that 20-25% of out traffic came form hand-held devices. It is a sizeable number which pushed us to create a mobile presence. Mobile presence allows us to reach larger audience and help us increase out user base. Mobile users were spending lot of time on QnA pages as compared to other pages as these provide quality answers for custom user queries. This gave us confidence that this traffic can be tapped and diverted to other pages as well. Not having a mobile presence will leave our users with our desktop web application which is not optimised for mobile and this may turncustomers off which is not good for business.