SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Building a Real-Time HTML5 App
       for Mobile Devices
          Tony Abou-Assaleh
      Co-founder & CTO, TitanFile

          taa@titanfile.com
          Twitter: @tony_aa

    Mobile P2P – November 14, 2012
About me …
• PhD in … natural language processing
  – Not mobile
• Ex-Googler .. in ads
  – Not mobile
• Hardcore backend programmer
• Past year - TitanFile: RT SPA
  – HTML5/JS/CSS/Async/Django/…
Agenda
•   Why HTML5?
•   Challenges
•   Design Tips
•   “Real-time” Tips
•   Mobile HTML5 Myths
Why HTML5?
Why HTML5?
•   Cross-platform
•   W3C standard
•   Open source
•   Lots of libraries
•   Transferable skills
•   Cordova = native
•   It’s easy! Just HTML + JS + CSS + Backend
Or so we thought …
Why not HTML5?
•   Not cross-platform
•   Standard-in-progress
•   Open Source – yeah right!
•   Lots of libraries that don’t work
•   Cordova Native
•   It’s NOT just HTML + JS + CSS + Backend
So why HTML5?
So why HTML5?
• Gets you to give a talk at mobile P2P
• Still easier than native
• Transferable skills
Challenges
Website Web App
•   Single Page App
•   Background Data Sync
•   Asynchronous Processing
•   Responsiveness
•   Design
Web App     Mobile App
•   Usage Patterns
•   Touch Events
•   Drag-and-drop
•   Scrolling
•   Pixel Ratio
Web iPad Android PlayBook BB10
Design Tips
Design Tips
•   Start with design, not prototype
•   Images, not button
•   Avoid text links
•   No modal dialogues
•   Use CSS media queries
•   Provide hi-res images as needed
“Real-Time” Tips
“Real-Time” Tips - Tools
• Use Font-end Framework
  – Backbone/Marionette/Relational
• Use Back-end Framework
  – Django/Tornado/Celery
• Use WebSocket Wrapper
  – Socket.io or SockJS
• Use a CSS Framework
  – Bootstrap
• Write your own!
“Real-Time” Tips - Data
• Server push-events
• Asynchronous Processing
• Incremental Loading
“Real-Time” Tips – Front-end
•   Only render visible DOM
•   No anchor tags
•   No HTML5 drag-and-drop
•   Use native scrolling
Mobile HTML5 Myths
Myth 1: HTML5 is Cross-Platform
Myth 2: HTML5 is Slow
• Not if …
  – Load data incrementally
  – Only render what’s visible
  – User global event listeners
  – User WebKit CSS transforms
• Hardware Acceleration
Myth 3: Not as effective as Native
Summary
• Developing HTML5 mobile apps is …
  – Easier than native
  – Cheaper than native
  – Tricky
  – Fun!

Weitere ähnliche Inhalte

Was ist angesagt?

Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Sentri
 
Get responsive in 30 minutes (WordCamp Sofia)
Get responsive in 30 minutes (WordCamp Sofia)Get responsive in 30 minutes (WordCamp Sofia)
Get responsive in 30 minutes (WordCamp Sofia)Nickolay Ninarski
 
The Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from ClojureThe Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from ClojureHsuan Fu Lien
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
Untangling - fall2017 - week5
Untangling - fall2017 - week5Untangling - fall2017 - week5
Untangling - fall2017 - week5Derek Jacoby
 
How HTML5 missed its graduation - #TrondheimDC
How HTML5 missed its graduation - #TrondheimDCHow HTML5 missed its graduation - #TrondheimDC
How HTML5 missed its graduation - #TrondheimDCChristian Heilmann
 
HTML5 – the good, the bad, and the fun
HTML5 – the good, the bad, and the funHTML5 – the good, the bad, and the fun
HTML5 – the good, the bad, and the funSarah Dutkiewicz
 
Edy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev ConfEdy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev ConfEdy Dawson
 
Working connected to create offline - Trondheim Developer Conference 2014
Working connected to create offline - Trondheim Developer Conference 2014Working connected to create offline - Trondheim Developer Conference 2014
Working connected to create offline - Trondheim Developer Conference 2014Christian Heilmann
 
