Tuenti Mobile by Davide Mendolia
Mobile devices are becoming one of the most used platform to connect to Internet, In Tuenti we are putting a focus on mobile platforms through applications and mobile web, discover how we are building m.tuenti.com.
Use of a palette of technologies like mobile device detection and capabilities on the server and the client side that help us to server different version as Plain HTML or HTML5.
How we try to bring the best user experience to every device adapting the possibles interactions based on the features or limitations of each them.
2. The strategy
• Same content on Desktop and Mobile
• Native Applications for mainstream
operating system
• Mobile website supporting most of the
the platforms
18. C Grade
• Similar to B Grade
• Dedicated to old phones
• Windows Mobile
• Blackberry Os <4.6
19. Screen size
All the way from the BlackBerry Curve 8520(320x240) to the Galaxy
Nexus(720 x 1280), we serve the adapted image size.
20. Pixel density
Using High and Low version of CSS.
And special version for console like for the PSP.
21. • Tracking
• User Agent, Device
• Device page views
• Device usage
• Tools
•Google Analytics for mobile
•Hadoop logging
22. Feature detection
• Server side
• Browser grade
• Screen size and density
• Client Side - Javascript/CSS
•Screen size and density
•Geolocation
23. Server Side
• Device Description Repository
• RegEx Matching
• UserAgent approximation match
• WURFL Database
• Issues:
• Update frequency
• Database accuracy
24. Client Side
• Javascript
• Screen size
• Pixel density
• CSS media queries
• assets density
• Issues:
• First request approximation
• Only recent browser support it
• CSS overhead
25. Performance
• All Desktop best practices
• PCAP Web Performance Analyzer
• http://pcapperf.appspot.com
• Waterfall view
• PageSpeed analysis
31. What’s next ?
• DeviceApi
• Battery status
• Contacts (reading from addressbook)
• HTML Media Capture(camera/microphone
interactions through HTML forms)
• Messaging (SMS, MMS, emails)
• Network Information API
• Sensor API
• Vibration API
• ...