SlideShare une entreprise Scribd logo
1  sur  19
Patrick D’Souza
10/12/12   Patrick D'Souza   2
 Released     by Joe Hewitt in 2006, one of the
     creators of Firefox.

 console.log     – yay !!

 Happy     developers !!!



10/12/12       Patrick D'Souza                     3
Firebug has the following panels which help
     you inspect content

              HTML
              CSS
              Javascript
              DOM
              Net



10/12/12              Patrick D'Souza              4
10/12/12   Patrick D'Souza   5
 Chrome     based off the Webkit Layout Engine
     and the V8 Javascript Engine.

 This     brought along Chrome Developer Tools.

 Similar   to Firebug, but has kept evolving with
     changes in Chrome.


10/12/12        Patrick D'Souza                      6
 Microsoft    adds Debugger Tools to IE

 Some      nice debugging features in terms of
     profiling along with expected features to
     debug the DOM and javascript.




10/12/12       Patrick D'Souza                    7
 WAP   enabled phones
 Apple launches iOS and the iPhone in 2007.
 Google launches Android and Android
  powered phones.
 iPad launched in 2010.
 Android tablets – Nook, Kindle


And the fragmentation continues ...

10/12/12    Patrick D'Souza                    8
What is Mobile Debugging?

      Back   to pre-firebug era

      console.log


      Emulators

      Emulators      are not very reliable
10/12/12         Patrick D'Souza              9
 Remote    Debugging Protocol added to webkit

 https://www.webkit.org/blog/1875/announcin
     g-remote-debugging-protocol-v1-0/

 Typical   debugging port is 9222



10/12/12      Patrick D'Souza                    10
    Injects code into webpage and provides you
     an interface similar to console.log

    Allows you to remotely execute code and
     capture console entries.




10/12/12       Patrick D'Souza                    11
 Mobile            Perf bookmarklet
       http://stevesouders.com/mobileperf/mobileperfbkm.ph
        p
       Consists of
           ▪   Firebug Lite
           ▪   Page Resources
           ▪   Docsource
           ▪   Web Timing
           ▪   Storager
           ▪   SpriteMe
           ▪   CSSSes

10/12/12                Patrick D'Souza                       12
 Uses     webkit inspector

 Part     of the phone gap

 Useful     for debugging DOM and HTML

 Has    a remote console log for executing
     javascript.

10/12/12        Patrick D'Souza               13
 Adobe     Shadow released by Adobe Labs as an
     experiment.
 Now      packaged and renamed as Adobe Edge.
 Free    version allows you to debug only one
     device
 Paid    version provides access to unlimted
     devices
10/12/12       Patrick D'Souza                    14
   Synchronizes browser state across devices.

   Controlled via a Chrome extension and Weinre.

   Enables you to take screenshots.

   Ideal toolkit for any designer/developer

   Helps to inspect local storage, indexdb and cookies.

10/12/12        Patrick D'Souza                            15
 What          is Fiddler?

       Web Debugging Proxy.


       Can be used to inspect traffic, set breakpoints,
           ingest scripts, replace content, export into different
           formats.



10/12/12             Patrick D'Souza                                16
 iOS/Android      phones have the capability to
     connect to a proxy on a wifi-connection.

 Fiddler     can be used as the http proxy to
     inspect and manipulate inbound and outbound
     traffic from a mobile device.



10/12/12       Patrick D'Souza                     17
 Fiddler    can be used to generate HAR files
     which can be exported and used by any HAR
     viewer.

 Since     all traffic is routed via Fiddler,
     beta/staging servers can be tested easily on a
     mobile device.


10/12/12       Patrick D'Souza                        18
    Mobile Browsers need to get better with
       debugging tools.

      Still a long way to go before mobile devices are
       developer friendly.

      Until then ……. let’s keep dreaming that mobile
       development becomes more developer friendly !!


10/12/12          Patrick D'Souza                         19

Contenu connexe

Similaire à Debugging Tools for Mobile Web Development

Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23
Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23
Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23Luigi Fugaro
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornPROIDEA
 
Dockerizing Stashboard
Dockerizing StashboardDockerizing Stashboard
Dockerizing StashboardDocker, Inc.
 
Dockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwilioDockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwiliodotCloud
 
