SlideShare uma empresa Scribd logo
1 de 37
Baixar para ler offline
Mobile Web Is Here



Tuesday, September 18, 12
Agenda

                  The Mobile Eco System

                  Challenges for Mobile Developers

                  Mobile Web To The Rescue

                  Online Resources




Tuesday, September 18, 12
The Mobile Eco System




Tuesday, September 18, 12
The Mobile Eco System
                                   Almost
                                    Dead


                 Almost
                            Dead   Dead
                  Dead




Tuesday, September 18, 12
How We Got Here
                  1990, started using 2G
                  systems

                  1992, First SMS

                  1998, First ringtone
                  sale

                  1999, First mobile
                  internet in Japan



Tuesday, September 18, 12
How We Got Here
                  2G was good for talk,
                  not good enough for
                  data

                  2001, First 3G network
                  in Japan

                  2007, 295 Mil
                  subscribers on 3G
                  networks worldwide


Tuesday, September 18, 12
Modern Mobile Device
                  3G or 3.5G capable

                  Internet Connectivity

                  Voice and Video calls

                  No longer used “just
                  for talking”

                  Supports Apps



Tuesday, September 18, 12
Major Players

                  Apple

                  Google

                  Nokia

                  Microsoft




Tuesday, September 18, 12
Apple
                  2007, first iPhone
                  device

                  iPhone Power

                        Focus on Design

                        Use Capacitive
                        Touchscreen

                        AppStore Built In


Tuesday, September 18, 12
Tuesday, September 18, 12
Google

                  2005 Google Buys
                  Android Inc

                  2007 Announcing
                  Android Platform

                  2008 HTC Dream (first
                  Android Device)




Tuesday, September 18, 12
Nokia

                  The Oldest player in
                  the game.

                  World’s largest phone
                  manufacturer.

                  Owner of the Symbian
                  OS.




Tuesday, September 18, 12
Microsoft
                  Known best for its
                  desktop applications.

                  Its mobile version
                  Windows Mobile was
                  never a success.

                  Its newest product
                  WinPhone7 looks
                  promising.


Tuesday, September 18, 12
Which One Should You
                  Choose ?
                  iPhone apps are written in Objective C.

                  Android apps are written in Java.

                  Symbian apps are written in C++.

                  Blackberry apps are written in Java (but not the
                  same Java as Android).

                  WinPhone apps are written in .NET



Tuesday, September 18, 12
ALL OF THEM
Tuesday, September 18, 12
Mobile HTML/CSS/JS

                  Web technology is the one thing all devices have
                  in common




Tuesday, September 18, 12
Mobile HTML/CSS/JS

                  Using HTML, CSS and JavaScript, we can write
                  applications that will run on any device.




Tuesday, September 18, 12
Mobile HTML/CSS/JS


                  These apps can run online or offline using HTML5
                  offline capabilities




Tuesday, September 18, 12
Mobile HTML/CSS/JS


                  Web apps can integrate
                  special device capabilities to
                  create Hybrid Applications




                                                   Music Waste Festival App

Tuesday, September 18, 12
Web Vs. Native
                              Write once, test     Write everywhere,
                     Coding
                              everywhere           Test everywhere


                              Use limited device   Use full device
                       Caps
                              capabilities         capabilities


                           Build your own UI       Use device UI
               Look & Feel
                           components              components



Tuesday, September 18, 12
Mobile HTML/CSS/JS

                  The App is a single html file, with many stylesheets
                  and script files.

                  Modular and OO JavaScript is used, to keep
                  “state”




Tuesday, September 18, 12
Mobile Web Challenges


                  Develop & Test on many platforms

                  Adjust UI to various screen sizes

                  Handle mobile UX




Tuesday, September 18, 12
MOBILE APP USER EXPERIENCE
Tuesday, September 18, 12
Mobile UX

                  App is used in short bursts - waiting for the bus or
                  subway

                  App is used while watching TV

                  App is interrupted by incoming call or SMS




Tuesday, September 18, 12
The Tools
             Code Less, Do More




Tuesday, September 18, 12
Writing Apps
                  Same source editor as the web

                  Can use:

                        Komodo Edit

                        Dashcode

                        MacVim/gvim/vim

                        Aptana Studio


Tuesday, September 18, 12
Writing Apps
                  But you should really just use Webstorm




