skip to main content
research-article

An Empirical Study on GitHub Pull Requests’ Reactions

Published:30 September 2023Publication History
Skip Abstract Section

Abstract

The pull request mechanism is commonly used to propose source code modifications and get feedback from the community before merging them into a software repository. On GitHub, practitioners can provide feedback on a pull request by either commenting on the pull request or simply reacting to it using a set of pre-defined GitHub reactions, i.e., “Thumbs-up”, “Laugh”, “Hooray”, “Heart”, “Rocket”, “Thumbs-down”, “Confused”, and “Eyes”. While a large number of prior studies investigated how to improve different software engineering activities (e.g., code review and integration) by investigating the feedback on pull requests, they focused only on pull requests’ comments as a source of feedback. However, the GitHub reactions, according to our preliminary study, contain feedback that is not manifested within the comments of pull requests. In fact, our preliminary analysis of six popular projects shows that a median of 100% of the practitioners who reacted to a pull request did not leave any comment suggesting that reactions can be a unique source of feedback to further improve the code review and integration process.

To help future studies better leverage reactions as a feedback mechanism, we conduct an empirical study to understand the usage of GitHub reactions and understand their promises and limitations. We investigate in this article how reactions are used, when and who use them on what types of pull requests, and for what purposes. Our study considers a quantitative analysis on a set of 380 k reactions on 63 k pull requests of six popular open-source projects on GitHub and three qualitative analyses on a total number of 989 reactions from the same six projects. We find that the most common used GitHub reactions are the positive ones (i.e., “Thumbs-up”, “Hooray”, “Heart”, “Rocket”, and “Laugh”). We observe that reactors use positive reactions to express positive attitude (e.g., approval, appreciation, and excitement) on the proposed changes in pull requests. A median of just 1.95% of the used reactions are negative ones, which are used by reactors who disagree with the proposed changes for six reasons, such as feature modifications that might have more downsides than upsides or the use of the wrong approach to address certain problems. Most (a median of 78.40%) reactions on a pull request come before the closing of the corresponding pull requests. Interestingly, we observe that non-contributors (i.e., outsiders who potentially are the “end-users” of the software) are also active on reacting to pull requests. On top of that, we observe that core contributors, peripheral contributors, casual contributors and outsiders have different behaviors when reacting to pull requests. For instance, most core contributors react in the early stages of a pull request, while peripheral contributors, casual contributors and outsiders react around the closing time or, in some cases, after a pull request is merged. Contributors tend to react to the pull request’s source code, while outsiders are more concerned about the impact of the pull request on the end-user experience. Our findings shed light on common patterns of GitHub reactions usage on pull requests and provide taxonomies about the intention of reactors, which can inspire future studies better leverage pull requests’ reactions.

