Slide 1

Slide 1 text

what private teams can learn from open source Mark Simoneau @marksim Thursday, April 26, 12

Slide 2

Slide 2 text

what to adopt Thursday, April 26, 12

Slide 3

Slide 3 text

why Thursday, April 26, 12

Slide 4

Slide 4 text

how Thursday, April 26, 12

Slide 5

Slide 5 text

we love open source philosophy freedom price using Thursday, April 26, 12

Slide 6

Slide 6 text

but beyond that Thursday, April 26, 12

Slide 7

Slide 7 text

open source provides a model for private development Thursday, April 26, 12

Slide 8

Slide 8 text

what if this model could... Thursday, April 26, 12

Slide 9

Slide 9 text

reduce bugs in production Thursday, April 26, 12

Slide 10

Slide 10 text

better talent pool Thursday, April 26, 12

Slide 11

Slide 11 text

how many private teams want to Thursday, April 26, 12

Slide 12

Slide 12 text

reduce bugs in production Thursday, April 26, 12

Slide 13

Slide 13 text

have better talent pool Thursday, April 26, 12

Slide 14

Slide 14 text

everybody? Thursday, April 26, 12

Slide 15

Slide 15 text

Thursday, April 26, 12

Slide 16

Slide 16 text

reducing bugs Thursday, April 26, 12

Slide 17

Slide 17 text

best way? Thursday, April 26, 12

Slide 18

Slide 18 text

hour for hour, no other developer method reduces more bugs in production see “Code Complete” by Steve McConnell Thursday, April 26, 12

Slide 19

Slide 19 text

code reviews Thursday, April 26, 12

Slide 20

Slide 20 text

how do private teams do it? Thursday, April 26, 12

Slide 21

Slide 21 text

how does open source do it? Thursday, April 26, 12

Slide 22

Slide 22 text

pull requests Thursday, April 26, 12

Slide 23

Slide 23 text

• fork (free!) • submit pull request • let the team review • merge easy to set this up Thursday, April 26, 12

Slide 24

Slide 24 text

• more complicated process • slower than git push • more knowledge of git required disadvantages Thursday, April 26, 12

Slide 25

Slide 25 text

advantages • all code gets reviewed • everyone sees coding styles • everyone sees problem solutions • everyone gets input • git history cleanliness is reviewed Thursday, April 26, 12

Slide 26

Slide 26 text

Thursday, April 26, 12

Slide 27

Slide 27 text

better talent pool Thursday, April 26, 12

Slide 28

Slide 28 text

talent from anywhere? Thursday, April 26, 12

Slide 29

Slide 29 text

open source: distributed from the start Thursday, April 26, 12

Slide 30

Slide 30 text

communication done in Thursday, April 26, 12

Slide 31

Slide 31 text

mailing lists Thursday, April 26, 12

Slide 32

Slide 32 text

chats Thursday, April 26, 12

Slide 33

Slide 33 text

bug tickets Thursday, April 26, 12

Slide 34

Slide 34 text

distributed communication = distributed team Thursday, April 26, 12

Slide 35

Slide 35 text

what if your private team simply acted distributed? Thursday, April 26, 12

Slide 36

Slide 36 text

easy to do Thursday, April 26, 12

Slide 37

Slide 37 text

hipchat / campfire / irc Thursday, April 26, 12

Slide 38

Slide 38 text

mailing list / message board Thursday, April 26, 12

Slide 39

Slide 39 text

internal blog Thursday, April 26, 12

Slide 40

Slide 40 text

google hangout / skype Thursday, April 26, 12

Slide 41

Slide 41 text

disadvantages • more discipline • more intentionality • could reduce personal interaction (not what we found) Thursday, April 26, 12

Slide 42

Slide 42 text

advantages • all communication logged • everyone can participate from anywhere • everyone can review or catch up • anyone can be added to the team from anywhere • bonus: reduced distraction Thursday, April 26, 12

Slide 43

Slide 43 text

Thursday, April 26, 12

Slide 44

Slide 44 text

challenge Thursday, April 26, 12

Slide 45

Slide 45 text

make your private team Thursday, April 26, 12

Slide 46

Slide 46 text

distributed Thursday, April 26, 12

Slide 47

Slide 47 text

code reviewers Thursday, April 26, 12

Slide 48

Slide 48 text

boost communication Thursday, April 26, 12

Slide 49

Slide 49 text

reduce bugs Thursday, April 26, 12

Slide 50

Slide 50 text

hire from anywhere Thursday, April 26, 12

Slide 51

Slide 51 text

@marksim blog.quarternotecoda.com Thursday, April 26, 12