SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
JSON, Memory Usage & Interaction Design
Experience in Boosting Performance for an iOS / Android Application
Lucas Nguyen
VINOVA Pte. Ltd.
info@vinova.sg
About VINOVA
•  Vinova = Vibrant Innovators
–  iOS / Android / Windows Phone
–  For Singapore Enterprises & Organizations
•  2010 Founded in Singapore
•  2011 Representative Office in Hanoi
•  2012+ Push for Mobile Game
About ME
•  Lead Mobile Developer at VINOVA
•  3-year experience on Native iOS,
Android, and Cross-Platform
Technologies
•  Backend Web Services using
Ruby on Rails
Lucas Nguyen	
  
Great Client
Singapore Press Holdings (SPH) - 

Southeast Asia’s Leading Media Organization
Big PROJECT
•  Straits Times Online Mobile Print (STOMP)
•  Award-winning website & mobile app
•  Singaporean connecting, engaging and interacting
•  0.5m concurrent users at peak hours
•  1.8m page-views per day
MISSION
Revamp a very popular iOS & Android app to serve
end-users better, faster!
STOMP v1
 STOMP v2
Old Version
New version
Challenges:
•  Complex Design
•  Lots of Advertisement Banners
•  Old, Slow & Heavy APIs (14.7MB of XML in total)
1-Star Rating
 User Complains
Client’s Dissatisfaction
App Crashes & Hangs
When We Took Over The Project
What Did We Think?
F i n d 	
   	
   	
   t h e 	
   	
   	
   	
   s o l u t i o n 	
  
How Did We Solve The Problem?
1 2 3
XML to JSON Conversion
•  Heavy
•  Slow
•  Uncontrolled
•  Light
•  Fast
•  Controlled
Lightning Server
Remove reduntdant data
•  Full image URLs? NO!
•  Just need [id] and [token] to regenerate the URL
–  thumbnail: http://dswww.stomp.com.sg/site/servlet/
iphone/photo?photoId=#{id}
–  image: http://static.stomp.com.sg/site/servlet/
linkableblob/stomp/#{id}/data/#{token}-data.jpg
{!
id: "1668324” !
title: ”Butter Factory’s…”,!
thumbnails: […],!
images: […]!
}!
JSON Optimization
Article items:
•  Small
•  A lot
•  Need to parse first!
à Keep raw
Article detail:
•  Big
•  Need one at a time
•  Have more time to parse


à Gzip to binary à Encode base64
Our JSON format
•  Primary data for main screen
(categories & articles listing)
•  Secondary data for article detail screen
{!
id: "1668324” !
title: ”Butter Factory’s…”,!
}!
"eNp1VF2v2zYM/SuEnzYgTfz90bcVaDdcoN...“	
  
{!
"date" => "26 Mar 2013",!
"views" => "16160",!
"comments" => "53",!
"content" => ”A 61-year-old retiree…”,!
"photos" => [...]!
}!
Unpacked
Best compression method
Format	
   Size	
  (MB)	
   %	
  Remaining	
  
	
  Raw	
  XML	
   14.7	
  MB	
   100%	
  
(1)	
  Compact	
  JSON	
   6.0	
  MB	
   40%	
  
(2)	
  Compressed	
  &	
  Compact	
  JSON	
   3.8	
  MB	
   25%	
  
(3)	
  Compressed	
  &	
  Compact	
  BSON	
   2.9	
  MB	
   20%	
  
Best of both worlds:
•  ¼ size reduced
•  Easy to read
•  Easy to decode with popular libs

•  Much Faster & Lighter APIs
•  Easier to scale (using CDN)
•  Smaller Mobile Memory Usage
Watch Out for Memory Usage
Memory Usage
Memory Allocation
100	
  MB	
  	
  
20	
  MB	
  
using
 allocate
10	
  MB	
  
using
 allocate
20	
  MB	
  
Before	
  
AHer	
  
Load remote data one-by-one
If load 3 ~ 5 categories at the same time 
à Allocate 10MB ~ 25MB simutaneously
à Memory Warning
Release memory allocated for off-screen list items
Smartphone’s screen is small

à  No need to show more than 5
categories at once
à  Release all invisible components
to reduce memory usage
1
2
3
4
5
Photos are dangrous, just like girls
•  Only load visible photos!
•  Large photo is beautiful, but:
–  Take more bandwidth
–  Take more memory & GPU to render