REFERENCES

  1. [1] Bin Lin, Fiorella Zampetti, Gabriele Bavota, Massimiliano Di Penta, Michele Lanza, and Rocco Oliveto. 2018. Sentiment analysis for software engineering: How far can we go? In Proceedings of the 2018 International Conference on Software Engineering. 94104.Google ScholarGoogle Scholar
  2. [2] Bjarke Felbo, Alan Mislove, Anders Søgaard, Iyad Rahwan, and Sune Lehmann. 2017. Using millions of emoji occurrences to learn any-domain representations for detecting sentiment, emotion and sarcasm. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing.Google ScholarGoogle Scholar
  3. [3] Boxer Jake. 2016. Add Reactions to Pull Requests, Issues, and Comments. Retrieved from https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/. Accessed 30 May 2023.Google ScholarGoogle Scholar
  4. [4] Daniel Pletea, Bogdan Vasilescu, and Alexander Serebrenik. 2014. Security and emotion: Sentiment analysis of security discussions on GitHub. In Proceedings of the 2014 Working Conference on Mining Software Repositories. 348351.Google ScholarGoogle Scholar
  5. [5] Daviti Gachechiladze, Filippo Lanubile, Nicole Novielli, and Alexander Serebrenik. 2017. Anger and its direction in collaborative software development. In Proceedings of the 2017 IEEE/ACM International Conference on Software Engineering: New Ideas and Emerging Technologies Results Track. 1114.Google ScholarGoogle Scholar
  6. [6] Dmitry Davidov, Oren Tsur, and Ari Rappoport. 2010. Enhanced sentiment learning using Twitter hashtags and smileys. In Proceedings of the Coling 2010: Posters. 241249.Google ScholarGoogle Scholar
  7. [7] Eeshita Biswas, Efruz Karabulut M., Lori Pollock, and K Vijay-Shanker. 2020. Achieving reliable sentiment analysis in the software engineering domain using BERT. In Proceedings of the 2020 IEEE International Conference on Software Maintenance and Evolution. 162173.Google ScholarGoogle Scholar
  8. [8] Ekaterina Skriptsova, Elizaveta Voronova, Elizaveta Danilova, and Alina Bakhitova. 2019. Analysis of newcomers activity in communicative posts on GitHub. In Proceedings of the 2019 International Conference on Digital Transformation and Global Society. 452460.Google ScholarGoogle Scholar
  9. [9] Eleni Constantinou and Tom Mens. 2017. An empirical comparison of developer retention in the RubyGems and Npm software ecosystems. Innovations in Systems and Software Engineering 13 (2017), 101115.Google ScholarGoogle Scholar
  10. [10] Emitza Guzman and Bernd Bruegge. 2013. Towards emotional awareness in software development teams. In Proceedings of the 2013 Joint Meeting on Foundations of Software Engineering. 671674.Google ScholarGoogle Scholar
  11. [11] Fatiul Huq S., Zafar Sadiq A., and Kazi Sakib. 2019. Understanding the effect of developer sentiment on fix-inducing changes: An exploratory study on GitHub pull requests. In Proceedings of the 2019 Asia-Pacific Software Engineering Conference. 514521.Google ScholarGoogle Scholar
  12. [12] Guilherme Avelino, Eleni Constantinou, Tulio Valente M., and Alexander Serebrenik. 2019. On the abandonment and survival of open source projects: An empirical investigation. In Proceedings of the 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. 112.Google ScholarGoogle Scholar
  13. [13] Guilherme Avelino, Leonardo Passos, Andre Hora, and Tulio Valente M.. 2016. A novel approach for estimating truck factors. In Proceedings of the 2016 IEEE 24th International Conference on Program Comprehension. 110.Google ScholarGoogle Scholar
  14. [14] Gustavo Pinto, Igor Steinmacher, and Aurélio Gerosa M.. 2016. More common than you think: An in-depth study of casual contributors. In Proceedings of the 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering. 112123.Google ScholarGoogle Scholar
  15. [15] Hudson Borges, Rodrigo Brito, and Tulio Valente M.. 2019. Beyond textual issues: Understanding the usage and impact of GitHub reactions. In Proceedings of the 2019 Brazilian Symposium on Software Engineering. 397406.Google ScholarGoogle Scholar
  16. [16] Kevin Crowston, Kangning Wei, Qing Li, and James Howison. 2006. Core and periphery in free/libre and open source software team communications. In Proceedings of the 2006 Annual Hawaii International Conference on System Sciences. 118a–118a.Google ScholarGoogle Scholar
  17. [17] Kexin Sun, Hui Gao, Hongyu Kuang, Xiaoxing Ma, Guoping Rong, Dong Shao, and He Zhang. 2021. Exploiting the unique expression for improved sentiment analysis in software engineering text. In Proceedings of the 2021 IEEE/ACM International Conference on Program Comprehension. 149159.Google ScholarGoogle Scholar
  18. [18] Klaus Krippendorff. 2004. Reliability in content analysis: Some common misconceptions and recommendations. Human Communication Research 30, 3 (2004), 411433.Google ScholarGoogle Scholar
  19. [19] Lu Xuan, Cao Yanbin, Chen Zhenpeng, and Liu Xuanzhe. 2018. A first look at emoji usage on GitHub: An empirical study. arXiv:1812.04863. Retrieved from https://arxiv.org/abs/1812.04863.Google ScholarGoogle Scholar
  20. [20] Maëlick Claes, Mika Mäntylä, and Umar Farooq. 2018. On the use of emoticons in open source software development. In Proceedings of the 2018 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. 14.Google ScholarGoogle Scholar
  21. [21] Manasa Venigalla A.S. and Sridhar Chimalakonda. 2021. StackEmo: Towards enhancing user experience by augmenting stack overflow with emojis. In Proceedings of the 2021 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. 15501554.Google ScholarGoogle Scholar
  22. [22] Marco Ortu, Bram Adams, Giuseppe Destefanis, Parastou Tourani, Michele Marchesi, and Roberto Tonelli. 2015. Are bullies more productive? empirical study of affectiveness vs. issue fixing time. In Proceedings of the 2015 IEEE/ACM Working Conference on Mining Software Repositories. 303313.Google ScholarGoogle Scholar
  23. [23] Mateus Freira, Josemar Caetano, Johnatan Oliveira, and Humbertor Marques-Neto. 2018. Analyzing the impact of feedback in GitHub on the software developer’s mood. In Proceedings of the 2018 International Conference on Software Engineering and Knowledge Engineering. 445450.Google ScholarGoogle Scholar
  24. [24] Middleton Justin, Murphy-Hill Emerson, Green Demetrius, Meade Adam, Mayer Roger, White David, and McDonald Steve. 2018. Which contributions predict whether developers are accepted into GitHub teams. In Proceedings of the 2018 IEEE/ACM International Conference on Mining Software Repositories. 403413.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. [25] Mika Mäntylä, Bram Adams, Giuseppe Destefanis, Daniel Graziotin, and Marco Ortu. 2016. Mining valence, arousal, and dominance: Possibilities for detecting burnout and productivity?. In Proceedings of the 2016 International Conference on Mining Software Repositories. 247258.Google ScholarGoogle Scholar
  26. [26] Nalin De Zoysa. 2020. Analysis of Textual and Non-Textual Sources of Sentiment in Github. Master’s thesis. University of Waterloo, Waterloo, Ontario, Canada.Google ScholarGoogle Scholar
  27. [27] Nicole Novielli, Daniela Girardi, and Filippo Lanubile. 2018. A benchmark study on sentiment analysis for software engineering research. In Proceedings of the 2018 IEEE/ACM International Conference on Mining Software Repositories. 364375.Google ScholarGoogle Scholar
  28. [28] Qiyu Bai, Qi Dan, Zhe Mu, and Maokun Yang. 2019. A systematic review of emoji: Current research and future perspectives. Frontiers in Psychology 10 (2019), 2221.Google ScholarGoogle Scholar
  29. [29] Rena Nainggolan, Perangin-angin Resianta, Simarmata Emma, and Tarigan Astuti F.. 2019. Improved the performance of the K-means cluster using the sum of squared error (SSE) optimized by using the elbow method. In Proceedings of the Journal of Physics: Conference Series. 012015.Google ScholarGoogle Scholar
  30. [30] Robbert Jongeling, Subhajit Datta, and Alexander Serebrenik. 2015. Choosing your weapons: On sentiment analysis tools for software engineering research. In Proceedings of the 2015 IEEE International Conference on Software Maintenance and Evolution. 531535.Google ScholarGoogle Scholar
  31. [31] Rodrigo Souza and Bruno Silva. 2017. Sentiment analysis of Travis CI builds. In Proceedings of the 2017 IEEE/ACM International Conference on Mining Software Repositories. 459462.Google ScholarGoogle Scholar
  32. [32] Song Joe and Wang Haizhou. 2020. Optimal (Weighted) Univariate Clustering. https://search.r-project.org/CRAN/refmans/Ckmeans.1d.dp/html/Ckmeans.1d.dp.html. Accessed 30 May 2023.Google ScholarGoogle Scholar
  33. [33] Song Wang, Bansal Chetan, Nagappan Nachiappan, and Philip Adithya A.. 2019. Leveraging change intents for characterizing and identifying large-review-effort changes. In Proceedings of the 2019 International Conference on Predictive Models and Data Analytics in Software Engineering. 4655.Google ScholarGoogle Scholar
  34. [34] Taliar Giuntini F., Pires Larissa, Kirchner Luziane D. F., Passarelli Denise A., Maria D. J. D. Dos Reis, Andrew T. Campbell, and Jo Ueyama. 2019. How do I feel? Identifying emotional expressions on Facebook reactions using clustering mechanism. IEEE Access 7 (2019), 5390953921.Google ScholarGoogle Scholar
  35. [35] Teyon Son, Tao Xiao, Dong Wang, Gaikovina Kula R., Takashi Ishio, and Kenichi Matsumoto. 2021. More than react: Investigating the role of emoji reaction in GitHub pull requests. arXiv:2108.08094. Retrieved from https://arxiv.org/abs/2108.08094.Google ScholarGoogle Scholar
  36. [36] Ting Zhang, Bowen Xu, Ferdian Thung, Agus Haryono S., David Lo, and Lingxiao Jiang. 2020. Sentiment analysis for software engineering: How far can pre-trained transformer models go? In Proceedings of the 2020 IEEE International Conference on Software Maintenance and Evolution. 7080.Google ScholarGoogle Scholar
  37. [37] Tsay Jason, Dabbish Laura, and Herbsleb James. 2014. Influence of social and technical factors for evaluating contribution in GitHub. In Proceedings of the 2014 International Conference on Software Engineering. 356366.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. [38] Wrobel Michal R.. 2013. Emotions in the software development process. In Proceedings of the 2013 International Conference on Human System Interactions. 518523.Google ScholarGoogle ScholarCross RefCross Ref
  39. [39] Wrobel Michal R.. 2016. Towards the participant observation of emotions in software development teams. In Proceedings of the 2016 Federated Conference on Computer Science and Information Systems. 15451548.Google ScholarGoogle ScholarCross RefCross Ref
  40. [40] Xinyuan Xu, Ruben Manrique, and Bernardo Pereira N.. 2021. RIP emojis and words to contextualize mourning on Twitter. In Proceedings of the 2021 ACM Conference on Hypertext and Social Media. 257263.Google ScholarGoogle Scholar
  41. [41] Ying Haochao, Chen Liang, Liang Tingting, and Wu Jian. 2016. Earec: Leveraging expertise and authority for pull-request reviewer recommendation in GitHub. In Proceedings of the 2016 IEEE/ACM International Workshop on CrowdSourcing in Software Engineering. 2935.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. [42] Yu Yue, Wang Huaimin, Yin Gang, and Ling Charles X.. 2014. Who should review this pull-request: Reviewer recommendation to expedite crowd collaboration. In Proceedings of the 2014 Asia-Pacific Software Engineering Conference. 335342.Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. [43] Zhenpeng Chen, Xuan Lu, Wei Ai, Huoran Li, Qiaozhu Mei, and Xuanzhe Liu. 2018. Through a gender lens: Learning usage patterns of emojis from large-scale android users. In Proceedings of the 2018 World Wide Web Conference. 763772.Google ScholarGoogle Scholar
  44. [44] Zhenpeng Chen, Yanbin Cao, Huihan Yao, Xuan Lu, Xin Peng, Hong Mei, and Xuanzhe Liu. 2021. Emoji-powered sentiment and emotion detection from software developers’ communication data. ACM Transactions on Software Engineering and Methodology 30, 2 (2021), 148.Google ScholarGoogle Scholar
  45. [45] Zhenpeng Chen, Yanbin Cao, Xuan Lu, Qiaozhu Mei, and Xuanzhe Liu. 2019. SEntiMoji: An emoji-powered learning approach for sentiment analysis in software engineering. In Proceedings of the 2019 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. 841852.Google ScholarGoogle Scholar
  46. [46] Zijie Huang, Zhiqing Shao, Guisheng Fan, Jianhua Gao, Ziyi Zhou, Kang Yang, and Xingguang Yang. 2021. Predicting community smells’ occurrence on individual developers by sentiments. In Proceedings of the 2021 IEEE/ACM International Conference on Program Comprehension. 230241.Google ScholarGoogle Scholar

Index Terms

  1. An Empirical Study on GitHub Pull Requests’ Reactions

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Transactions on Software Engineering and Methodology
      ACM Transactions on Software Engineering and Methodology  Volume 32, Issue 6
      November 2023
      949 pages
      ISSN:1049-331X
      EISSN:1557-7392
      DOI:10.1145/3625557
      • Editor:
      • Mauro Pezzè
      Issue’s Table of Contents

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 30 September 2023
      • Online AM: 13 May 2023
      • Accepted: 19 April 2023
      • Revised: 23 February 2023
      • Received: 20 December 2022
      Published in tosem Volume 32, Issue 6

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
    • Article Metrics

      • Downloads (Last 12 months)444
      • Downloads (Last 6 weeks)24

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Full Text

    View this article in Full Text.

    View Full Text