Tuesday, September 18, 12
Debugging Apps -
                  Desktop

                  Use Safari/Chrome inspector tools to debug

                  Use Ripple to test your hybrid app from chrome

                  Use iPhone/Android Emulator

                  Use BrowserStack




Tuesday, September 18, 12
Debugging Apps -
                  Device


                  Use weinre For on device inspection




Tuesday, September 18, 12
Deploying Apps

                  For online apps, every web server will do.

                  For offline apps, consider PhoneGap

                  Before deployment, use a build script to minimize
                  js/css files




Tuesday, September 18, 12
Tips: Performance


                  jQuery is not your friend (consider jqmobi)

                  Test on a real device throughout development

                  Think about network traffic




Tuesday, September 18, 12
HTML5 Boilerplate

                  A ready made starter for html5 mobile apps

                  Cross-platform compatible (Android, iOS,
                  Blackberry, Symbian)

                  Supports all devices and overcomes many glitches

                  http://html5boilerplate.com/mobile/




Tuesday, September 18, 12
Mobile Frameworks


                  JQuery Mobile

                  Sencha Touch

                  jqMobi




Tuesday, September 18, 12
jQuery Mobile

                  Most hyped mobile framework today, and the one
                  we’ll use in the course.

                  Built on top of jQuery

                  Themed UI Widgets




Tuesday, September 18, 12
Sencha Touch


                  Stable and mature mobile framework

                  Works best on iPhone & Android

                  Commercial framework (currently free)




Tuesday, September 18, 12
Q&A



Tuesday, September 18, 12
Thanks For Listening


                  Ynon Perek

                  ynonperek@yahoo.com

                  ynonperek.com




Tuesday, September 18, 12

Mais conteúdo relacionado

Semelhante a 01 Mobile Web Introduction

06 HTML5 Mobile
06 HTML5 Mobile06 HTML5 Mobile
06 HTML5 MobileYnon Perek
 
Responsive Web Design & Workflow
Responsive Web Design & WorkflowResponsive Web Design & Workflow
Responsive Web Design & Workflowhouhr
 
Mobile Web App Development
Mobile Web App DevelopmentMobile Web App Development
Mobile Web App DevelopmentBrian LeRoux
 
Mobile Development with Icenium
Mobile Development with IceniumMobile Development with Icenium
Mobile Development with IceniumBill Condo
 
Hyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and JavascriptHyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and Javascriptnlwebperf
 
Creating Android Apps with PhoneGap
Creating Android Apps with PhoneGapCreating Android Apps with PhoneGap
Creating Android Apps with PhoneGapDean Peters
 
Cross Platform Mobile Development with Xamarin
Cross Platform Mobile Development with XamarinCross Platform Mobile Development with Xamarin
Cross Platform Mobile Development with XamarinJoe Koletar
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsAidan Tierney
 
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaApple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaArmedia LLC
 
iOS vs android .pptx
iOS  vs android .pptxiOS  vs android .pptx
iOS vs android .pptxabid masood
 
android technology
android technology android technology
android technology Sai Kumar
 

Semelhante a 01 Mobile Web Introduction (20)

Mobile & Me
Mobile & MeMobile & Me
Mobile & Me
 
07 PhoneGap
07 PhoneGap07 PhoneGap
07 PhoneGap
 
06 HTML5 Mobile
06 HTML5 Mobile06 HTML5 Mobile
06 HTML5 Mobile
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
 
Responsive Web Design & Workflow
Responsive Web Design & WorkflowResponsive Web Design & Workflow
Responsive Web Design & Workflow
 
Mobile Web App Development
Mobile Web App DevelopmentMobile Web App Development
Mobile Web App Development
 
The World Served on a Tablet
The World Served on a TabletThe World Served on a Tablet
The World Served on a Tablet
 
Mobile Development with Icenium
Mobile Development with IceniumMobile Development with Icenium
Mobile Development with Icenium
 
Zembly theaquarium-phpapp01
Zembly theaquarium-phpapp01Zembly theaquarium-phpapp01
Zembly theaquarium-phpapp01
 
Hyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and JavascriptHyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and Javascript
 
Build Killer Mobile Apps with Skuid
Build Killer Mobile Apps with SkuidBuild Killer Mobile Apps with Skuid
Build Killer Mobile Apps with Skuid
 
Creating Android Apps with PhoneGap
Creating Android Apps with PhoneGapCreating Android Apps with PhoneGap
Creating Android Apps with PhoneGap
 
Phone gap
Phone gapPhone gap
Phone gap
 
