Skip to content

TeamnetGroup/how-to-troubleshoot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

how-to-troubleshoot

Presentation on how to troubleshoot stuff for fun and profit

Intro

  • troubleshooting, not just debugging

Ce faci cînd nu știi să rezolvi o problemă?

  • toată lumea întreabă colegi, caută pe Google

  • răspuns greșit: Cat Driven Development (anecdotă)

  • întrebare capcană: ca să rezolvi, trebuie să înțelegi

  • odată ce ai înțeles, e ușor să rezolvi

De ce e greu să înțelegi problema?

  • diferență între realitate și imaginea ta despre realitate
  • e.g. crezi că mecanica newtoniană descrie realitatea, și afli că viteza luminii e constantă

(Problemă, nu bug; bugul poate fi foarte simplu, știi imediat ce e de făcut; problema poate apărea chiar în timpul dezvoltării, cînd deodată așteptările tale nu sunt îndeplinite.)

Cum faci să înțelegi?

  • scientific method

Scientific method

  • emiți o ipoteză
  • proiectezi un experiment care să confirme sau infirme ipoteza
  • rulezi experimentul
  • dacă ipoteza a fost infirmată, ai învățat ceva și emiți o nouă ipoteză

Scientific Method (cont.)

  • trebuie să ai instrumente de măsură (profiler, debugger, Fiddler, printf etc.)
  • pentru troubleshooting în producție, instrumentele trebuie să existe în aplicație
  • nu pierde din vedere ce ipoteză investighezi, de unde ai plecat și ce ai aflat pînă acum
  • experiența îți spune care ipoteze sunt mai plauzibile
  • timebox: dacă în două ore nu ai aflat nimic nou, întoarce-te de unde ai plecat și încearcă altceva

Întrebări?

About

Presentation on how to troubleshoot stuff for fun and profit

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published