Introducing frost wire for android
Introducing frost wire for androidIntroducing frost wire for android
Introducing frost wire for androidgubatron
 
Docker 導入:障礙與對策
Docker 導入:障礙與對策Docker 導入:障礙與對策
Docker 導入:障礙與對策William Yeh
 
Docker for Fun and Profit at Startit Tech Meetup
Docker for Fun and Profit at Startit Tech MeetupDocker for Fun and Profit at Startit Tech Meetup
Docker for Fun and Profit at Startit Tech MeetupStartit
 
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...Skills Matter
 
DocuOps & Asciidoctor in a JVM World
DocuOps & Asciidoctor in a JVM WorldDocuOps & Asciidoctor in a JVM World
DocuOps & Asciidoctor in a JVM WorldSchalk Cronjé
 
Programming IoT with Docker: How to Start?
Programming IoT with Docker: How to Start?Programming IoT with Docker: How to Start?
Programming IoT with Docker: How to Start?msyukor
 
Flutter Festival London 2022 - End to end IoT with Dart and Flutter
Flutter Festival London 2022 - End to end IoT with Dart and FlutterFlutter Festival London 2022 - End to end IoT with Dart and Flutter
Flutter Festival London 2022 - End to end IoT with Dart and FlutterChris Swan
 
Docker in Production: Reality, Not Hype - DevOps Chicago
Docker in Production: Reality, Not Hype - DevOps ChicagoDocker in Production: Reality, Not Hype - DevOps Chicago
Docker in Production: Reality, Not Hype - DevOps Chicagobridgetkromhout
 
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...Olivier Destrebecq
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Embarcadero Technologies
 
Creating Android Apps with PhoneGap
Creating Android Apps with PhoneGapCreating Android Apps with PhoneGap
Creating Android Apps with PhoneGapDean Peters
 
Droidcon London 2021 - Full Stack Dart
Droidcon London 2021   - Full Stack DartDroidcon London 2021   - Full Stack Dart
Droidcon London 2021 - Full Stack DartChris Swan
 
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...R-Cubed Design Forge
 

Similaire à Debugging Tools for Mobile Web Development (20)

DevCon5 (July 2014) - Acision SDK
DevCon5 (July 2014) - Acision SDKDevCon5 (July 2014) - Acision SDK
DevCon5 (July 2014) - Acision SDK
 
Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23
Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23
Caching Patterns for lazy devs for lazy loading - Luigi Fugaro VDTJAN23
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
 
Dockerizing Stashboard
Dockerizing StashboardDockerizing Stashboard
Dockerizing Stashboard
 
Dockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwilioDockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at Twilio
 
Introducing frost wire for android
Introducing frost wire for androidIntroducing frost wire for android
Introducing frost wire for android
 
Docker 導入:障礙與對策
Docker 導入:障礙與對策Docker 導入:障礙與對策
Docker 導入:障礙與對策
 
Docker for Fun and Profit at Startit Tech Meetup
Docker for Fun and Profit at Startit Tech MeetupDocker for Fun and Profit at Startit Tech Meetup
Docker for Fun and Profit at Startit Tech Meetup
 
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...
Talk by Tomas Lin on Building Killer RIAs with Flex and Grails at the Groovy ...
 
DocuOps & Asciidoctor in a JVM World
DocuOps & Asciidoctor in a JVM WorldDocuOps & Asciidoctor in a JVM World
DocuOps & Asciidoctor in a JVM World
 
Programming IoT with Docker: How to Start?
Programming IoT with Docker: How to Start?Programming IoT with Docker: How to Start?
Programming IoT with Docker: How to Start?
 
Flutter Festival London 2022 - End to end IoT with Dart and Flutter
Flutter Festival London 2022 - End to end IoT with Dart and FlutterFlutter Festival London 2022 - End to end IoT with Dart and Flutter
Flutter Festival London 2022 - End to end IoT with Dart and Flutter
 
Docker in Production: Reality, Not Hype - DevOps Chicago
Docker in Production: Reality, Not Hype - DevOps ChicagoDocker in Production: Reality, Not Hype - DevOps Chicago
Docker in Production: Reality, Not Hype - DevOps Chicago
 
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
 
My dotJS Talk
My dotJS TalkMy dotJS Talk
My dotJS Talk
 
