THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣...

60
Octocat, here and elsewhere, by GitHub https://octodex.github.com Multitasking Across GitHub Projects THE SKY IS NOT THE LIMIT: Bogdan Vasilescu (@b_vasilescu) Kelly Blincoe (@KellyBlincoe) Qi Xuan Casey Casalnuovo Dana Damian Prem Devanbu Vladimir Filkov 1247280 1414172

Transcript of THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣...

Page 1: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Oct

ocat

, her

e an

d el

sew

here

, by

GitH

ub h

ttps:

//oct

odex

.gith

ub.c

om

Multitasking Across GitHub Projects THE SKY IS NOT THE LIMIT:

Bogdan Vasilescu (@b_vasilescu)Kelly Blincoe (@KellyBlincoe) Qi Xuan Casey Casalnuovo Dana Damian Prem Devanbu Vladimir Filkov

1247280 1414172

Page 2: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitasking is common#icsenumber

Page 3: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE:

Software developers multitask too

GitHub developer (25 Nov 2013 — 18 May 2014)

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 0 1 3 5 8

Page 4: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE:

Software developers multitask too

GitHub developer (25 Nov 2013 — 18 May 2014)

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 0 1 3 5 8

Page 5: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE:

Software developers multitask too

GitHub developer (25 Nov 2013 — 18 May 2014)

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 0 1 3 5 8

Page 6: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE:

Software developers multitask too

GitHub developer (25 Nov 2013 — 18 May 2014)

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 0 1 3 5 8

Page 7: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 8: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

WHY?

‣ Request from other dev’s / management

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 9: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

WHY?

‣ Request from other dev’s / management

‣ Dependencies

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 10: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

‣ Downtime

WHY?

‣ Request from other dev’s / management

‣ Dependencies

‣ Being “stuck”

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 11: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

‣ Downtime

WHY?

‣ Request from other dev’s / management

‣ Dependencies

‣ Personal interest‣ Being “stuck”

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 12: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

‣ Downtime

WHY?

‣ Request from other dev’s / management

‣ Dependencies ‣ Signaling

‣ Personal interest‣ Being “stuck”

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 5 8

Software developers multitask too

Page 13: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

PROS CONS

Theory: How does multitasking affect performance?

Page 14: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS CONS

Theory: How does multitasking affect performance?

Page 15: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

Page 16: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS

‣ Cognitive switching cost Depends on interruption duration, complexity, moment

(Altmann and Trafton, 2002) (Borst, Taatgen, van Rijn, 2015)

CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

Page 17: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS

‣ Cognitive switching cost Depends on interruption duration, complexity, moment

(Altmann and Trafton, 2002) (Borst, Taatgen, van Rijn, 2015)

CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

‣ “Project overload” Mental congestion when too much multitasking

(Zika-Viktorsson, Sundstrom, Engwall, 2006)

Page 18: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS

‣ Cognitive switching cost Depends on interruption duration, complexity, moment

(Altmann and Trafton, 2002) (Borst, Taatgen, van Rijn, 2015)

CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

‣ “Project overload” Mental congestion when too much multitasking

(Zika-Viktorsson, Sundstrom, Engwall, 2006)

In theory:Pr

oduc

tivity

Amount of multitasking

Page 19: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Hardly any empirical evidence

From

: http

://bl

og.c

odin

ghor

ror.c

om/th

e-m

ulti-

task

ing-

myt

h/

Rule of thumb (Weinberg, 1992) - not based on dataPe

rcen

t of t

ime

0

20

40

60

80

100

Number of simultaneous projects

1 2 3 4 5

Working time available per projectLoss to context switching

Page 20: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Hardly any empirical evidence

From

: http

://bl

og.c

odin

ghor

ror.c

om/th

e-m

ulti-

task

ing-

myt

h/

Rule of thumb (Weinberg, 1992) - not based on dataPe

rcen

t of t

ime

0

20

40

60

80

100

Number of simultaneous projects

1 2 3 4 5

