The Art of Collaborative Software Development Brian O’Neill Lead Architect, Health Market Science @boneill42, email@example.com
The Problem• Individual Contribution = e• Impact on others = o max (eme + o(e1) … o(en))As n increases, o quickly becomesmore important than e.
Attitudes and Emotions
Know ThyselfUnconscious IncompetenceConscious IncompetenceConscious CompetenceUnconscious Competence by dimension http://www.upgradereality.com/stages-of-mastery/
Strive for Simplicity“Simplicity is the Ultimate Sophistication…when youfirst attack a problem it seems really simple because youdon’t understand it. Then when you start to reallyunderstand it, you come up with these very complicatedsolutions because it’s really hairy. Most people stopthere. But a few people keep burning the midnight oiland finally understand the underlying principles of theproblem and come up with an elegantly simple solutionfor it. But very few people go the distance to get there” - Steve Jobs
Emotional IQPassion without emotion.
Momentum w/ PeersSometimes your contribution to anidea comes at the expense ofanother’s passion, which results in aless successful idea.i.e. Sometimes its better to keep yourmouth shut.
OpennessYou want people to be able to come toyou with ideas, even if they contradictyour own.You should be able to express your ideasto others, even if they contradict theirs.If they/you cannot, its your fault. =)
Value / Tolerance Momentum w/ Projects Time Requisite value to maintain momentum / velocity. And tolerance for lesser quality commits.
PerspectivesBeauty is in the eye of the beholder Clojure Break statementsTry to appreciate other art styles.
Pull Requests over EmailsIf you see it, own it.If you own it, solve it.If you’ve solved it, share it.
Continuous IntegrationMake it your home page.Then goto previous slide. (or revert =)
Default to BroadcastCC everyoneAllow them to filterNo closed doors/conversations
Capture Debt and work it off.Catalog your tolerance of sub-parcommits.And plan to address it.