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

Contributing Code Empathetically

Contributing Code Empathetically

Remembering the People Behind Projects.

Given at jQuery Dev Summit 2015.

42044f1ee7508caca62666863ae793da?s=128

HipsterBrown

October 17, 2015
Tweet

Transcript

  1. Contributing Code Empathetically

  2. Remembering People Behind Projects

  3. Who Am I?

  4. Who Am I? Nick Hehr Empathetic Community Member Front-End Developer

    Hoodie Contributor
  5. None
  6. What is Empathy?

  7. What is Empathy? The ability to understand and share the

    feelings of another.
  8. What is Empathy? Seeing the world through the eyes of

    someone else.

  9. Breakdown • Context • Constructive Feedback • Communication • Caring

  10. Context

  11. The internal and external factors that influence the decisions we

    make and actions we take.
  12. How It Relates • No One is Un-Opinionated • We

    All Have Biases • Listening is Key • “Why?”
  13. None
  14. Set The Example

  15. Descriptive Descriptions • screenshots, animated GIFs, or screencasts • the

    behavior and visuals you expected • related issues that would be closed • any context/reasoning behind why a change should be made • notes or concerns while in progress
  16. Constructive Feedback

  17. The return of information that helps to develop or improve.

  18. How It Relates “If you don’t have anything nice to

    say, then don’t say anything at all.”
  19. None
  20. How It Relates “If you don’t have anything nice to

    say, then don’t say anything at all.”
  21. How It Relates “If you don’t have anything nice to

    say, then don’t say anything at all.”
  22. How It Relates “If you don’t have anything constructive to

    say, then don’t say anything at all.”
  23. • Mutually Agreed Upon • Set Up With Expectations •

    In An Open Space • Shared With Context Constructive Feedback is…
  24. Example Code Reviews

  25. It is intended to find and fix mistakes overlooked, improving

    both the overall quality of software and developers' skills.
  26. Encouraging Constructive Feedback

  27. None
  28. https://github.com/atom/atom/blob/master/ CONTRIBUTING.md

  29. https://github.com/hoodiehq/hoodie/blob/master/ CONTRIBUTING.md

  30. Communication

  31. The successful sharing of ideas and feelings between people.

  32. How It Relates • What We Say • How We

    Say It • Where We Say It
  33. “I” Statements For Giving Constructive Feedback For Getting Context

  34. “You” Statements For Getting Context For Giving Constructive Feedback

  35. None
  36. How We Communicate • General = Slack • Standups =

    Hangouts / In-Person • Recorded Discussions = GitHub Issues • Long-Form / Async = Email
  37. https://<your-team>.slack.com/ customize/slackbot

  38. Caring

  39. To provide the needs of something and show interest in

    it.
  40. How It Relates • Caring is Sharing • And Listening

    • And Understanding
  41. How Much Do You Care?

  42. Do You Care Enough… • To Write A Blog Post?

    • To File An Issue? • To Send An Email? • To Record A Screencast? • To Submit A Pull Request?
  43. – Yoda “Don’t give in to hate. It leads to

    the Dark Side.”
  44. Example Documentation

  45. Documentation Matters • Wikis • Code Comments • Styleguides •

    Pattern Libraries • README.md
  46. Exemplifying Caring

  47. http://hood.ie/community/#contributors

  48. http://hood.ie/contribute/

  49. By starting to apply empathy to connect with others professionally,

    we can continue down that path to connect with others personally.
  50. Resources

  51. http://rosenfeldmedia.com/books/practical-empathy/

  52. http://more-empathy.online

  53. Thank You