Developers in open source projects must make decisions on contributions from other community members, such as whether or not to accept a pull request. However, secondary factors—beyond the code itself—can influence those decisions. For example, signals from GitHub profiles, such as a number of followers, activity, names, or gender can also be considered when developers make decisions. In this paper, we examine how developers use these signals (or not) when making decisions about code contributions. To evaluate this question, we evaluate how signals related to perceived gender identity and code quality influenced decisions on accepting pull requests. Unlike previous work, we analyze this decision process with data collected from an eye-tracker. We analyzed differences in what signals developers said are important for themselves versus what signals they actually used to make decisions about others. We found that after the code snippet (x=57%), the second place programmers spent their time fixating on supplemental technical signals(x=32%), such as previous contributions and popular repositories. Diverging from what participants reported themselves, we also found that programmers fixated on social signals more than recalled.
Standard vs Custom Battery Packs - Decoding the Power Play
Beyond the Code Itself: How Programmers Really Look at Pull Requests
1. Beyond the Code Itself:
How Programmers Really Look
at Pull Requests
Denae Ford, Mahnaz Behroozi, Alexander Serebrenik, Chris ParninDenaeFordRobin
North Carolina State University + Eindhoven University Of Technology
2. PULL REQUEST: SUBMITTING CODE ONLINE 2
https://guides.github.com/introduction/flow/
Open a Pull Request
3. PULL REQUEST: SUBMITTING CODE ONLINE 2
https://guides.github.com/introduction/flow/
Open a Pull RequestPull Request Is Merged
4. PULL REQUEST: SUBMITTING CODE ONLINE 2
https://guides.github.com/introduction/flow/
Open a Pull RequestPull Request Is MergedDiscuss + Review
10. 6BUILDING ON PRIOR WORK
Previous studies were done
post factum
Further insight into the
decision making process
Eye tracking offers a holistic
perspective to the story
[Dabbish, 2012] [Tsay, 2014] [Marlow 2013]
11. 6BUILDING ON PRIOR WORK
Previous studies were done
post factum
Further insight into the
decision making process
Eye tracking offers a holistic
perspective to the story
[Dabbish, 2012] [Tsay, 2014] [Marlow 2013]
12. 6BUILDING ON PRIOR WORK
Previous studies were done
post factum
Further insight into the
decision making process
Eye tracking offers a holistic
perspective to the story
[Dabbish, 2012] [Tsay, 2014] [Marlow 2013]
13. 6BUILDING ON PRIOR WORK
Previous studies were done
post factum
Further insight into the
decision making process
Eye tracking offers a holistic
perspective to the story
[Dabbish, 2012] [Tsay, 2014] [Marlow 2013]
14. How do programmers review pull
requests?
Where do programmers think they
look vs. where they really look?
What strategies do people use to
manage signals for their personal
identity?
7
RQ2
RQ1
RQ3
RESEARCH QUESTIONS
15. 8METHODOLOGY
PROTOCOL
Pre Experiment
Survey
Have you ever accepted or rejected or submitted a
pull request? *
Please rate your programming experience on a scale
from 1-10. *
How much experience do you have performing
integration tasks? *
Do you have a GitHub account? *
21. 12
PROTOCOL
Pre Experiment
Survey
Tic Tac Toe
Training Session
Post Experiment
Survey
Review
Profile Page +
Pull Request
What elements of the displayed profile or pull request did
you consider when making your decision? *
What strategies do you use to decide to share this content?
Does it vary across each community? *
METHODOLOGY
25. All familiar with submitting and reviewing pull requests
Recruited 42 Participants Advanced Topics Computer Science Course
13
PARTICIPANTS
METHODOLOGY
26. All familiar with submitting and reviewing pull requests
Recruited 42 Participants Advanced Topics Computer Science Course
13
PARTICIPANTS
METHODOLOGY
Gender Quantity Age Range Country of Origin Minority Not Minority
Men 30 22-33
24 India, 1 Nepal,
1 USA
2 23
Women 12 23-29
2 China, 5 India,
1 Iran, 3 USA
1 10
27. How do programmers review pull
requests?
Where do programmers think they
look vs. where they really look?
What strategies do people use to
manage signals for their personal
identity?
14
RQ2
RQ1
RQ3
ANALYSIS
28. How do programmers review pull
requests?
Where do programmers think they
look vs. where they really look?
What strategies do people use to
manage signals for their personal
identity?
14
RQ2
RQ1
RQ3
ANALYSIS
Fixation Duration
# Of Fixations
Reported Experience
29. How do programmers review pull
requests?
Where do programmers think they
look vs. where they really look?
What strategies do people use to
manage signals for their personal
identity?
14
RQ2
RQ1
RQ3
ANALYSIS
Fixation Duration
# Of Fixations
Reported Experience
Mapped Responses
30. How do programmers review pull
requests?
Where do programmers think they
look vs. where they really look?
What strategies do people use to
manage signals for their personal
identity?
14
RQ2
RQ1
RQ3
ANALYSIS
Fixation Duration
# Of Fixations
Reported Experience
Mapped Responses
Platform Specific
Strategies
47. RQ2: WHERE DO PROGRAMMERS THINK THEY LOOK VS. WHERE THEY REALLY LOOK?
PROGRAMMERS REVIEWED MORE SOCIAL SIGNALS THAN THEY REPORTED
21
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
48. 73% reported using the code
snippet to make a decision
RQ2: WHERE DO PROGRAMMERS THINK THEY LOOK VS. WHERE THEY REALLY LOOK?
PROGRAMMERS REVIEWED MORE SOCIAL SIGNALS THAN THEY REPORTED
21
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
49. 45% reported using information
related to previous contributions
73% reported using the code
snippet to make a decision
RQ2: WHERE DO PROGRAMMERS THINK THEY LOOK VS. WHERE THEY REALLY LOOK?
PROGRAMMERS REVIEWED MORE SOCIAL SIGNALS THAN THEY REPORTED
21
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
50. 45% reported using information
related to previous contributions
73% reported using the code
snippet to make a decision
RQ2: WHERE DO PROGRAMMERS THINK THEY LOOK VS. WHERE THEY REALLY LOOK?
PROGRAMMERS REVIEWED MORE SOCIAL SIGNALS THAN THEY REPORTED
21
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
Post Survey
Eye-Tracker
Study Phase
0 5 10 15 20
No. of Participants w/ Overlap Between Phases
AC
AC- BC
CA
CD
CD- HM
CDHM- PT
D- RE
D- SD
E- AI
E- DN
FF
RP
RS
TM
UD
AreasofInterest
1 participant reported using the
submitter’s profile image
51. RQ3: WHAT STRATEGIES DO PEOPLE USE TO MANAGE SIGNALS FOR THEIR
PERSONAL IDENTITY?
PLATFORM STRATEGIES VARY TO PROTECT THEIR
IDENTITY & CONTRIBUTIONS
22
Nameless code should
stand alone
Full Profile —>Trustworthy
52. RQ3: WHAT STRATEGIES DO PEOPLE USE TO MANAGE SIGNALS FOR THEIR
PERSONAL IDENTITY?
PLATFORM STRATEGIES VARY TO PROTECT THEIR
IDENTITY & CONTRIBUTIONS
22
Nameless code should
stand alone
Full Profile —>Trustworthy
“I’ve different accounts for
the different kinds of work. [...]
It maybe because my code has
nothing to do with my name or
my image, the code needs to
talk for itself.” (S26)
53. RQ3: WHAT STRATEGIES DO PEOPLE USE TO MANAGE SIGNALS FOR THEIR
PERSONAL IDENTITY?
PLATFORM STRATEGIES VARY TO PROTECT THEIR
IDENTITY & CONTRIBUTIONS
22
Nameless code should
stand alone
Full Profile —>Trustworthy
“I’ve different accounts for
the different kinds of work. [...]
It maybe because my code has
nothing to do with my name or
my image, the code needs to
talk for itself.” (S26)
“such familiarity gives a
feeling of trust.” (S15)
54. DISCUSSION + IMPLICATIONS 23
All participants reviewed at least one social signal.
Does viewing content necessarily mean that the information
seen will influence the decision about a pull request?
55. DISCUSSION + IMPLICATIONS 23
GitHub profiles make social + human capital explicit.
How does giving users control over their identity influence
participation?
All participants reviewed at least one social signal.
Does viewing content necessarily mean that the information
seen will influence the decision about a pull request?
56. Summary
Paper: http://bit.ly/BeyondCode
DenaeFordRobin
(BC) (AC)
(UD)
(PT)
(SD)
(RP)
(CD)
(TM)
dford3@ncsu.edu
We observe that both social and technical aspects are being taken
into consideration when deciding upon pull request acceptance.
Moreover, many more social aspects are being considered during
the experiment than reported during the post-experiment survey
Future work will study how the execution of concealing or
amplifying these signals affect developers across the identity
spectrum and development experiences at scale.
Artifact: http://bit.ly/BeyondCodeArtifacts