{"id":6527,"date":"2017-01-03T08:00:02","date_gmt":"2017-01-03T07:00:02","guid":{"rendered":"http:\/\/codingwithempathy.com\/?p=6527"},"modified":"2017-01-03T02:52:39","modified_gmt":"2017-01-03T01:52:39","slug":"adding-empathy-pull-requests","status":"publish","type":"post","link":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/","title":{"rendered":"Adding more Empathy to Pull Requests"},"content":{"rendered":"<p>Using tools like GitHub or BitBucket allow developers to able to submit their changes through pull requests. One of the challenges with pull requests is that they often contain very little information, apart from the change itself and perhaps the issue or case in question. Bad pull requests make the lives of reviewers a lot harder, and mean they need to spend a lot of time understanding the context. Instead of focusing on the change itself.<\/p>\n<p>So, how can you improve your pull requests? <!--more--><a href=\"https:\/\/medium.com\/u\/99f335249945\">Duretti<\/a> and <a href=\"https:\/\/medium.com\/u\/c967be6fe38c\">Mark<\/a>\u00a0from <a href=\"https:\/\/slack.engineering\/\">Slack Engineering<\/a> suggest that we <a href=\"https:\/\/slack.engineering\/on-empathy-pull-requests-979e4257d158#.dechcmj41\">add more empathy to pull requests <\/a>to make them easier for the authors and reviewers alike.<\/p>\n<h2>Empathy<\/h2>\n<p><a href=\"https:\/\/medium.com\/u\/99f335249945\">Duretti<\/a> and <a href=\"https:\/\/medium.com\/u\/c967be6fe38c\">Mark<\/a>\u00a0use\u00a0Dr Bren\u00e9 Browns definition of empathy:<\/p>\n<blockquote><p>Four Components of Empathy, by Dr. Bren\u00e9 Brown<\/p>\n<ul>\n<li>to be able to see the world as others see it<\/li>\n<li>to be nonjudgmental<\/li>\n<li>to understand another person\u2019s feelings<\/li>\n<li>to communicate your understanding of that person\u2019s feelings back to them<\/li>\n<\/ul>\n<\/blockquote>\n<p>&nbsp;<\/p>\n<blockquote><p>Empathy is a skill that we have to learn and practice\u200a\u2014\u200amastery comes from practice.<\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<h2>Improving\u00a0Pull Requests<\/h2>\n<p>It&#8217;s so important to realise that in an asynchronous flow like pull requests, the reviewer(s) often lack a lot of the context that the author has while attempting to fix an issue. They go on to say:<\/p>\n<blockquote>\n<p id=\"87f7\" class=\"graf graf--p graf-after--li\">Basically, your reviewer is <em class=\"markup--em markup--p-em\">totally missing context<\/em>, and it is your pull request&#8217;s job to give them that context. You have a few options:<\/p>\n<ul class=\"postList\">\n<li id=\"0f04\" class=\"graf graf--li graf-after--p\">Give it a good title, so people know what they&#8217;re getting it into before they start.<\/li>\n<li id=\"380b\" class=\"graf graf--li graf-after--li\">Use the description to tell your reviewer how you ended up with this solution. What did you try that didn&#8217;t work? Why is this the right solution?<\/li>\n<li id=\"71bf\" class=\"graf graf--li graf-after--li\">Be sure to link to any secondary material that can add more context\u200a\u2014\u200aa link to the bug tracker or a Slack archive link can really help when describing the issue.<\/li>\n<li id=\"7a6f\" class=\"graf graf--li graf-after--li\">Ask for specific feedback\u200a\u2014\u200aif you are worried that the call to the `fooBarFrobber` could be avoided, let them know that so they can focus their effort.<\/li>\n<li id=\"af56\" class=\"graf graf--li graf-after--li\">Finally, you should explain what&#8217;s going on for your reviewer. What did you fix? Did you have any trouble fixing the bug? What are some other ways you could&#8217;ve fixed this, and why did you decide to fix it this way?<\/li>\n<\/ul>\n<\/blockquote>\n<h2>My thoughts<\/h2>\n<p>The premise of this article is that there is a completely asynchronous workflow between the author and review of the code. This probably means they don&#8217;t speak\u00a0together on a regular basis. This is quite common in distributed teams or teams with very clearly defined roles.<\/p>\n<p>Writing a pull request with the reviewers context in mind is a wonderful way to ease the effort needed to actually get started with reviewing the code at hand. These steps to improving pull requests\u00a0make a lot of sense, but should be used on a case by case basis.<\/p>\n<h3>Thanks for reading! \ud83d\ude42 If you enjoyed it, share it with a friend!<\/h3>\n<h4>For more thoughts and examples on empathy in pull requests, check out <a href=\"https:\/\/youtu.be\/Mm1TpjB79wQ\">this video<\/a> where I dig deeper into the suggestions from this article.<\/h4>\n<div class=\"jetpack-video-wrapper\"><iframe loading=\"lazy\" title=\"Empathy &amp; Pull Requests\" width=\"628\" height=\"353\" src=\"https:\/\/www.youtube.com\/embed\/Mm1TpjB79wQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Using tools like GitHub or BitBucket allow developers to able to submit their changes through pull requests. One of the <a class=\"more-link\" href=\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\">Continue Reading<\/a><\/p>\n","protected":false},"author":1,"featured_media":6529,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[77,38],"tags":[68,37,47,87,88],"jetpack_publicize_connections":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Adding more Empathy to Pull Requests - Coding with Empathy<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Adding more Empathy to Pull Requests - Coding with Empathy\" \/>\n<meta property=\"og:description\" content=\"Using tools like GitHub or BitBucket allow developers to able to submit their changes through pull requests. One of the Continue Reading\" \/>\n<meta property=\"og:url\" content=\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\" \/>\n<meta property=\"og:site_name\" content=\"Coding with Empathy\" \/>\n<meta property=\"article:published_time\" content=\"2017-01-03T07:00:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1919\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Pavneet Singh Saund\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/www.twitter.com\/pavsaund\" \/>\n<meta name=\"twitter:site\" content=\"@pavsaund\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pavneet Singh Saund\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\",\"url\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\",\"name\":\"Adding more Empathy to Pull Requests - Coding with Empathy\",\"isPartOf\":{\"@id\":\"https:\/\/codingwithempathy.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1\",\"datePublished\":\"2017-01-03T07:00:02+00:00\",\"author\":{\"@id\":\"https:\/\/codingwithempathy.com\/#\/schema\/person\/9d28ada7322af537b1d361e72303b664\"},\"breadcrumb\":{\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage\",\"url\":\"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1\",\"width\":1919,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/codingwithempathy.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Adding more Empathy to Pull Requests\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/codingwithempathy.com\/#website\",\"url\":\"https:\/\/codingwithempathy.com\/\",\"name\":\"Coding with Empathy\",\"description\":\"Caring for code. Delivering with compassion.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/codingwithempathy.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/codingwithempathy.com\/#\/schema\/person\/9d28ada7322af537b1d361e72303b664\",\"name\":\"Pavneet Singh Saund\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/codingwithempathy.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/cf63f831110b0cf4e8c4c0b33fbd2831?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/cf63f831110b0cf4e8c4c0b33fbd2831?s=96&r=g\",\"caption\":\"Pavneet Singh Saund\"},\"description\":\"Focused on creating great user experiences by attending to folks needs with empathy and spaces of safety. \\\"How you build a product is as important a the product itself\\\". Equalizing the playing field as User Experience Lead\/Web Developer at [Dolittle](https:\/\/www.dolittle.com).\",\"sameAs\":[\"http:\/\/codingwithempathy.com\",\"https:\/\/linkedin.com\/in\/pavneet\",\"https:\/\/x.com\/https:\/\/www.twitter.com\/pavsaund\"],\"url\":\"https:\/\/codingwithempathy.com\/author\/pavsaund\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Adding more Empathy to Pull Requests - Coding with Empathy","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/","og_locale":"en_US","og_type":"article","og_title":"Adding more Empathy to Pull Requests - Coding with Empathy","og_description":"Using tools like GitHub or BitBucket allow developers to able to submit their changes through pull requests. One of the Continue Reading","og_url":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/","og_site_name":"Coding with Empathy","article_published_time":"2017-01-03T07:00:02+00:00","og_image":[{"width":1919,"height":1080,"url":"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1","type":"image\/jpeg"}],"author":"Pavneet Singh Saund","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/www.twitter.com\/pavsaund","twitter_site":"@pavsaund","twitter_misc":{"Written by":"Pavneet Singh Saund","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/","url":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/","name":"Adding more Empathy to Pull Requests - Coding with Empathy","isPartOf":{"@id":"https:\/\/codingwithempathy.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage"},"image":{"@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1","datePublished":"2017-01-03T07:00:02+00:00","author":{"@id":"https:\/\/codingwithempathy.com\/#\/schema\/person\/9d28ada7322af537b1d361e72303b664"},"breadcrumb":{"@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#primaryimage","url":"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1","contentUrl":"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1","width":1919,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/codingwithempathy.com\/2017\/01\/03\/adding-empathy-pull-requests\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/codingwithempathy.com\/"},{"@type":"ListItem","position":2,"name":"Adding more Empathy to Pull Requests"}]},{"@type":"WebSite","@id":"https:\/\/codingwithempathy.com\/#website","url":"https:\/\/codingwithempathy.com\/","name":"Coding with Empathy","description":"Caring for code. Delivering with compassion.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/codingwithempathy.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/codingwithempathy.com\/#\/schema\/person\/9d28ada7322af537b1d361e72303b664","name":"Pavneet Singh Saund","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codingwithempathy.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/cf63f831110b0cf4e8c4c0b33fbd2831?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cf63f831110b0cf4e8c4c0b33fbd2831?s=96&r=g","caption":"Pavneet Singh Saund"},"description":"Focused on creating great user experiences by attending to folks needs with empathy and spaces of safety. \"How you build a product is as important a the product itself\". Equalizing the playing field as User Experience Lead\/Web Developer at [Dolittle](https:\/\/www.dolittle.com).","sameAs":["http:\/\/codingwithempathy.com","https:\/\/linkedin.com\/in\/pavneet","https:\/\/x.com\/https:\/\/www.twitter.com\/pavsaund"],"url":"https:\/\/codingwithempathy.com\/author\/pavsaund\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/codingwithempathy.com\/wp-content\/uploads\/2017\/01\/Empathy-and-pull-requests-cover-play.jpg?fit=1919%2C1080&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7chaz-1Hh","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/posts\/6527"}],"collection":[{"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/comments?post=6527"}],"version-history":[{"count":3,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/posts\/6527\/revisions"}],"predecessor-version":[{"id":6532,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/posts\/6527\/revisions\/6532"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/media\/6529"}],"wp:attachment":[{"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/media?parent=6527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/categories?post=6527"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codingwithempathy.com\/wp-json\/wp\/v2\/tags?post=6527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}