open development - an engineering manager's perspective
TRANSCRIPT
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Open Development: An Engineering Manager’s PerspectiveMichael Marth | Director Engineering
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Open Development (aka Inner Source) - Technical
Requirements
2
Open Source Open Development / Inner Source
Sources public Sources open for everyone within Adobe
No meetings Meetings?
Public:
• Mailing list
• Slack
• Issue tracker
• Documentation
Anyone within Adobe can read/write
• Mailing list
• Slack
• Jira
• Wiki
Do everything within Adobe like it would work within an open source project
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
> whoami
Open Development in Adobe for 6 years
Granite
https://wiki.corp.adobe.com/display/granite/Granite+Home
New open dev projects in the works
Managing Adobe developers contributing to Apache Software Foundation projects
Previously Apache Felix, Sling, Oak, Tika, Solr, etc
Currently Apache OpenWhisk
3
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Attention: Opinion Piece Coming UpYMMV
4
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Covering the Basics
Code on Github and public
Open/public
Mailing list
Slack
Issue tracker
Wiki
5
Open Dev works best on platform or librarysoftware
e.g. UI widgets, database, framework, message bus
Stuff that other developers can use to build things
Your Software
Someone else’s Business
App
end user
Rough statistics (completely made-up)
100 users -> 10 contributors -> 1 committer
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Open Source / Open Development: Joe Doe’s Prototypical
Story
6
1. Joe has put code on GitHub
Yay! Big celebration
2. Joe has talked about it
150 Tweets
3 blog posts
2 conference talks
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Expected Result
7
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Actual Result: No Magic Happened, No Unicorns Appeared
8
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Actual Result
(max) 10 Pull Requests
9
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Failed or forgot to build community of committers
10
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Why build community?
Don’t start this before you have clarity
on this question
It’s a long term commitment
Answers differ
11
For example
Platform software sustainable for a decade
Industry impact / Adobe-internal impact
…
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How to build community
Objective #1
You MUST enable and allow distributed decision
making
12
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How to build community
13
Org
structure
Communicatio
n
structure
shapes shapesDecision
structure
For example:
• BDFL
• Apache-style
Claim:
BDFL works for some open
source, but not for OpenDev
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How to build community
14
Org
structure
Communicatio
n
structure
shapes shapesDecision
structure
Hierarchical P2P
If this is distributed then:
No calls
No daily standups
No scrum?
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How to build community
15
Org
structure
Communicatio
n
structure
shapes shapesDecision
structure
Hierarchical Consensus
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
The role of the EM in building community
Objective #1
Let go of your control on decisions
16
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
All that sounds hard?
17
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
The easy way to Open Development
Go open source in a foundation like the ASF
Foundation owns the IP, community owns the code
Bonus: community rules for participation already written
18
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Ready to start?
19
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
The fallacy of projecting fears
I am ready to go open,…
but <some other person in my
org>
is not
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Success Stories
21
© 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Success stories
Open development:
Granite: ~150 committers throughout Adobe – 10 times more than reported in line to me
Open source
Apache Sling
AEM partners are ~50% of the community -> high partner stickyness and product participation
Super successful and easy recruiting pipeline
22