SlideShare a Scribd company logo
1 of 54
Download to read offline
Debugging
Nathaniel Schweinberg
@nathanielks
Fight the Current .org
Welcome
We're here to prevent this:
Let me refer you:
Let's get to
the good stuff
Logic
Two things to know
Know how "it" works
Know how "it" works
The Language
Know how "it" works
The Language The functions
Know the
expected output
Know the
expected output
Know the
expected output
The Tools
Error Logs
Notices and Warnings
XDebug + var_dump
Developer
Debug Bar
Debug Bar Extender
+ dbgx_trace_var
Debug Bar
Debug Bar
Debug Bar
Debug Bar
Debug Bar
Debug Bar
Debug Bar
Debug Bar
Javascript
console.log
Chrome Dev Tools
Elements Panel
Inline Console
$0 selects selected element
$0 can be used by jQuery
Sources Panel
Pretty Print minified scripts
Live editing
Live editing
Save off your edits!
Pause on Exceptions
Pause on Exceptions
Breakpoints ( DOM, XHR, Events )
Final Thoughts
Be willing to put it down
Take the pressure off
Take your time
Take the time to
do_it_right
The best tool of all?
You.
Believe in yourself
Thank You
http://bit.ly/WCNashvilleDebugging
Resources:
Nathaniel Schweinberg
@nathanielks
Fight the Current .org

More Related Content

Viewers also liked

Website Security - It Begins With Good Posture
Website Security - It Begins With Good PostureWebsite Security - It Begins With Good Posture
Website Security - It Begins With Good Posture
Tony Perez
 
Using Theme Frameworks for rapid development and sustainability
Using Theme Frameworks for rapid development and sustainabilityUsing Theme Frameworks for rapid development and sustainability
Using Theme Frameworks for rapid development and sustainability
Joel Norris
 

Viewers also liked (18)

What's the plan for your master brand?
What's the plan for your master brand?What's the plan for your master brand?
What's the plan for your master brand?
 
Future of WordPress in Nashville 2013
Future of WordPress in Nashville 2013Future of WordPress in Nashville 2013
Future of WordPress in Nashville 2013
 
WCBHAM: Running your Freelance Business
WCBHAM: Running your Freelance BusinessWCBHAM: Running your Freelance Business
WCBHAM: Running your Freelance Business
 
WCCHS: Responsive Design with WordPress
WCCHS: Responsive Design with WordPressWCCHS: Responsive Design with WordPress
WCCHS: Responsive Design with WordPress
 
WordPress APIs
WordPress APIsWordPress APIs
WordPress APIs
 
Building App Themes for WordPress
Building App Themes for WordPressBuilding App Themes for WordPress
Building App Themes for WordPress
 
Optimizing WordPress Performance
Optimizing WordPress PerformanceOptimizing WordPress Performance
Optimizing WordPress Performance
 
Website Security - It Begins With Good Posture
Website Security - It Begins With Good PostureWebsite Security - It Begins With Good Posture
Website Security - It Begins With Good Posture
 
Getting an eCommerce Site Running in 30 Minutes
Getting an eCommerce Site Running in 30 MinutesGetting an eCommerce Site Running in 30 Minutes
Getting an eCommerce Site Running in 30 Minutes
 
Using Theme Frameworks for rapid development and sustainability
Using Theme Frameworks for rapid development and sustainabilityUsing Theme Frameworks for rapid development and sustainability
Using Theme Frameworks for rapid development and sustainability
 
Scoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyScoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an Agency
 
Caching 101 - WordCamp OC
Caching 101 - WordCamp OCCaching 101 - WordCamp OC
Caching 101 - WordCamp OC
 
Builing a WordPress Theme
Builing a WordPress ThemeBuiling a WordPress Theme
Builing a WordPress Theme
 
Wordpress para seus Clientes
Wordpress para seus ClientesWordpress para seus Clientes
Wordpress para seus Clientes
 
Design and Development Techniques for Accessibility: WordCamp Tampa 2015
Design and Development Techniques for Accessibility: WordCamp Tampa 2015Design and Development Techniques for Accessibility: WordCamp Tampa 2015
Design and Development Techniques for Accessibility: WordCamp Tampa 2015
 
THE WORDPRESS DASHBOARD DEMYSTIFIED
THE WORDPRESS DASHBOARD DEMYSTIFIEDTHE WORDPRESS DASHBOARD DEMYSTIFIED
THE WORDPRESS DASHBOARD DEMYSTIFIED
 
Acessibilidade Web agora é obrigatória. Estamos preparados?
Acessibilidade Web agora é obrigatória. Estamos preparados?Acessibilidade Web agora é obrigatória. Estamos preparados?
Acessibilidade Web agora é obrigatória. Estamos preparados?
 
The Best SEO Plugin for WordPress
The Best SEO Plugin for WordPressThe Best SEO Plugin for WordPress
The Best SEO Plugin for WordPress
 

Similar to Debugging - WordCamp Nashville 2013

Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
Lorna Mitchell
 
User2hackerin30minutes
User2hackerin30minutesUser2hackerin30minutes
User2hackerin30minutes
ma.khan
 
Top Tips Every Notes Developer Needs To Know
Top Tips Every Notes Developer Needs To KnowTop Tips Every Notes Developer Needs To Know
Top Tips Every Notes Developer Needs To Know
Kathy Brown
 

Similar to Debugging - WordCamp Nashville 2013 (20)

Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
 
Code Forensics
Code ForensicsCode Forensics
Code Forensics
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
.NET Debugging Tips and Techniques
.NET Debugging Tips and Techniques.NET Debugging Tips and Techniques
.NET Debugging Tips and Techniques
 
.Net Debugging Techniques
.Net Debugging Techniques.Net Debugging Techniques
.Net Debugging Techniques
 
How To Contribute Drupalcon
How To Contribute   DrupalconHow To Contribute   Drupalcon
How To Contribute Drupalcon
 
"Introduction to Bug Hunting", Yasser Ali
"Introduction to Bug Hunting", Yasser Ali"Introduction to Bug Hunting", Yasser Ali
"Introduction to Bug Hunting", Yasser Ali
 
Lug
LugLug
Lug
 
Google Chrome DevTools features overview
Google Chrome DevTools features overviewGoogle Chrome DevTools features overview
Google Chrome DevTools features overview
 
Spug pt session2 - debuggingl
Spug pt session2 - debugginglSpug pt session2 - debuggingl
Spug pt session2 - debuggingl
 
Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teams
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCup
 
User2hackerin30minutes
User2hackerin30minutesUser2hackerin30minutes
User2hackerin30minutes
 
Practices of agile developers
Practices of agile developersPractices of agile developers
Practices of agile developers
 
The Art of Evolutionary Algorithms Programming
The Art of Evolutionary Algorithms ProgrammingThe Art of Evolutionary Algorithms Programming
The Art of Evolutionary Algorithms Programming
 
Notes on Debugging
Notes on DebuggingNotes on Debugging
Notes on Debugging
 
Spaghetti gate
Spaghetti gateSpaghetti gate
Spaghetti gate
 
Top Tips Every Notes Developer Needs To Know
Top Tips Every Notes Developer Needs To KnowTop Tips Every Notes Developer Needs To Know
Top Tips Every Notes Developer Needs To Know
 
Introduction of Tools for providing rich user experience in debugger
Introduction of Tools for providing rich user experience in debuggerIntroduction of Tools for providing rich user experience in debugger
Introduction of Tools for providing rich user experience in debugger