Working time available per projectLoss to context switching

Page 21: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Hardly any empirical evidence

From

: http

://bl

og.c

odin

ghor

ror.c

om/th

e-m

ulti-

task

ing-

myt

h/

Recent work:‣ Work fragmentation (Sanchez, Robbes, and Gonzalez, 2015)

‣ Resuming interrupted tasks (Parnin and DeLine, 2010)

Rule of thumb (Weinberg, 1992) - not based on dataPe

rcen

t of t

ime

0

20

40

60

80

100

Number of simultaneous projects

1 2 3 4 5

Working time available per projectLoss to context switching

Page 22: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Hardly any empirical evidence

14 million people

35 million projects

… but lots of data to test theories on.

Page 23: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

This work: Large-scale empirical study

WHAT?

? Trends Reasons? ? Effects Limits?

Multitasking across projects

HOW?

Data mining User survey (15% resp. rate)

+

Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total

Page 24: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

This work: Large-scale empirical study

WHAT?

? Trends Reasons? ? Effects Limits?

Multitasking across projects

HOW?

Data mining User survey (15% resp. rate)

+

Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total

EXAMPLE: GitHub developer (25 Nov 2013 — 18 May 2014)

‣ Downtime

WHY?

• Working for free? Motivations of participating in open source projectsA. Hars and S. Ou. HICSS 2001

• The open source software development phenomenon: An analysis based on social network theoryG. Madey, V. Freeh, and R. Tynan. AMCIS 2002

• Activity traces and signals in software developer recruitment and hiringJ Marlow, L Dabbish. CSCW 2013

‣ Request from other dev’s / management

‣ Dependencies ‣ Signaling

‣ Personal interest‣ Being “stuck”

MonTue

WedThu

FriSat

SunNov Dec Jan Feb Mar Apr

#Projects 0 1 3 5 8

Software developers multitask tooTrends & Reasons:

Details in paper

Page 25: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Effects: perception vs. data

PERCEPTION

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issuesincrease project success

feel more productivecontribute more code overallreview more pull requests

introduce fewer bugs

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

“When contributing to multiple projects in parallel, I:”

Page 26: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

feel more productive

Effects: perception vs. data

PERCEPTION

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

“When contributing to multiple projects in parallel, I:”

Page 27: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issues

contribute more code overallreview more pull requests

Effects: perception vs. data

PERCEPTION

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

“When contributing to multiple projects in parallel, I:”

Page 28: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

increase project success

introduce fewer bugs

Effects: perception vs. data

PERCEPTION

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

“When contributing to multiple projects in parallel, I:”

Page 29: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EMPIRICAL DATA

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issuesincrease project success

feel more productivecontribute more code overallreview more pull requests

introduce fewer bugs

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

Multitasking vs. code production

Effects: perception vs. data

PERCEPTION “When contributing to multiple projects in parallel, I:”

Page 30: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EMPIRICAL DATA

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issuesincrease project success

feel more productivecontribute more code overallreview more pull requests

introduce fewer bugs

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

Multitasking vs. code production

Effects: perception vs. data

Daily multitasking correlates to amount of code produced

PERCEPTION “When contributing to multiple projects in parallel, I:”

Page 31: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EMPIRICAL DATA

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issuesincrease project success

feel more productivecontribute more code overallreview more pull requests

introduce fewer bugs

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

Multitasking vs. code production

Effects: perception vs. data

Daily multitasking correlates to amount of code produced

Weekly and day-to-day scheduling of work matters

PERCEPTION “When contributing to multiple projects in parallel, I:”

Page 32: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

EMPIRICAL DATA

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

resolve more issuesincrease project success

feel more productivecontribute more code overallreview more pull requests

introduce fewer bugs

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

15%

23%

29%

31%

34%

52%

47%

40%

33%

29%

23%

5%

37%

36%

37%

40%

43%

43%

feel more productivecontribute more code overall

review more pull requests

resolve more issues

introduce fewer bugs