Breaking into front end development (
Breaking into front end development (Breaking into front end development (
Breaking into front end development (Sarah Hudson
 
WordPress Blogs 101
WordPress Blogs 101WordPress Blogs 101
WordPress Blogs 101Tom McGee
 
Begin with Genesis
Begin with GenesisBegin with Genesis
Begin with GenesisTara Claeys
 
Building Websites with WordPress UBC Summer 2012
Building Websites with WordPress UBC Summer 2012Building Websites with WordPress UBC Summer 2012
Building Websites with WordPress UBC Summer 2012Tris Hussey
 
Core Data in RubyMotion #inspect
Core Data in RubyMotion #inspectCore Data in RubyMotion #inspect
Core Data in RubyMotion #inspectLori Olson
 

Was ist angesagt? (19)

Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012
 
Get responsive in 30 minutes (WordCamp Sofia)
Get responsive in 30 minutes (WordCamp Sofia)Get responsive in 30 minutes (WordCamp Sofia)
Get responsive in 30 minutes (WordCamp Sofia)
 
GCC 11-13-15
GCC 11-13-15GCC 11-13-15
GCC 11-13-15
 
The Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from ClojureThe Ideas of Clojure - Things I learn from Clojure
The Ideas of Clojure - Things I learn from Clojure
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Untangling - fall2017 - week5
Untangling - fall2017 - week5Untangling - fall2017 - week5
Untangling - fall2017 - week5
 
How HTML5 missed its graduation - #TrondheimDC
How HTML5 missed its graduation - #TrondheimDCHow HTML5 missed its graduation - #TrondheimDC
How HTML5 missed its graduation - #TrondheimDC
 
Beyond the 5 minute install
Beyond the 5 minute installBeyond the 5 minute install
Beyond the 5 minute install
 
Web Designing
Web DesigningWeb Designing
Web Designing
 
HTML5 – the good, the bad, and the fun
HTML5 – the good, the bad, and the funHTML5 – the good, the bad, and the fun
HTML5 – the good, the bad, and the fun
 
Edy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev ConfEdy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev Conf
 
Working connected to create offline - Trondheim Developer Conference 2014
Working connected to create offline - Trondheim Developer Conference 2014Working connected to create offline - Trondheim Developer Conference 2014
Working connected to create offline - Trondheim Developer Conference 2014
 
Breaking into front end development (
Breaking into front end development (Breaking into front end development (
Breaking into front end development (
 
Jumpstart Your Web App
Jumpstart Your Web AppJumpstart Your Web App
Jumpstart Your Web App
 
Standardizing WordPress Workflow
Standardizing WordPress WorkflowStandardizing WordPress Workflow
Standardizing WordPress Workflow
 
WordPress Blogs 101
WordPress Blogs 101WordPress Blogs 101
WordPress Blogs 101
 
Begin with Genesis
Begin with GenesisBegin with Genesis
Begin with Genesis
 
Building Websites with WordPress UBC Summer 2012
Building Websites with WordPress UBC Summer 2012Building Websites with WordPress UBC Summer 2012
Building Websites with WordPress UBC Summer 2012
 
Core Data in RubyMotion #inspect
Core Data in RubyMotion #inspectCore Data in RubyMotion #inspect
Core Data in RubyMotion #inspect
 

Andere mochten auch

The Real-time Police Force: Publishing Analytic Information to the Field with...
The Real-time Police Force: Publishing Analytic Information to the Field with...The Real-time Police Force: Publishing Analytic Information to the Field with...
The Real-time Police Force: Publishing Analytic Information to the Field with...Azavea
 
Tajinder Presentation6
Tajinder Presentation6Tajinder Presentation6
Tajinder Presentation6Tajinder Singh
 
Crime Time
Crime TimeCrime Time
Crime Timesbillia
 
Mapping The Fear of Crime
Mapping The Fear of CrimeMapping The Fear of Crime
Mapping The Fear of Crimechippy
 
International Study on Women’s Personal Security and Public Transport – Phase...
International Study on Women’s Personal Security and Public Transport – Phase...International Study on Women’s Personal Security and Public Transport – Phase...
International Study on Women’s Personal Security and Public Transport – Phase...WRI Ross Center for Sustainable Cities
 
3D Reality Tracking in Realtime - Team Hendy-Sigit
3D Reality Tracking in Realtime - Team Hendy-Sigit3D Reality Tracking in Realtime - Team Hendy-Sigit
3D Reality Tracking in Realtime - Team Hendy-SigitHendy Irawan
 
Crime Analysis & Prediction System
Crime Analysis & Prediction SystemCrime Analysis & Prediction System
Crime Analysis & Prediction SystemBigDataCloud
 
Chapter 29 Domain Name System.ppt
Chapter 29 Domain Name System.pptChapter 29 Domain Name System.ppt
Chapter 29 Domain Name System.pptwebhostingguy
 

Andere mochten auch (9)

The Real-time Police Force: Publishing Analytic Information to the Field with...
The Real-time Police Force: Publishing Analytic Information to the Field with...The Real-time Police Force: Publishing Analytic Information to the Field with...
The Real-time Police Force: Publishing Analytic Information to the Field with...
 
Tajinder Presentation6
Tajinder Presentation6Tajinder Presentation6
Tajinder Presentation6
 
Crime Time
Crime TimeCrime Time
Crime Time
 
Mapping The Fear of Crime
Mapping The Fear of CrimeMapping The Fear of Crime
Mapping The Fear of Crime
 
International Study on Women’s Personal Security and Public Transport – Phase...
International Study on Women’s Personal Security and Public Transport – Phase...International Study on Women’s Personal Security and Public Transport – Phase...
International Study on Women’s Personal Security and Public Transport – Phase...
 
3D Reality Tracking in Realtime - Team Hendy-Sigit
3D Reality Tracking in Realtime - Team Hendy-Sigit3D Reality Tracking in Realtime - Team Hendy-Sigit
3D Reality Tracking in Realtime - Team Hendy-Sigit
 
Crime Analysis & Prediction System
Crime Analysis & Prediction SystemCrime Analysis & Prediction System
Crime Analysis & Prediction System
 
Chapter 29 Domain Name System.ppt
Chapter 29 Domain Name System.pptChapter 29 Domain Name System.ppt
Chapter 29 Domain Name System.ppt
 
Dns ppt
Dns pptDns ppt
Dns ppt
 

Ähnlich wie Building a real time html5 app for mobile devices

Native vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentNative vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentSenthil Kumar Kaliathan
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Week01 jan19 introductionto_php
Week01 jan19 introductionto_phpWeek01 jan19 introductionto_php
Week01 jan19 introductionto_phpJeanho Chu
 
RPA on Azure with .Net
RPA on Azure with .NetRPA on Azure with .Net
RPA on Azure with .NetMarco Parenzan
 
Notes From Velocity Conference Europe
Notes From Velocity Conference EuropeNotes From Velocity Conference Europe
Notes From Velocity Conference EuropeSiriusWay
 
Prototyping like it is 2022
Prototyping like it is 2022 Prototyping like it is 2022
Prototyping like it is 2022 Michael Yagudaev
 
Rapid Evolution of Web Dev? aka Talking About The Web
Rapid Evolution of Web Dev? aka Talking About The WebRapid Evolution of Web Dev? aka Talking About The Web
Rapid Evolution of Web Dev? aka Talking About The WebPINT Inc
 
Greenfield Java 2013
Greenfield Java 2013Greenfield Java 2013
Greenfield Java 2013Will Iverson
 
BBC News: Responsive Web Design and Mustard
BBC News: Responsive Web Design and MustardBBC News: Responsive Web Design and Mustard
BBC News: Responsive Web Design and MustardKaelig Deloumeau-Prigent
 
Html5 - the new kid on the block
Html5 - the new kid on the blockHtml5 - the new kid on the block
Html5 - the new kid on the blockMarian Borca
 
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
 
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...Tieturi Oy
 
Rapid and Responsive - UX to Prototype with Bootstrap
Rapid and Responsive - UX to Prototype with BootstrapRapid and Responsive - UX to Prototype with Bootstrap
Rapid and Responsive - UX to Prototype with BootstrapJosh Jeffryes
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of FrontendJimit Shah
 
Week01 jan19 introductionto_php
Week01 jan19 introductionto_phpWeek01 jan19 introductionto_php
Week01 jan19 introductionto_phpJeanho Chu
 
Going mobile with RichFaces
Going mobile with RichFacesGoing mobile with RichFaces
Going mobile with RichFacesLukáš Fryč
 

Ähnlich wie Building a real time html5 app for mobile devices (20)

Native vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentNative vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App Development
 
2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Week01 jan19 introductionto_php
Week01 jan19 introductionto_phpWeek01 jan19 introductionto_php
Week01 jan19 introductionto_php
 
RPA on Azure with .Net
RPA on Azure with .NetRPA on Azure with .Net
RPA on Azure with .Net
 
Notes From Velocity Conference Europe
Notes From Velocity Conference EuropeNotes From Velocity Conference Europe
Notes From Velocity Conference Europe
 
Prototyping like it is 2022
Prototyping like it is 2022 Prototyping like it is 2022
Prototyping like it is 2022
 
Rapid Evolution of Web Dev? aka Talking About The Web
Rapid Evolution of Web Dev? aka Talking About The WebRapid Evolution of Web Dev? aka Talking About The Web
Rapid Evolution of Web Dev? aka Talking About The Web
 
Greenfield Java 2013
Greenfield Java 2013Greenfield Java 2013
Greenfield Java 2013
 
BBC News: Responsive Web Design and Mustard
BBC News: Responsive Web Design and MustardBBC News: Responsive Web Design and Mustard
BBC News: Responsive Web Design and Mustard
 
Html5 - the new kid on the block
Html5 - the new kid on the blockHtml5 - the new kid on the block
Html5 - the new kid on the block
 
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
 
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...
27.1.2014, Tampere. Perinteinen mobiilimaailma murroksessa. Petri Niemi: Sing...
 
Future of Mobile
Future of MobileFuture of Mobile
Future of Mobile
 
DjangoSki
DjangoSkiDjangoSki
DjangoSki
 
Week01 jan19
Week01 jan19Week01 jan19
Week01 jan19
 
Rapid and Responsive - UX to Prototype with Bootstrap
Rapid and Responsive - UX to Prototype with BootstrapRapid and Responsive - UX to Prototype with Bootstrap
Rapid and Responsive - UX to Prototype with Bootstrap
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of Frontend
 
Week01 jan19 introductionto_php
Week01 jan19 introductionto_phpWeek01 jan19 introductionto_php
Week01 jan19 introductionto_php
 
Going mobile with RichFaces
Going mobile with RichFacesGoing mobile with RichFaces
Going mobile with RichFaces
 

Kürzlich hochgeladen

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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 

Kürzlich hochgeladen (20)

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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
+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...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

Building a real time html5 app for mobile devices

  • 1. Building a Real-Time HTML5 App for Mobile Devices Tony Abou-Assaleh Co-founder & CTO, TitanFile taa@titanfile.com Twitter: @tony_aa Mobile P2P – November 14, 2012
  • 2. About me … • PhD in … natural language processing – Not mobile • Ex-Googler .. in ads – Not mobile • Hardcore backend programmer • Past year - TitanFile: RT SPA – HTML5/JS/CSS/Async/Django/…
  • 3. Agenda • Why HTML5? • Challenges • Design Tips • “Real-time” Tips • Mobile HTML5 Myths
  • 5. Why HTML5? • Cross-platform • W3C standard • Open source • Lots of libraries • Transferable skills • Cordova = native • It’s easy! Just HTML + JS + CSS + Backend
  • 6. Or so we thought …
  • 7. Why not HTML5? • Not cross-platform • Standard-in-progress • Open Source – yeah right! • Lots of libraries that don’t work • Cordova Native • It’s NOT just HTML + JS + CSS + Backend
  • 9. So why HTML5? • Gets you to give a talk at mobile P2P • Still easier than native • Transferable skills
  • 11.
  • 12.
  • 13. Website Web App • Single Page App • Background Data Sync • Asynchronous Processing • Responsiveness • Design
  • 14. Web App Mobile App • Usage Patterns • Touch Events • Drag-and-drop • Scrolling • Pixel Ratio
  • 15. Web iPad Android PlayBook BB10
  • 17. Design Tips • Start with design, not prototype • Images, not button • Avoid text links • No modal dialogues • Use CSS media queries • Provide hi-res images as needed
  • 19. “Real-Time” Tips - Tools • Use Font-end Framework – Backbone/Marionette/Relational • Use Back-end Framework – Django/Tornado/Celery • Use WebSocket Wrapper – Socket.io or SockJS • Use a CSS Framework – Bootstrap • Write your own!
  • 20. “Real-Time” Tips - Data • Server push-events • Asynchronous Processing • Incremental Loading
  • 21. “Real-Time” Tips – Front-end • Only render visible DOM • No anchor tags • No HTML5 drag-and-drop • Use native scrolling
  • 23.
  • 24. Myth 1: HTML5 is Cross-Platform
  • 25. Myth 2: HTML5 is Slow • Not if … – Load data incrementally – Only render what’s visible – User global event listeners – User WebKit CSS transforms • Hardware Acceleration
  • 26. Myth 3: Not as effective as Native
  • 27. Summary • Developing HTML5 mobile apps is … – Easier than native – Cheaper than native – Tricky – Fun!

Hinweis der Redaktion

  1. Read .. AND WRITE Java Byte CodeCompile C to Assembly, by handDream in regular expressions
  2. Mobilehtml5.org