Photos
 Quan9ty
 Avg.	
  Size
 Memory	
  Usage
high res.
 20	
  ~	
  24
 ~30KB
 10MB	
  ~	
  15MB
low res.
 20	
  ~	
  24
 ~05KB
 03MB	
  ~	
  04MB
ad banners take LotS of memory
1MB	
  Image	
  
+	
  
memory	
  for	
  Views	
  
Interaction DesiGn
Don’t Follow the
Design Strictly
One mission per screen
One	
  big	
  screen:	
  
ArTcle	
  +	
  Comments	
  
ArTcle	
   Comments	
  
Separate	
  
•  Not everyone needs to see
comments
•  Better UX
•  Lighter UI
User is touching, not clicking, make it easy
•  Original designed button is small 

à hard to see and touch
•  Make it wider!
Original
 Wider
Test on low-end devices
iPhone-5
 iPhone-4S
 iPhone-4
 iPhone-3GS
1GB
 512 MB
 512 MB
 256 MB
Dual-core 1.2 GHz
 Dual-core 1 GHz
 1 GHz
 600 MHz
Don’t Believe in Anything ...
•  No assumptions
•  Update 3rd party libraries
usually

•  APIs won’t work 100%
•  Handle exceptions
Thank you!
http://vinova.sg/summerschool
http://vinova.sg/internship


ĐÔI LỜI NHẮN NHỦ CÁC BẠN SINH VIÊN
Vibrant Innovators
Những người đổi mới đầy nhiệt huyết

Más contenido relacionado

La actualidad más candente

Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)Russ Fustino
 
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...Damian OSuilleabhain
 
Responsive Email Design
Responsive Email DesignResponsive Email Design
Responsive Email DesignAnna Yeaman
 
Word press theme and plugins WordCamp Presentation
Word press theme and plugins WordCamp PresentationWord press theme and plugins WordCamp Presentation
Word press theme and plugins WordCamp PresentationAngela Samuels
 
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...Why the iPad UI matters, And how it differs from the Tablet PC, but also from...
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...Fabien Marry
 
Increasing downloads, ratings and revenues
Increasing downloads, ratings and revenues Increasing downloads, ratings and revenues
Increasing downloads, ratings and revenues BlrDroid
 
How to optimize your blog for mobile traffic
How to optimize your blog for mobile trafficHow to optimize your blog for mobile traffic
How to optimize your blog for mobile trafficgroceryalerts
 
Dnn connect dnnmobi-slides
Dnn connect dnnmobi-slidesDnn connect dnnmobi-slides
Dnn connect dnnmobi-slidesashishpd
 
Capable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox WebappCapable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox WebappFred Lin
 
Session 1. iOS developers enthusiasts session
Session 1. iOS developers enthusiasts sessionSession 1. iOS developers enthusiasts session
Session 1. iOS developers enthusiasts sessionGAME Studios
 
HTC desire 516 review
HTC desire 516 reviewHTC desire 516 review
HTC desire 516 review91mobiles
 
Eye candy for your iPhone
Eye candy for your iPhoneEye candy for your iPhone
Eye candy for your iPhoneBrian Shim
 
Developing the Windows Phone User Experience
Developing the Windows Phone User ExperienceDeveloping the Windows Phone User Experience
Developing the Windows Phone User ExperienceKaushal Bhavsar
 

La actualidad más candente (19)

Top 10 Android Apps
Top 10 Android AppsTop 10 Android Apps
Top 10 Android Apps
 
Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)
 
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
 
Smartphones
SmartphonesSmartphones
Smartphones
 
Responsive Email Design
Responsive Email DesignResponsive Email Design
Responsive Email Design
 
Word press theme and plugins WordCamp Presentation
Word press theme and plugins WordCamp PresentationWord press theme and plugins WordCamp Presentation
Word press theme and plugins WordCamp Presentation
 
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...Why the iPad UI matters, And how it differs from the Tablet PC, but also from...
Why the iPad UI matters, And how it differs from the Tablet PC, but also from...
 
Why Mobile Matters | Avvo Webinar
Why Mobile Matters | Avvo WebinarWhy Mobile Matters | Avvo Webinar
Why Mobile Matters | Avvo Webinar
 