Ubiquitous Computing
Ubiquitous ComputingUbiquitous Computing
Ubiquitous Computing
 
Cross Platform Mobile Development with Xamarin
Cross Platform Mobile Development with XamarinCross Platform Mobile Development with Xamarin
Cross Platform Mobile Development with Xamarin
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & Trends
 
Adobe: Changing the game
Adobe: Changing the gameAdobe: Changing the game
Adobe: Changing the game
 
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaApple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
 
iOS vs android .pptx
iOS  vs android .pptxiOS  vs android .pptx
iOS vs android .pptx
 
android technology
android technology android technology
android technology
 

Mais de Ynon Perek

09 performance
09 performance09 performance
09 performanceYnon Perek
 
Mobile Web Intro
Mobile Web IntroMobile Web Intro
Mobile Web IntroYnon Perek
 
Qt multi threads
Qt multi threadsQt multi threads
Qt multi threadsYnon Perek
 
Mobile Devices
Mobile DevicesMobile Devices
Mobile DevicesYnon Perek
 
Architecture app
Architecture appArchitecture app
Architecture appYnon Perek
 
Unit Testing JavaScript Applications
Unit Testing JavaScript ApplicationsUnit Testing JavaScript Applications
Unit Testing JavaScript ApplicationsYnon Perek
 
How to write easy-to-test JavaScript
How to write easy-to-test JavaScriptHow to write easy-to-test JavaScript
How to write easy-to-test JavaScriptYnon Perek
 
Introduction to Selenium and Ruby
Introduction to Selenium and RubyIntroduction to Selenium and Ruby
Introduction to Selenium and RubyYnon Perek
 
Introduction To Web Application Testing
Introduction To Web Application TestingIntroduction To Web Application Testing
Introduction To Web Application TestingYnon Perek
 
Qt Design Patterns
Qt Design PatternsQt Design Patterns
Qt Design PatternsYnon Perek
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application SecurityYnon Perek
 

Mais de Ynon Perek (20)

Regexp
RegexpRegexp
Regexp
 
Html5 intro
Html5 introHtml5 intro
Html5 intro
 
09 performance
09 performance09 performance
09 performance
 
Mobile Web Intro
Mobile Web IntroMobile Web Intro
Mobile Web Intro
 
Qt multi threads
Qt multi threadsQt multi threads
Qt multi threads
 
Vimperl
VimperlVimperl
Vimperl
 
Syllabus
SyllabusSyllabus
Syllabus
 
Mobile Devices
Mobile DevicesMobile Devices
Mobile Devices
 
Network
NetworkNetwork
Network
 
Architecture app
Architecture appArchitecture app
Architecture app
 
Cryptography
CryptographyCryptography
Cryptography
 
Unit Testing JavaScript Applications
Unit Testing JavaScript ApplicationsUnit Testing JavaScript Applications
Unit Testing JavaScript Applications
 
How to write easy-to-test JavaScript
How to write easy-to-test JavaScriptHow to write easy-to-test JavaScript
How to write easy-to-test JavaScript
 
Introduction to Selenium and Ruby
Introduction to Selenium and RubyIntroduction to Selenium and Ruby
Introduction to Selenium and Ruby
 
Introduction To Web Application Testing
Introduction To Web Application TestingIntroduction To Web Application Testing
Introduction To Web Application Testing
 
Accessibility
AccessibilityAccessibility
Accessibility
 
Angularjs
AngularjsAngularjs
Angularjs
 
Js memory
Js memoryJs memory
Js memory
 
Qt Design Patterns
Qt Design PatternsQt Design Patterns
Qt Design Patterns
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 