increase project success

100 50 0 50 100Percentage

Response Strongly disagree Disagree Neutral Agree Strongly agree

Multitasking vs. code production

Effects: perception vs. data

Daily multitasking correlates to amount of code produced

Weekly and day-to-day scheduling of work matters

No scheduling is productive beyond 5 projects/week

PERCEPTION “When contributing to multiple projects in parallel, I:”

Page 33: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Modeling multitasking

MON TUE WED THU FRI SAT SUN

A B C

B D

A

D

A

‣ Period matters

Page 34: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Modeling multitasking

MON TUE WED THU FRI SAT SUN

A

B

A

C

C

BD

A

D

BB

A

B

D

‣ Period matters ‣ Effort matters(A vs. B)

Page 35: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Modeling multitasking

MON TUE WED THU FRI SAT SUN

A

B

A

A

C

C

B

DA

D

B

BA

A

‣ Period matters ‣ Effort matters ‣ Break matters ‣ …(A vs. D)

Page 36: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Modeling multitasking

MON TUE WED THU FRI SAT SUN

A

B

A

A

C

C

B

DA

D

B

BA

‣ Period matters ‣ Effort matters ‣ Break matters

A

Daily

Weekly

Day-to-day

‣ One-week panels ‣ Three dimensionsWE MODELED:

‣ …

Page 37: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Multitasking dimensions 1. PROJECTS PER DAY

Working sequentially Within-day multitaskingvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 38: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Multitasking dimensions 1. PROJECTS PER DAY

Working sequentially Within-day multitaskingvs.

AvgProjectsPerDay = 1 AvgProjectsPerDay = 2.2

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 39: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

% C

omm

its

0%

20%

40%

60%

80%

100%

ProjectA B C D

% C

omm

its

0%

20%

40%

60%

80%

100%

ProjectA B C D

Multitasking dimensions 2. WEEKLY FOCUS

Focusing on one project Contributing evenly to allvs.

High focus Low focus

Page 40: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

% C

omm

its

0%

20%

40%

60%

80%

100%

ProjectA B C D

% C

omm

its

0%

20%

40%

60%

80%

100%

ProjectA B C D

Multitasking dimensions 2. WEEKLY FOCUS

Focusing on one project Contributing evenly to allvs.

High focus Low focus

SFocus

= 0.25 SFocus

= 1.85

Fraction commits in project i

SFocus

= �NX

i=1

pi log2

piShannon entropy:

Page 41: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitasking dimensions 3. DAY-TO-DAY FOCUS

SFocus

= 1AvgProjectsPerDay = 1

SFocus

= 1AvgProjectsPerDay = 1

Day

A

B

1 2 3 4 5 6 7

Proj

ect

Day

A

B

1 2 3 4 5 6 7

Proj

ect

Repetitive day-to-day Switching focusvs.

Page 42: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitasking dimensions 3. DAY-TO-DAY FOCUS

SFocus

= 1AvgProjectsPerDay = 1

SFocus

= 1AvgProjectsPerDay = 1

Day

A

B

1 2 3 4 5 6 7

Proj

ect

Day

A

B

1 2 3 4 5 6 7

Proj

ect

Repetitive day-to-day Switching focusvs.

Focus shifting networks

(Xuan et al, 2014)

Page 43: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitasking dimensions 3. DAY-TO-DAY FOCUS

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 44: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 45: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 46: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 47: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 48: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 49: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

1

5

1

1

11

1

Multitasking dimensions 3. DAY-TO-DAY FOCUS

BA

Repetitive day-to-day Switching focusvs.

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

Page 50: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

1

5/7

1/7

1

1/71/2

1/2

Multitasking dimensions 3. DAY-TO-DAY FOCUS

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

BA

Repetitive day-to-day Switching focusvs.

Page 51: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

D

C

1

5/7

1/7

1

1/7

SSwitch = �NX

i=1

2

4piX

j2⇡i

p(j|i) log2 p(j|i)

3

5

