mygola mobile app: tech challenges

Post on 02-Jul-2015

453 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Talk contains technical challenges faced while crafting mobile experience for mygola.com

TRANSCRIPT

Mobile App Challenges

By: Devang Paliwal

Todays talk is about…

•MYGOLA (Briefly)

•Why Mobile App (Briefly)

•Challenges Faced (In Detail)

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

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

Challenges Faced

• Web App Vs. Native App

• Responsive Design Vs. Separate Code Base

• Framework

• Cross-platform Issues

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

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?

Responsive Design Vs. Separate Code Base

Effort wise are they any different?

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

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

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

Researched the tools and technologies

Frameworks / Libraries

• JqM Vs. Sencha Vs. LungoJs Vs. . . . . . . Vs Nothing

• Jquery Vs. Zepto

• BackboneJs

• Underscore Templates

Cross-Platform / Cross-Browser Issues

• Touch

• Scroll Issues

• Smoother Transitions (CSS3 animations)

• Misc : Infinite scroll, Memory management

Thanks.dev.paliwal@gmail.com

@devangpaliwal

top related