Creating Android Apps with PhoneGap
Creating Android Apps with PhoneGapCreating Android Apps with PhoneGap
Creating Android Apps with PhoneGap
 
Droidcon London 2021 - Full Stack Dart
Droidcon London 2021   - Full Stack DartDroidcon London 2021   - Full Stack Dart
Droidcon London 2021 - Full Stack Dart
 
Immersed in the Web
Immersed in the WebImmersed in the Web
Immersed in the Web
 
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...
Gutenberg 101/Blocks - How to get along with, and even like WordPress's block...
 

Debugging Tools for Mobile Web Development

  • 2. 10/12/12 Patrick D'Souza 2
  • 3.  Released by Joe Hewitt in 2006, one of the creators of Firefox.  console.log – yay !!  Happy developers !!! 10/12/12 Patrick D'Souza 3
  • 4. Firebug has the following panels which help you inspect content  HTML  CSS  Javascript  DOM  Net 10/12/12 Patrick D'Souza 4
  • 5. 10/12/12 Patrick D'Souza 5
  • 6.  Chrome based off the Webkit Layout Engine and the V8 Javascript Engine.  This brought along Chrome Developer Tools.  Similar to Firebug, but has kept evolving with changes in Chrome. 10/12/12 Patrick D'Souza 6
  • 7.  Microsoft adds Debugger Tools to IE  Some nice debugging features in terms of profiling along with expected features to debug the DOM and javascript. 10/12/12 Patrick D'Souza 7
  • 8.  WAP enabled phones  Apple launches iOS and the iPhone in 2007.  Google launches Android and Android powered phones.  iPad launched in 2010.  Android tablets – Nook, Kindle And the fragmentation continues ... 10/12/12 Patrick D'Souza 8
  • 9. What is Mobile Debugging?  Back to pre-firebug era  console.log  Emulators  Emulators are not very reliable 10/12/12 Patrick D'Souza 9
  • 10.  Remote Debugging Protocol added to webkit  https://www.webkit.org/blog/1875/announcin g-remote-debugging-protocol-v1-0/  Typical debugging port is 9222 10/12/12 Patrick D'Souza 10
  • 11. Injects code into webpage and provides you an interface similar to console.log  Allows you to remotely execute code and capture console entries. 10/12/12 Patrick D'Souza 11
  • 12.  Mobile Perf bookmarklet  http://stevesouders.com/mobileperf/mobileperfbkm.ph p  Consists of ▪ Firebug Lite ▪ Page Resources ▪ Docsource ▪ Web Timing ▪ Storager ▪ SpriteMe ▪ CSSSes 10/12/12 Patrick D'Souza 12
  • 13.  Uses webkit inspector  Part of the phone gap  Useful for debugging DOM and HTML  Has a remote console log for executing javascript. 10/12/12 Patrick D'Souza 13
  • 14.  Adobe Shadow released by Adobe Labs as an experiment.  Now packaged and renamed as Adobe Edge.  Free version allows you to debug only one device  Paid version provides access to unlimted devices 10/12/12 Patrick D'Souza 14
  • 15. Synchronizes browser state across devices.  Controlled via a Chrome extension and Weinre.  Enables you to take screenshots.  Ideal toolkit for any designer/developer  Helps to inspect local storage, indexdb and cookies. 10/12/12 Patrick D'Souza 15
  • 16.  What is Fiddler?  Web Debugging Proxy.  Can be used to inspect traffic, set breakpoints, ingest scripts, replace content, export into different formats. 10/12/12 Patrick D'Souza 16
  • 17.  iOS/Android phones have the capability to connect to a proxy on a wifi-connection.  Fiddler can be used as the http proxy to inspect and manipulate inbound and outbound traffic from a mobile device. 10/12/12 Patrick D'Souza 17
  • 18.  Fiddler can be used to generate HAR files which can be exported and used by any HAR viewer.  Since all traffic is routed via Fiddler, beta/staging servers can be tested easily on a mobile device. 10/12/12 Patrick D'Souza 18
  • 19. Mobile Browsers need to get better with debugging tools.  Still a long way to go before mobile devices are developer friendly.  Until then ……. let’s keep dreaming that mobile development becomes more developer friendly !! 10/12/12 Patrick D'Souza 19