Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Debugging Complex Stuff

Debugging Complex Stuff

A talk on how we debug complex stuff: software and ourselves.

A metaphor for better mental health, calmer life, better work-life balance.

I'd love to give this talk at your company or meetup. Feel free to contact me.

Transcript

26 slides
  1. Signals ◦ Linting ◦ StackTrace ◦ TVs Monitoring on the

    wall ◦ Performance drop ◦ Higher number of tickets ◦ Unexpected side-effects
  2. Signals ◦ Might be false positives ‍♂ ◦ But we

    can't ignore them. Gotta give them some love ◦ Regardless if it’s a false positive it’s good for us — we learn and improve ourselves for the future
  3. Debugging code 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4.
  4. Analyze context && Test hypothesis && Repeat See error line

    WTH could be wrong? Try to identify the cause When was it better? What changed? Smt I've done? Smt external and I can't change? Maybe my part is fine but due the context, it doesn't work? Ask for help
  5. Debugging code 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4. Make it better & Learn \o/
  6. Make it better & Learn \o/ ◦ The sooner the

    better ◦ Even if (especially if) it has reached production (duh!) ◦ If we're in a safe environment we usually feel safe & supported to say: "Yo! Sorry! I broke the build! ‍♂ Let me try to fix it. Help is welcome" ◦ Monitor more / more often / more deeply
  7. Debugging code 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4. Make it better & Learn \o/
  8. Debugging ourselves 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4. Make it better & Learn \o/
  9. Signals ◦ Linting ◦ StackTrace ◦ TVs Monitoring on the

    wall ◦ Performance drop ◦ Higher number of tickets ◦ Unexpected side-effects ◦ Muscle tension ◦ Insomnia || Can't focus ◦ Acidic stomach . ◦ How people are reacting ◦ Irritability || Taking out on others ◦ Relationships starting to degrade
  10. Signals ◦ Might be false positives ‍♂ ◦ But we

    can't ignore them. Gotta give them some love ◦ Regardless if it’s a false positive it’s good for us — we learn and improve ourselves for the future Are we just a “bag of chemicals”?
  11. Debugging Oneself 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4.
  12. Analyze context && Test hypothesis && Repeat See error line

    WTH could be wrong? Try to identify the cause When was it better? What changed? Smt I've done? Smt external and I can't change? Maybe my part is fine but due the context, it doesn't work? Ask for help
  13. Analyze context && Test hypothesis && Repeat WTH could be

    wrong? Try to identify the cause When was it better? What changed? Smt I've done? Smt external and I can't change? Maybe my part is fine but due the context, it doesn't work? Ask for help
  14. Debugging ourselves 1. Signals 2. Admit something is off 3.

    Analyze context && Test hypothesis && Repeat 4. Make it better & Learn \o/
  15. Make it better & Learn \o/ ◦ The sooner the

    better ◦ Even if (especially if) it has reached production (duh!) ◦ If we're in a safe environment we usually feel safe & supported to say: "Yo! Sorry! I broke the build! ‍♂ Let me try to fix it. Help is welcome" ◦ Monitor more / more often / more deeply
  16. Make it better & Learn \o/ ◦ The sooner the

    better ◦ Even if (especially if) it has had consequences (duh!) ◦ If we're in a safe environment we usually feel safe & supported to say: "Yo! Sorry! I messed up! ‍♂ Let me try to be better next time. Help is welcome" ◦ Monitor more / more often / more deeply
  17. Debugging code skills ◦ Can you imagine your career without

    the mentoring you’ve received, the 1-1s with your managers, the candid feedback, the hard conversations, the books, courses, conferences, proper tooling…?
  18. Debugging ourselves skills ◦ So why when it comes to

    our mental health and soft skills we take the isolationist approach and just wing it? ◦ There are similarly tons of resources, practices and professionals for improving our own debugging! ◦ Let’s chat and share what works for us.

More Decks by Luiz Gonzaga dos Santos Filho

Other Decks in Technology