Increasing downloads, ratings and revenues
Increasing downloads, ratings and revenues Increasing downloads, ratings and revenues
Increasing downloads, ratings and revenues
 
How to optimize your blog for mobile traffic
How to optimize your blog for mobile trafficHow to optimize your blog for mobile traffic
How to optimize your blog for mobile traffic
 
Dnn connect dnnmobi-slides
Dnn connect dnnmobi-slidesDnn connect dnnmobi-slides
Dnn connect dnnmobi-slides
 
2015 Web Design Trends
2015 Web Design Trends 2015 Web Design Trends
2015 Web Design Trends
 
Why go mobile
Why go mobileWhy go mobile
Why go mobile
 
Capable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox WebappCapable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox Webapp
 
Session 1. iOS developers enthusiasts session
Session 1. iOS developers enthusiasts sessionSession 1. iOS developers enthusiasts session
Session 1. iOS developers enthusiasts session
 
HTC desire 516 review
HTC desire 516 reviewHTC desire 516 review
HTC desire 516 review
 
Eye candy for your iPhone
Eye candy for your iPhoneEye candy for your iPhone
Eye candy for your iPhone
 
Cafaholic ppt
Cafaholic pptCafaholic ppt
Cafaholic ppt
 
Developing the Windows Phone User Experience
Developing the Windows Phone User ExperienceDeveloping the Windows Phone User Experience
Developing the Windows Phone User Experience
 

Destacado

HassettAutomotive.org_2009 AAA Cell Phones And Driving Research Update
HassettAutomotive.org_2009 AAA Cell Phones And Driving Research UpdateHassettAutomotive.org_2009 AAA Cell Phones And Driving Research Update
HassettAutomotive.org_2009 AAA Cell Phones And Driving Research UpdateHassett of Wantagh FLM
 
Last man standing
Last man standingLast man standing
Last man standinglargehat
 
Sail regulation governance 101018
Sail regulation governance 101018Sail regulation governance 101018
Sail regulation governance 101018SAIL
 
Overview on Biometrics by Ch.Ravikumar & Priya N
Overview on Biometrics by Ch.Ravikumar & Priya NOverview on Biometrics by Ch.Ravikumar & Priya N
Overview on Biometrics by Ch.Ravikumar & Priya NRavikumar Chilmula
 
Square for Jimmy John's
Square for Jimmy John's Square for Jimmy John's
Square for Jimmy John's Julie Bourne
 
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIP
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIPISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIP
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIPISCRAM Events
 
Diagrama de flujo
Diagrama de flujoDiagrama de flujo
Diagrama de flujomaleta-01
 
El internet y las redes sociales
El internet y las redes socialesEl internet y las redes sociales
El internet y las redes socialescaro_19
 
HassettAutomotive.org_2009 AAA Aggressive Driving Research Update
HassettAutomotive.org_2009 AAA Aggressive Driving Research UpdateHassettAutomotive.org_2009 AAA Aggressive Driving Research Update
HassettAutomotive.org_2009 AAA Aggressive Driving Research UpdateHassett of Wantagh FLM
 

Destacado (20)

HassettAutomotive.org_2009 AAA Cell Phones And Driving Research Update
HassettAutomotive.org_2009 AAA Cell Phones And Driving Research UpdateHassettAutomotive.org_2009 AAA Cell Phones And Driving Research Update
HassettAutomotive.org_2009 AAA Cell Phones And Driving Research Update
 
Last man standing
Last man standingLast man standing
Last man standing
 
Sail regulation governance 101018
Sail regulation governance 101018Sail regulation governance 101018
Sail regulation governance 101018
 
Overview on Biometrics by Ch.Ravikumar & Priya N
Overview on Biometrics by Ch.Ravikumar & Priya NOverview on Biometrics by Ch.Ravikumar & Priya N
Overview on Biometrics by Ch.Ravikumar & Priya N
 
Square for Jimmy John's
Square for Jimmy John's Square for Jimmy John's
Square for Jimmy John's
 
Design Value that Sticks: Practical Experience with Mandatory Advisory Design...
Design Value that Sticks: Practical Experience with Mandatory Advisory Design...Design Value that Sticks: Practical Experience with Mandatory Advisory Design...
Design Value that Sticks: Practical Experience with Mandatory Advisory Design...
 
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIP
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIPISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIP
ISCRAM 2013: A CBR Detection Framework Using Fuzzy Logic- WIP
 