1/21/2

Multitasking dimensions 3. DAY-TO-DAY FOCUS

Day

A

B

C

D

1 2 3 4 5 6 7

Proj

ect

BA

Repetitive day-to-day Switching focusvs.

Markov entropy:

How predictable is my focus tomorrow if today I work on project j?

Page 52: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Linear mixed-effects regression

Random effect: developer ‣ developer-to-developer

variability in the response

Random slope: time | developer ‣ developers more productive

initially may be less strongly affected by time passing

Response: LOC added / week

Controls: ‣ time ‣ total projects ‣ programming languages

Longitudinal data ‣ 1,200 developers ‣ 5+ years each: multiple

weeks of observation

Day-to-day focus

Projects per day Weekly focus

Predictors:

Projects

ABCD

1 2 3 4 5 6 70%

20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

Page 53: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

Page 54: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

More within-day multitasking

0%20%40%60%80%

100%

A B C D

Page 55: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

Higher focus More repetitive day-to-day work

More within-day multitasking

0%20%40%60%80%

100%

A B C D

Page 56: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

Higher focus More repetitive day-to-day work

Interaction effects: No scheduling is productive over 5 projects/week

More within-day multitasking

0%20%40%60%80%

100%

A B C D

Page 57: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

Higher focus More repetitive day-to-day work

Interaction effects: No scheduling is productive over 5 projects/week

More within-day multitasking

0%20%40%60%80%

100%

A B C D

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS

‣ Cognitive switching cost Depends on interruption duration, complexity, moment

(Altmann and Trafton, 2002) (Borst, Taatgen, van Rijn, 2015)

CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

‣ “Project overload” Mental congestion when too much multitasking

(Zika-Viktorsson, Sundstrom, Engwall, 2006)

In theory:

Prod

uctiv

ity

Amount of multitasking

Page 58: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Implications - awareness

Average 2.7 projects/day (median 2; range 0–10) Average 6 projects/week (median 5; range 0–30)

Multitasking correlates to amount of code produced No scheduling is productive beyond 5 projects/week

Page 59: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Implications - awareness

Average 2.7 projects/day (median 2; range 0–10) Average 6 projects/week (median 5; range 0–30)

Multitasking correlates to amount of code produced No scheduling is productive beyond 5 projects/week

TASK MANAGEMENT TOOLS

Page 60: THE SKY IS NOT THE LIMIT - GitHub Pages · Data mining User survey (15% resp. rate) + Sample: ‣ 1,200 programmers ‣ 5+ years of activity ‣ 50,000+ projects total EXAMPLE: GitHub

Bogdan VasilescuKelly BlincoeQi XuanCasey CasalnuovoDaniela DamianPrem DevanbuVladimir Filkov

Multitaskers do more; scheduling matters

vs.

Projects per day

Higher LOC added

vs.

Weekly focus

Day-to-day focus (repeatability)

vs.

ABCD

1 2 3 4 5 6 7

ABCD

1 2 3 4 5 6 7

0%20%40%60%80%

100%

A B C D

AB

1 2 3 4 5 6 7

AB

1 2 3 4 5 6 7

Higher focus More repetitive day-to-day work

Interaction effects: No scheduling is productive over 5 projects/week

More within-day multitasking

0%20%40%60%80%

100%

A B C D

‣ Fill downtime Switch focus between projects to utilize time more efficiently (Adler and Benbunan-Fich, 2012)

PROS

‣ Cognitive switching cost Depends on interruption duration, complexity, moment

(Altmann and Trafton, 2002) (Borst, Taatgen, van Rijn, 2015)

CONS

Theory: How does multitasking affect performance?

‣ Cross-fertilisation Easier to work on other projects if knowledge is transferrable (Lindbeck and Snower, 2000)

‣ “Project overload” Mental congestion when too much multitasking

(Zika-Viktorsson, Sundstrom, Engwall, 2006)

In theory:Pr

oduc

tivity

Amount of multitasking

1247280 1414172