Último

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Último (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

01 Mobile Web Introduction

  • 1. Mobile Web Is Here Tuesday, September 18, 12
  • 2. Agenda The Mobile Eco System Challenges for Mobile Developers Mobile Web To The Rescue Online Resources Tuesday, September 18, 12
  • 3. The Mobile Eco System Tuesday, September 18, 12
  • 4. The Mobile Eco System Almost Dead Almost Dead Dead Dead Tuesday, September 18, 12
  • 5. How We Got Here 1990, started using 2G systems 1992, First SMS 1998, First ringtone sale 1999, First mobile internet in Japan Tuesday, September 18, 12
  • 6. How We Got Here 2G was good for talk, not good enough for data 2001, First 3G network in Japan 2007, 295 Mil subscribers on 3G networks worldwide Tuesday, September 18, 12
  • 7. Modern Mobile Device 3G or 3.5G capable Internet Connectivity Voice and Video calls No longer used “just for talking” Supports Apps Tuesday, September 18, 12
  • 8. Major Players Apple Google Nokia Microsoft Tuesday, September 18, 12
  • 9. Apple 2007, first iPhone device iPhone Power Focus on Design Use Capacitive Touchscreen AppStore Built In Tuesday, September 18, 12
  • 11. Google 2005 Google Buys Android Inc 2007 Announcing Android Platform 2008 HTC Dream (first Android Device) Tuesday, September 18, 12
  • 12. Nokia The Oldest player in the game. World’s largest phone manufacturer. Owner of the Symbian OS. Tuesday, September 18, 12
  • 13. Microsoft Known best for its desktop applications. Its mobile version Windows Mobile was never a success. Its newest product WinPhone7 looks promising. Tuesday, September 18, 12
  • 14. Which One Should You Choose ? iPhone apps are written in Objective C. Android apps are written in Java. Symbian apps are written in C++. Blackberry apps are written in Java (but not the same Java as Android). WinPhone apps are written in .NET Tuesday, September 18, 12
  • 15. ALL OF THEM Tuesday, September 18, 12
  • 16. Mobile HTML/CSS/JS Web technology is the one thing all devices have in common Tuesday, September 18, 12
  • 17. Mobile HTML/CSS/JS Using HTML, CSS and JavaScript, we can write applications that will run on any device. Tuesday, September 18, 12
  • 18. Mobile HTML/CSS/JS These apps can run online or offline using HTML5 offline capabilities Tuesday, September 18, 12
  • 19. Mobile HTML/CSS/JS Web apps can integrate special device capabilities to create Hybrid Applications Music Waste Festival App Tuesday, September 18, 12
  • 20. Web Vs. Native Write once, test Write everywhere, Coding everywhere Test everywhere Use limited device Use full device Caps capabilities capabilities Build your own UI Use device UI Look & Feel components components Tuesday, September 18, 12
  • 21. Mobile HTML/CSS/JS The App is a single html file, with many stylesheets and script files. Modular and OO JavaScript is used, to keep “state” Tuesday, September 18, 12
  • 22. Mobile Web Challenges Develop & Test on many platforms Adjust UI to various screen sizes Handle mobile UX Tuesday, September 18, 12
  • 23. MOBILE APP USER EXPERIENCE Tuesday, September 18, 12
  • 24. Mobile UX App is used in short bursts - waiting for the bus or subway App is used while watching TV App is interrupted by incoming call or SMS Tuesday, September 18, 12
  • 25. The Tools Code Less, Do More Tuesday, September 18, 12
  • 26. Writing Apps Same source editor as the web Can use: Komodo Edit Dashcode MacVim/gvim/vim Aptana Studio Tuesday, September 18, 12
  • 27. Writing Apps But you should really just use Webstorm Tuesday, September 18, 12
  • 28. Debugging Apps - Desktop Use Safari/Chrome inspector tools to debug Use Ripple to test your hybrid app from chrome Use iPhone/Android Emulator Use BrowserStack Tuesday, September 18, 12
  • 29. Debugging Apps - Device Use weinre For on device inspection Tuesday, September 18, 12
  • 30. Deploying Apps For online apps, every web server will do. For offline apps, consider PhoneGap Before deployment, use a build script to minimize js/css files Tuesday, September 18, 12
  • 31. Tips: Performance jQuery is not your friend (consider jqmobi) Test on a real device throughout development Think about network traffic Tuesday, September 18, 12
  • 32. HTML5 Boilerplate A ready made starter for html5 mobile apps Cross-platform compatible (Android, iOS, Blackberry, Symbian) Supports all devices and overcomes many glitches http://html5boilerplate.com/mobile/ Tuesday, September 18, 12
  • 33. Mobile Frameworks JQuery Mobile Sencha Touch jqMobi Tuesday, September 18, 12
  • 34. jQuery Mobile Most hyped mobile framework today, and the one we’ll use in the course. Built on top of jQuery Themed UI Widgets Tuesday, September 18, 12
  • 35. Sencha Touch Stable and mature mobile framework Works best on iPhone & Android Commercial framework (currently free) Tuesday, September 18, 12
  • 37. Thanks For Listening Ynon Perek ynonperek@yahoo.com ynonperek.com Tuesday, September 18, 12