Diagrama de flujo
Diagrama de flujoDiagrama de flujo
Diagrama de flujo
 
Madrid Spring 2014
Madrid Spring 2014Madrid Spring 2014
Madrid Spring 2014
 
Wvu uof l
Wvu uof lWvu uof l
Wvu uof l
 
Sesion 5 nataya
Sesion 5 natayaSesion 5 nataya
Sesion 5 nataya
 
Sesion 4 narrativa san ricardo
Sesion 4 narrativa san ricardoSesion 4 narrativa san ricardo
Sesion 4 narrativa san ricardo
 
El internet y las redes sociales
El internet y las redes socialesEl internet y las redes sociales
El internet y las redes sociales
 
Fingerprints images
Fingerprints imagesFingerprints images
Fingerprints images
 
HassettAutomotive.org_2009 AAA Aggressive Driving Research Update
HassettAutomotive.org_2009 AAA Aggressive Driving Research UpdateHassettAutomotive.org_2009 AAA Aggressive Driving Research Update
HassettAutomotive.org_2009 AAA Aggressive Driving Research Update
 
Cantabria SP2014
Cantabria SP2014Cantabria SP2014
Cantabria SP2014
 
Reinforcer assessment
Reinforcer assessmentReinforcer assessment
Reinforcer assessment
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Jacinto jesus alfaro
Jacinto jesus alfaroJacinto jesus alfaro
Jacinto jesus alfaro
 
Teoria De Restricionees
Teoria De RestricioneesTeoria De Restricionees
Teoria De Restricionees
 

Similar a Vietnam Mobile Day 2013: JSON, Memory Usage & Interaction Design

Phonegap - An Introduction
Phonegap - An IntroductionPhonegap - An Introduction
Phonegap - An IntroductionTyler Johnston
 
Use Case: integrating a complex e-commerce site - Frenchtoday.com
Use Case: integrating a complex e-commerce site - Frenchtoday.comUse Case: integrating a complex e-commerce site - Frenchtoday.com
Use Case: integrating a complex e-commerce site - Frenchtoday.comOlivier Karfis
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesAndy_Gaskell
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Creating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone GapCreating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone GapFITC
 
Beyond the Desktop: Sites and Apps for Phones and Tablets
Beyond the Desktop: Sites and Apps for Phones and TabletsBeyond the Desktop: Sites and Apps for Phones and Tablets
Beyond the Desktop: Sites and Apps for Phones and TabletsWebvanta
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Indiginox
 
Vn mobile day2013 - zalo sharing
Vn mobile day2013 - zalo sharingVn mobile day2013 - zalo sharing
Vn mobile day2013 - zalo sharingThanh Dao
 
What is your mobile strategy?
What is your mobile strategy?What is your mobile strategy?
What is your mobile strategy?Emily Massey
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesExtreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesMaximiliano Firtman
 
Windows Phone Dev Day Bournemouth Presentation
Windows Phone Dev Day Bournemouth PresentationWindows Phone Dev Day Bournemouth Presentation
Windows Phone Dev Day Bournemouth PresentationJames Mundy
 
Building Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptBuilding Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptJonathan Stark
 
Isomorphic Aplication with Javascript
Isomorphic Aplication with JavascriptIsomorphic Aplication with Javascript
Isomorphic Aplication with JavascriptHengki Sihombing
 
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...AiTi Education
 
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPIntroduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPKeyLimeTie
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonnyLama K Banna
 

Similar a Vietnam Mobile Day 2013: JSON, Memory Usage & Interaction Design (20)

Phonegap - An Introduction
Phonegap - An IntroductionPhonegap - An Introduction
Phonegap - An Introduction
 
Use Case: integrating a complex e-commerce site - Frenchtoday.com
Use Case: integrating a complex e-commerce site - Frenchtoday.comUse Case: integrating a complex e-commerce site - Frenchtoday.com
Use Case: integrating a complex e-commerce site - Frenchtoday.com
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiences
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Creating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone GapCreating a Comprehensive Social Media App Using Ionic and Phone Gap
Creating a Comprehensive Social Media App Using Ionic and Phone Gap
 
