$30 off During Our Annual Pro Sale. View Details »

Contributing Code Empathetically

Contributing Code Empathetically

Remembering the People Behind Projects.

Given at jQuery Dev Summit 2015.

HipsterBrown

October 17, 2015
Tweet

More Decks by HipsterBrown

Other Decks in Programming

Transcript

  1. Contributing Code
    Empathetically

    View Slide

  2. Remembering
    People
    Behind
    Projects

    View Slide

  3. Who Am I?

    View Slide

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

    View Slide

  5. View Slide

  6. What is Empathy?

    View Slide

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

    View Slide

  8. What is Empathy?
    Seeing the world through the eyes of someone else.


    View Slide

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

    View Slide

  10. Context

    View Slide

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

    View Slide

  12. How It Relates
    • No One is Un-Opinionated
    • We All Have Biases
    • Listening is Key
    • “Why?”

    View Slide

  13. View Slide

  14. Set The Example

    View Slide

  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

    View Slide

  16. Constructive Feedback

    View Slide

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

    View Slide

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

    View Slide

  19. View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  23. • Mutually Agreed Upon
    • Set Up With Expectations
    • In An Open Space
    • Shared With Context
    Constructive Feedback is…

    View Slide

  24. Example
    Code Reviews

    View Slide

  25. It is intended to find and fix mistakes
    overlooked, improving both the overall quality
    of software and developers' skills.

    View Slide

  26. Encouraging
    Constructive Feedback

    View Slide

  27. View Slide

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

    View Slide

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

    View Slide

  30. Communication

    View Slide

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

    View Slide

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

    View Slide

  33. “I” Statements
    For Giving Constructive Feedback
    For Getting Context

    View Slide

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

    View Slide

  35. View Slide

  36. How We Communicate
    • General = Slack
    • Standups = Hangouts / In-Person
    • Recorded Discussions = GitHub Issues
    • Long-Form / Async = Email

    View Slide

  37. https://.slack.com/
    customize/slackbot

    View Slide

  38. Caring

    View Slide

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

    View Slide

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

    View Slide

  41. How Much Do You Care?

    View Slide

  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?

    View Slide

  43. – Yoda
    “Don’t give in to hate. It leads to the Dark Side.”

    View Slide

  44. Example
    Documentation

    View Slide

  45. Documentation Matters
    • Wikis
    • Code Comments
    • Styleguides
    • Pattern Libraries
    • README.md

    View Slide

  46. Exemplifying Caring

    View Slide

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

    View Slide

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

    View Slide

  49. By starting to apply empathy to connect with others
    professionally, we can continue down that path to
    connect with others personally.

    View Slide

  50. Resources

    View Slide

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

    View Slide

  52. http://more-empathy.online

    View Slide

  53. Thank You

    View Slide