Beyond the Desktop: Sites and Apps for Phones and Tablets
Beyond the Desktop: Sites and Apps for Phones and TabletsBeyond the Desktop: Sites and Apps for Phones and Tablets
Beyond the Desktop: Sites and Apps for Phones and Tablets
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?
 
Vn mobile day2013 - zalo sharing
Vn mobile day2013 - zalo sharingVn mobile day2013 - zalo sharing
Vn mobile day2013 - zalo sharing
 
What is your mobile strategy?
What is your mobile strategy?What is your mobile strategy?
What is your mobile strategy?
 
Simple mobile Websites
Simple mobile WebsitesSimple mobile Websites
Simple mobile Websites
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesExtreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices
 
Windows Phone Dev Day Bournemouth Presentation
Windows Phone Dev Day Bournemouth PresentationWindows Phone Dev Day Bournemouth Presentation
Windows Phone Dev Day Bournemouth Presentation
 
Building Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptBuilding Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScript
 
Mobile web performance dwx13
Mobile web performance dwx13Mobile web performance dwx13
Mobile web performance dwx13
 
Php ey final
Php ey finalPhp ey final
Php ey final
 
Isomorphic Aplication with Javascript
Isomorphic Aplication with JavascriptIsomorphic Aplication with Javascript
Isomorphic Aplication with Javascript
 
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...
[Vietnam Mobile Day 2013] - Developing a mobile messenger for the audience of...
 
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPIntroduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonny
 

Más de GameLandVN

Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian women
Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian womenMobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian women
Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian womenGameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...GameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in India
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in IndiaMobile Game Asia 2015 Ho Chi Minh City: Mobile game market in India
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in IndiaGameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...GameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...GameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...GameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video ads
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video adsMobile Game Asia 2015 Ho Chi Minh City: Rewarded video ads
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video adsGameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in Vietnam
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in VietnamMobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in Vietnam
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in VietnamGameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetization
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetizationMobile Game Asia 2015 Ho Chi Minh City: Predictive monetization
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetizationGameLandVN
 
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creation
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creationMobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creation
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creationGameLandVN
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureGameLandVN
 
Windows app & Microsoft's support
Windows app & Microsoft's supportWindows app & Microsoft's support
Windows app & Microsoft's supportGameLandVN
 
Kinh nghiệm phát triển Captain Strike
Kinh nghiệm phát triển Captain StrikeKinh nghiệm phát triển Captain Strike
Kinh nghiệm phát triển Captain StrikeGameLandVN
 
Microsoft BizSpark
Microsoft BizSparkMicrosoft BizSpark
Microsoft BizSparkGameLandVN
 
Microsoft Azure Introduction
Microsoft Azure IntroductionMicrosoft Azure Introduction
Microsoft Azure IntroductionGameLandVN
 
OGDC 2014: Animation workflow with Spine in Tiny Busters
OGDC 2014: Animation workflow with Spine in Tiny BustersOGDC 2014: Animation workflow with Spine in Tiny Busters
OGDC 2014: Animation workflow with Spine in Tiny BustersGameLandVN
 
OGDC 2014: Vietnam Smartphone game market 2013 overview
OGDC 2014: Vietnam Smartphone game market 2013 overviewOGDC 2014: Vietnam Smartphone game market 2013 overview
OGDC 2014: Vietnam Smartphone game market 2013 overviewGameLandVN
 
OGDC 2014: Speed up and make quality for your 3d models
OGDC 2014: Speed up and make quality for your 3d modelsOGDC 2014: Speed up and make quality for your 3d models
OGDC 2014: Speed up and make quality for your 3d modelsGameLandVN
 
OGDC 2014: Sky Garden Mobile conceptualization: From PC to Mobile
OGDC 2014: Sky Garden Mobile conceptualization: From PC to MobileOGDC 2014: Sky Garden Mobile conceptualization: From PC to Mobile
OGDC 2014: Sky Garden Mobile conceptualization: From PC to MobileGameLandVN
 
OGDC 2014: One-Man Studio: How to make a game prototype
OGDC 2014: One-Man Studio: How to make a game prototypeOGDC 2014: One-Man Studio: How to make a game prototype
OGDC 2014: One-Man Studio: How to make a game prototypeGameLandVN
 

Más de GameLandVN (20)

Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian women
Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian womenMobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian women
Mobile Game Asia 2015 Ho Chi Minh City: Mobile games for Asian women
 
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...
Mobile Game Asia 2015 Ho Chi Minh City: Vietnam online mobile game market ins...
 
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in India
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in IndiaMobile Game Asia 2015 Ho Chi Minh City: Mobile game market in India
Mobile Game Asia 2015 Ho Chi Minh City: Mobile game market in India
 
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...
Mobile Game Asia 2015 Ho Chi Minh City: Building a sustainable eSports ecosys...
 
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...
Mobile Game Asia 2015 Ho Chi Minh City: An overview of the mobile game market...
 
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...
Mobile Game Asia 2015 Ho Chi Minh City: Monetization strategies in Southeast ...
 
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video ads
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video adsMobile Game Asia 2015 Ho Chi Minh City: Rewarded video ads
Mobile Game Asia 2015 Ho Chi Minh City: Rewarded video ads
 
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in Vietnam
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in VietnamMobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in Vietnam
Mobile Game Asia 2015 Ho Chi Minh City: The role of a game publisher in Vietnam
 
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetization
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetizationMobile Game Asia 2015 Ho Chi Minh City: Predictive monetization
Mobile Game Asia 2015 Ho Chi Minh City: Predictive monetization
 
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creation
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creationMobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creation
Mobile Game Asia 2015 Ho Chi Minh City: The roadmap of IP creation
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
Windows app & Microsoft's support
Windows app & Microsoft's supportWindows app & Microsoft's support
Windows app & Microsoft's support
 
Kinh nghiệm phát triển Captain Strike
Kinh nghiệm phát triển Captain StrikeKinh nghiệm phát triển Captain Strike
Kinh nghiệm phát triển Captain Strike
 
Microsoft BizSpark
Microsoft BizSparkMicrosoft BizSpark
Microsoft BizSpark
 
Microsoft Azure Introduction
Microsoft Azure IntroductionMicrosoft Azure Introduction
Microsoft Azure Introduction
 
OGDC 2014: Animation workflow with Spine in Tiny Busters
OGDC 2014: Animation workflow with Spine in Tiny BustersOGDC 2014: Animation workflow with Spine in Tiny Busters
OGDC 2014: Animation workflow with Spine in Tiny Busters
 
OGDC 2014: Vietnam Smartphone game market 2013 overview
OGDC 2014: Vietnam Smartphone game market 2013 overviewOGDC 2014: Vietnam Smartphone game market 2013 overview
OGDC 2014: Vietnam Smartphone game market 2013 overview
 
OGDC 2014: Speed up and make quality for your 3d models
OGDC 2014: Speed up and make quality for your 3d modelsOGDC 2014: Speed up and make quality for your 3d models
OGDC 2014: Speed up and make quality for your 3d models
 
OGDC 2014: Sky Garden Mobile conceptualization: From PC to Mobile
OGDC 2014: Sky Garden Mobile conceptualization: From PC to MobileOGDC 2014: Sky Garden Mobile conceptualization: From PC to Mobile
OGDC 2014: Sky Garden Mobile conceptualization: From PC to Mobile
 
OGDC 2014: One-Man Studio: How to make a game prototype
OGDC 2014: One-Man Studio: How to make a game prototypeOGDC 2014: One-Man Studio: How to make a game prototype
OGDC 2014: One-Man Studio: How to make a game prototype
 

Último

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Último (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Vietnam Mobile Day 2013: JSON, Memory Usage & Interaction Design

  • 1. JSON, Memory Usage & Interaction Design Experience in Boosting Performance for an iOS / Android Application Lucas Nguyen VINOVA Pte. Ltd. info@vinova.sg
  • 2. About VINOVA •  Vinova = Vibrant Innovators –  iOS / Android / Windows Phone –  For Singapore Enterprises & Organizations •  2010 Founded in Singapore •  2011 Representative Office in Hanoi •  2012+ Push for Mobile Game
  • 3. About ME •  Lead Mobile Developer at VINOVA •  3-year experience on Native iOS, Android, and Cross-Platform Technologies •  Backend Web Services using Ruby on Rails Lucas Nguyen  
  • 4. Great Client Singapore Press Holdings (SPH) - 
 Southeast Asia’s Leading Media Organization
  • 5. Big PROJECT •  Straits Times Online Mobile Print (STOMP) •  Award-winning website & mobile app •  Singaporean connecting, engaging and interacting •  0.5m concurrent users at peak hours •  1.8m page-views per day
  • 6. MISSION Revamp a very popular iOS & Android app to serve end-users better, faster! STOMP v1 STOMP v2
  • 8. New version Challenges: •  Complex Design •  Lots of Advertisement Banners •  Old, Slow & Heavy APIs (14.7MB of XML in total)
  • 9. 1-Star Rating User Complains Client’s Dissatisfaction App Crashes & Hangs When We Took Over The Project
  • 10. What Did We Think? F i n d       t h e         s o l u t i o n  
  • 11. How Did We Solve The Problem? 1 2 3
  • 12. XML to JSON Conversion •  Heavy •  Slow •  Uncontrolled •  Light •  Fast •  Controlled Lightning Server
  • 13. Remove reduntdant data •  Full image URLs? NO! •  Just need [id] and [token] to regenerate the URL –  thumbnail: http://dswww.stomp.com.sg/site/servlet/ iphone/photo?photoId=#{id} –  image: http://static.stomp.com.sg/site/servlet/ linkableblob/stomp/#{id}/data/#{token}-data.jpg {! id: "1668324” ! title: ”Butter Factory’s…”,! thumbnails: […],! images: […]! }!
  • 14. JSON Optimization Article items: •  Small •  A lot •  Need to parse first! à Keep raw Article detail: •  Big •  Need one at a time •  Have more time to parse
 à Gzip to binary à Encode base64
  • 15. Our JSON format •  Primary data for main screen (categories & articles listing) •  Secondary data for article detail screen {! id: "1668324” ! title: ”Butter Factory’s…”,! }! "eNp1VF2v2zYM/SuEnzYgTfz90bcVaDdcoN...“   {! "date" => "26 Mar 2013",! "views" => "16160",! "comments" => "53",! "content" => ”A 61-year-old retiree…”,! "photos" => [...]! }! Unpacked
  • 16. Best compression method Format   Size  (MB)   %  Remaining    Raw  XML   14.7  MB   100%   (1)  Compact  JSON   6.0  MB   40%   (2)  Compressed  &  Compact  JSON   3.8  MB   25%   (3)  Compressed  &  Compact  BSON   2.9  MB   20%   Best of both worlds: •  ¼ size reduced •  Easy to read •  Easy to decode with popular libs •  Much Faster & Lighter APIs •  Easier to scale (using CDN) •  Smaller Mobile Memory Usage
  • 17. Watch Out for Memory Usage Memory Usage
  • 18. Memory Allocation 100  MB     20  MB   using allocate 10  MB   using allocate 20  MB   Before   AHer  
  • 19. Load remote data one-by-one If load 3 ~ 5 categories at the same time à Allocate 10MB ~ 25MB simutaneously à Memory Warning
  • 20. Release memory allocated for off-screen list items Smartphone’s screen is small à  No need to show more than 5 categories at once à  Release all invisible components to reduce memory usage 1 2 3 4 5
  • 21. Photos are dangrous, just like girls •  Only load visible photos! •  Large photo is beautiful, but: –  Take more bandwidth –  Take more memory & GPU to render Photos Quan9ty Avg.  Size Memory  Usage high res. 20  ~  24 ~30KB 10MB  ~  15MB low res. 20  ~  24 ~05KB 03MB  ~  04MB
  • 22. ad banners take LotS of memory 1MB  Image   +   memory  for  Views  
  • 23. Interaction DesiGn Don’t Follow the Design Strictly
  • 24. One mission per screen One  big  screen:   ArTcle  +  Comments   ArTcle   Comments   Separate   •  Not everyone needs to see comments •  Better UX •  Lighter UI
  • 25. User is touching, not clicking, make it easy •  Original designed button is small 
 à hard to see and touch •  Make it wider! Original Wider
  • 26. Test on low-end devices iPhone-5 iPhone-4S iPhone-4 iPhone-3GS 1GB 512 MB 512 MB 256 MB Dual-core 1.2 GHz Dual-core 1 GHz 1 GHz 600 MHz
  • 27. Don’t Believe in Anything ... •  No assumptions •  Update 3rd party libraries usually •  APIs won’t work 100% •  Handle exceptions
  • 30. Vibrant Innovators Những người đổi mới đầy nhiệt huyết