SlideShare a Scribd company logo
1 of 27
Download to read offline
Tobie Langel, Principal, UnlockOpen
tobie@unlockopen.com
Open source contribution
policies that don’t suck!
Do you have an open source policy?
No
48%
Don't know
13%
Yes
39%
< 250 employees
61%
11%
28%
> 10,000 employees
25%
10%
65%
Source: The New Stack & Linux Foundation/TODO
Group 2018 Open Source Program Management
Survey (https://github.com/todogroup/survey)
Remember this is a biased sample!
What does not having a policy mean?
Contrary to popular belief, it does not mean that you don’t have an
open source policy at all.
It means that you don’t have a written one.
You have a policy, whether it is written
down or not. It could range from “no
open source at all” to “anything goes.” 
—Heather J. Meeker, Open Source Licensing Specialist,
author of Open Source for Business.
What does having a policy mean?
Think you’re in the right camp because you have an open source
contribution policy? Think again!
• You can have a very restrictive open source policy.
• You can have a very bureaucratic process to obtain approval.
• You can have a very opaque process to obtain approval.
None of these are fun!
PermissiveRestrictive
Implicit
Explicit
Startups
SMEs
Non-tech
enterprise
Old tech
company
Trend setters
Tech
companies
What is a policy that doesn’t suck?
Permissive. Allows open source contribution to be an
integral part of the company’s engineering culture and
best practices. Based on trust and autonomy.
Explicit. The decision making process is well documented
and transparent.
Informative. The policy explains the why an helps educate
engineers.
Frictionless. Avoid bureaucracy, red tape, lengthly back
and forth with legal, etc.
Engineering
perspective
What is a policy that doesn’t suck?
Minimizes risk. Avoid:
• giving away competitive advantage,
• giving away IP that can be used defensively (or—shudders
—offensively),
• reputational damages and accidental infringements.
Consistently followed across the company. Keep contribution
under your radar. Avoid compliance issues.
Savvy about written information. Sometimes you want a
paper-trail (e.g. compliance), sometimes you don’t.
Doesn’t drown critical problems in a sea of menial issues.
Legal
perspective*
* IANAL (I am not a lawyer).
Please talk to me if you are
and want to help me
improve this slide.
What is a policy that doesn’t suck?
Engineering to be happy and productive.
Risks minimized and well understood.
Good communication between legal and engineering.
Alignment with Business goals.
Business
perspective
At the heart is a tension
Legal wants to minimize risk.
Prefers oral communication.
Manager’s schedule.
Favors spectrum thinking.
Conservative role.
Engineering wants to maximize velocity.
Prefers written communication.
Maker’s schedule.
Favors binary thinking.
Innovative role.
Coming to agreement
Acknowledge that this tension is normal. It’s just checks and balances.
Listen to both sides.
Remind them that their role is to help achieve common business goals.
• Legal’s role is to minimize risk, but not at the expense of innovation.
• Engineering’s needs can’t be fulfilled at the expense of the company’s survival.
Find common ground. A good policy will improve the life of both sides.
Align your open source activity with your business goals. If you are a patent troll,
then don’t do open source.
Accept that your open source policy will change with your business.
Contributing
open source
What is a policy really about?
Using
open source
The realm of
Using open source
Well understood problem, essentially:
• Using software with licenses that are compatible with your
current and future business model.
• Compliance.
Using open source
Tip: a common issue is missing licenses. Equip engineering with a process
(and issue or pull request templates) to request proper OSI-approved licenses.
Contributing
open source
Contributing
at
work
Contributing
outside of
work
Other
4%
Don't know
37%
Must ask
12%
Yes!
47%
“How does your employer's IP agreement/policy affect your free-
time contributions to open source unrelated to your work?”
“Respondents were sampled randomly from traffic and qualifying
activity to licensed open source repositories on GitHub.com and invited
to complete the survey through a dialog box. A smaller sample was
recruited from open source communities sourced outside of GitHub, […]”
Contributing outside of work
Source: GitHub 2017 open source survey
(http://opensourcesurvey.org/2017/).
But again… this is a highly biased sample.
Contributing outside of work
Why so much confusion?
• Depends on the jurisdiction, but not uncommon, especially in the
USA, for companies to own employees’ production 24/7.
• Sometimes, extra criteria apply. For example, in California, IP
developed with company equipment—even outside of work—
belongs to the employer.
• This prevents employees from contributing to open source,
unless they ask for, and are granted permission to do so.
Contributing outside of work
The common solution: ask for permission
• Most companies have a process for this.
• Tends to focus on releasing open source or working on a limited set
of pre-approved projects.
• Breaks down when there’s a high number of dependencies (such as
for Node.js projects).
Contributing outside of work
The better solution: BEIPA
• Balanced Employee IP Agreement
• https://github.com/github/balanced-employee-ip-agreement
• Project created by GitHub, based on its own IP agreement.
• BEIPA only claims control of creations made for or relating to the
company's business.
Contributing
at
work
Patching
Releasing
Releasing open source at work
• Distinguish large open source projects you want to promote from
smaller "day to day” modules. (E.g. Google’s < 100 LoC rule.)
• Offer well oiled and well documented processes, checklists,
templates, and tooling (see: https://github.com/todogroup/policies).
• Offer help.
• Promote working in the open rather than releasing software once
it’s done. (Consider README-driven development to avoid scope creep.)
Patching open source at work
• By far the most common activity and the most important one.
• The experience must be as frictionless as possible for engineers.
• Surface the process by which decisions are made and trust
engineers to do the right thing. This let’s legal focus on the
difficult cases.
• Cache decisions (build approve- and deny- lists) so that the
process gets faster as time goes by.
Outside of
work
Patching
Using
open source
Releasing
At work
Contributing open source
Turn your policy into an app!
• Automatically approve requests that meet pre-established
requirements (e.g. patch an MIT-licensed open source project on
GitHub).
• Automatically reject requests that don’t meet your criteria (but
allow motivated appeals).
• Manually handle other requests and cache the decision so more
gets automated over time.
Using such a system, Adobe was able to shorten it’s review time
from 4.6 days to 4.6 hours.
But there’s more. The data collected can help:
• understand your open source activity,
• promote it,
• connect engineers unknowingly contributing to the same projects,
• etc.
Turn your policy into an app!
Thank you!
Tobie Langel (@tobie)
Principal, UnlockOpen
tobie@unlockopen.com

More Related Content

Similar to 'Open source contribution policies that don’t suck!'

Open Source Contribution Policies That Don't Suck
Open Source Contribution Policies That Don't SuckOpen Source Contribution Policies That Don't Suck
Open Source Contribution Policies That Don't SuckTobie Langel
 
To Open Source or Not to Open Source...Where is the ROI?
To Open Source or Not to Open Source...Where is the ROI?To Open Source or Not to Open Source...Where is the ROI?
To Open Source or Not to Open Source...Where is the ROI?Ted Haeger
 
InnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your companyInnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your companyEric Caron
 
Questions On Technical Design Decisions
Questions On Technical Design DecisionsQuestions On Technical Design Decisions
Questions On Technical Design DecisionsRikki Wright
 
Open Source Craft at Twitter
Open Source Craft at TwitterOpen Source Craft at Twitter
Open Source Craft at TwitterChris Aniszczyk
 
Os Nolen Gebhart
Os Nolen GebhartOs Nolen Gebhart
Os Nolen Gebhartoscon2007
 
Scaling Software Delivery.pdf
Scaling Software Delivery.pdfScaling Software Delivery.pdf
Scaling Software Delivery.pdfTiffany Jachja
 
IDCEE 2013: How to do a successful company around open source - Michael Widen...
IDCEE 2013: How to do a successful company around open source - Michael Widen...IDCEE 2013: How to do a successful company around open source - Michael Widen...
IDCEE 2013: How to do a successful company around open source - Michael Widen...IDCEE
 
Cannibis Program Webinar Series - Roman Arzhintar on Collaborative Product B...
Cannibis Program Webinar Series -  Roman Arzhintar on Collaborative Product B...Cannibis Program Webinar Series -  Roman Arzhintar on Collaborative Product B...
Cannibis Program Webinar Series - Roman Arzhintar on Collaborative Product B...Vator
 
Open Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PMOpen Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PMProduct School
 
Micheal Monty Widenius - Free Open Source Software Entrepreneurship
Micheal Monty Widenius -  Free Open Source Software EntrepreneurshipMicheal Monty Widenius -  Free Open Source Software Entrepreneurship
Micheal Monty Widenius - Free Open Source Software EntrepreneurshipSouth Tyrol Free Software Conference
 
Top Tips to a Successful eDiscovery Software Demo
Top Tips to a Successful eDiscovery Software DemoTop Tips to a Successful eDiscovery Software Demo
Top Tips to a Successful eDiscovery Software DemoMark Walker
 
From Technical Debt to Technical Health
From Technical Debt to Technical HealthFrom Technical Debt to Technical Health
From Technical Debt to Technical HealthDeclan Whelan
 
Onboarding Freelancers LinkedIn Group Deck
Onboarding Freelancers LinkedIn Group Deck Onboarding Freelancers LinkedIn Group Deck
Onboarding Freelancers LinkedIn Group Deck Business901
 
A brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXA brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXLarry Burks
 
Open Source Product Management
Open Source Product ManagementOpen Source Product Management
Open Source Product ManagementDanny Rosen
 
Why Isn't Clean Coding Working For My Team
Why Isn't Clean Coding Working For My TeamWhy Isn't Clean Coding Working For My Team
Why Isn't Clean Coding Working For My TeamRob Curry
 
Build your Own Technology Roadmap!
Build your Own Technology Roadmap!Build your Own Technology Roadmap!
Build your Own Technology Roadmap!Sascha Wenninger
 
The Art of Building a Process Design Team
The Art of Building a Process Design TeamThe Art of Building a Process Design Team
The Art of Building a Process Design TeamTroy DuMoulin
 

Similar to 'Open source contribution policies that don’t suck!' (20)

Open Source Contribution Policies That Don't Suck
Open Source Contribution Policies That Don't SuckOpen Source Contribution Policies That Don't Suck
Open Source Contribution Policies That Don't Suck
 
To Open Source or Not to Open Source...Where is the ROI?
To Open Source or Not to Open Source...Where is the ROI?To Open Source or Not to Open Source...Where is the ROI?
To Open Source or Not to Open Source...Where is the ROI?
 
InnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your companyInnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your company
 
Questions On Technical Design Decisions
Questions On Technical Design DecisionsQuestions On Technical Design Decisions
Questions On Technical Design Decisions
 
Open Source Craft at Twitter
Open Source Craft at TwitterOpen Source Craft at Twitter
Open Source Craft at Twitter
 
Os Nolen Gebhart
Os Nolen GebhartOs Nolen Gebhart
Os Nolen Gebhart
 
Scaling Software Delivery.pdf
Scaling Software Delivery.pdfScaling Software Delivery.pdf
Scaling Software Delivery.pdf
 
IDCEE 2013: How to do a successful company around open source - Michael Widen...
IDCEE 2013: How to do a successful company around open source - Michael Widen...IDCEE 2013: How to do a successful company around open source - Michael Widen...
IDCEE 2013: How to do a successful company around open source - Michael Widen...
 
Cannibis Program Webinar Series - Roman Arzhintar on Collaborative Product B...
Cannibis Program Webinar Series -  Roman Arzhintar on Collaborative Product B...Cannibis Program Webinar Series -  Roman Arzhintar on Collaborative Product B...
Cannibis Program Webinar Series - Roman Arzhintar on Collaborative Product B...
 
Open Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PMOpen Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PM
 
Micheal Monty Widenius - Free Open Source Software Entrepreneurship
Micheal Monty Widenius -  Free Open Source Software EntrepreneurshipMicheal Monty Widenius -  Free Open Source Software Entrepreneurship
Micheal Monty Widenius - Free Open Source Software Entrepreneurship
 
Top Tips to a Successful eDiscovery Software Demo
Top Tips to a Successful eDiscovery Software DemoTop Tips to a Successful eDiscovery Software Demo
Top Tips to a Successful eDiscovery Software Demo
 
From Technical Debt to Technical Health
From Technical Debt to Technical HealthFrom Technical Debt to Technical Health
From Technical Debt to Technical Health
 
Onboarding Freelancers LinkedIn Group Deck
Onboarding Freelancers LinkedIn Group Deck Onboarding Freelancers LinkedIn Group Deck
Onboarding Freelancers LinkedIn Group Deck
 
A brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UXA brief introduction to Enterprise and Industrial UX
A brief introduction to Enterprise and Industrial UX
 
Top Tips for eDiscovery Software Demo iControl ESI
Top Tips for eDiscovery Software Demo iControl ESITop Tips for eDiscovery Software Demo iControl ESI
Top Tips for eDiscovery Software Demo iControl ESI
 
Open Source Product Management
Open Source Product ManagementOpen Source Product Management
Open Source Product Management
 
Why Isn't Clean Coding Working For My Team
Why Isn't Clean Coding Working For My TeamWhy Isn't Clean Coding Working For My Team
Why Isn't Clean Coding Working For My Team
 
Build your Own Technology Roadmap!
Build your Own Technology Roadmap!Build your Own Technology Roadmap!
Build your Own Technology Roadmap!
 
The Art of Building a Process Design Team
The Art of Building a Process Design TeamThe Art of Building a Process Design Team
The Art of Building a Process Design Team
 

More from Shane Coughlan

OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
OpenChain Monthly Meeting North America and Asia - 2024-03-19
OpenChain Monthly Meeting North America and Asia - 2024-03-19OpenChain Monthly Meeting North America and Asia - 2024-03-19
OpenChain Monthly Meeting North America and Asia - 2024-03-19Shane Coughlan
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorShane Coughlan
 
openEuler Community Overview - a presentation showing the current scale
openEuler Community Overview - a presentation showing the current scaleopenEuler Community Overview - a presentation showing the current scale
openEuler Community Overview - a presentation showing the current scaleShane Coughlan
 
OpenChain AI Study Group - North America and Europe - 2024-02-20
OpenChain AI Study Group - North America and Europe - 2024-02-20OpenChain AI Study Group - North America and Europe - 2024-02-20
OpenChain AI Study Group - North America and Europe - 2024-02-20Shane Coughlan
 
AI Study Group North America - Europe 2024-02-06
AI Study Group North America - Europe 2024-02-06AI Study Group North America - Europe 2024-02-06
AI Study Group North America - Europe 2024-02-06Shane Coughlan
 
OpenChain Monthly North America / Europe Call - 2024-02-06
OpenChain Monthly North America / Europe Call - 2024-02-06OpenChain Monthly North America / Europe Call - 2024-02-06
OpenChain Monthly North America / Europe Call - 2024-02-06Shane Coughlan
 
OpenChain Export Control Work Group 2024-01-09
OpenChain Export Control Work Group 2024-01-09OpenChain Export Control Work Group 2024-01-09
OpenChain Export Control Work Group 2024-01-09Shane Coughlan
 
OpenChain Legal Work Group - 2024-01-17
OpenChain Legal Work Group -  2024-01-17OpenChain Legal Work Group -  2024-01-17
OpenChain Legal Work Group - 2024-01-17Shane Coughlan
 
Openchain AI Study Group 2024-01-23.pptx
Openchain AI Study Group 2024-01-23.pptxOpenchain AI Study Group 2024-01-23.pptx
Openchain AI Study Group 2024-01-23.pptxShane Coughlan
 
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...Shane Coughlan
 
Maturity Models - Open Compliance Summit 2023
Maturity Models - Open Compliance Summit 2023Maturity Models - Open Compliance Summit 2023
Maturity Models - Open Compliance Summit 2023Shane Coughlan
 
OpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics SlidesOpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics SlidesShane Coughlan
 
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27Shane Coughlan
 
FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30Shane Coughlan
 
OpenChain Webinar #56: Generative AI and Your Code
OpenChain Webinar #56: Generative AI and Your CodeOpenChain Webinar #56: Generative AI and Your Code
OpenChain Webinar #56: Generative AI and Your CodeShane Coughlan
 
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptx
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptxFrom One Standard to a Family - Taiwan Work Group - 2023-08-15.pptx
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptxShane Coughlan
 
OpenChain Japan Work Group Meeting #28 - 2023-07-11
OpenChain Japan Work Group Meeting #28 - 2023-07-11OpenChain Japan Work Group Meeting #28 - 2023-07-11
OpenChain Japan Work Group Meeting #28 - 2023-07-11Shane Coughlan
 
OpenChain Legal Work Group - 2023-06-29
OpenChain Legal Work Group - 2023-06-29OpenChain Legal Work Group - 2023-06-29
OpenChain Legal Work Group - 2023-06-29Shane Coughlan
 

More from Shane Coughlan (20)

OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
OpenChain Monthly Meeting North America and Asia - 2024-03-19
OpenChain Monthly Meeting North America and Asia - 2024-03-19OpenChain Monthly Meeting North America and Asia - 2024-03-19
OpenChain Monthly Meeting North America and Asia - 2024-03-19
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS Calculator
 
openEuler Community Overview - a presentation showing the current scale
openEuler Community Overview - a presentation showing the current scaleopenEuler Community Overview - a presentation showing the current scale
openEuler Community Overview - a presentation showing the current scale
 
OpenChain AI Study Group - North America and Europe - 2024-02-20
OpenChain AI Study Group - North America and Europe - 2024-02-20OpenChain AI Study Group - North America and Europe - 2024-02-20
OpenChain AI Study Group - North America and Europe - 2024-02-20
 
AI Study Group North America - Europe 2024-02-06
AI Study Group North America - Europe 2024-02-06AI Study Group North America - Europe 2024-02-06
AI Study Group North America - Europe 2024-02-06
 
OpenChain Monthly North America / Europe Call - 2024-02-06
OpenChain Monthly North America / Europe Call - 2024-02-06OpenChain Monthly North America / Europe Call - 2024-02-06
OpenChain Monthly North America / Europe Call - 2024-02-06
 
OpenChain Export Control Work Group 2024-01-09
OpenChain Export Control Work Group 2024-01-09OpenChain Export Control Work Group 2024-01-09
OpenChain Export Control Work Group 2024-01-09
 
OpenChain Legal Work Group - 2024-01-17
OpenChain Legal Work Group -  2024-01-17OpenChain Legal Work Group -  2024-01-17
OpenChain Legal Work Group - 2024-01-17
 
Openchain AI Study Group 2024-01-23.pptx
Openchain AI Study Group 2024-01-23.pptxOpenchain AI Study Group 2024-01-23.pptx
Openchain AI Study Group 2024-01-23.pptx
 
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...
OpenChain Webinar #58 - FOSS License Management through aliens4friends in Ecl...
 
Maturity Models - Open Compliance Summit 2023
Maturity Models - Open Compliance Summit 2023Maturity Models - Open Compliance Summit 2023
Maturity Models - Open Compliance Summit 2023
 
OpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics SlidesOpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics Slides
 
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27
OpenChain Webinar 57 - The Open Source Initiative - 2023-11-27
 
FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30
 
OpenChain Webinar #56: Generative AI and Your Code
OpenChain Webinar #56: Generative AI and Your CodeOpenChain Webinar #56: Generative AI and Your Code
OpenChain Webinar #56: Generative AI and Your Code
 
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptx
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptxFrom One Standard to a Family - Taiwan Work Group - 2023-08-15.pptx
From One Standard to a Family - Taiwan Work Group - 2023-08-15.pptx
 
OpenChain Japan Work Group Meeting #28 - 2023-07-11
OpenChain Japan Work Group Meeting #28 - 2023-07-11OpenChain Japan Work Group Meeting #28 - 2023-07-11
OpenChain Japan Work Group Meeting #28 - 2023-07-11
 
OpenChain Legal Work Group - 2023-06-29
OpenChain Legal Work Group - 2023-06-29OpenChain Legal Work Group - 2023-06-29
OpenChain Legal Work Group - 2023-06-29
 

Recently uploaded

chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 

Recently uploaded (20)

chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 

'Open source contribution policies that don’t suck!'

  • 1. Tobie Langel, Principal, UnlockOpen tobie@unlockopen.com Open source contribution policies that don’t suck!
  • 2. Do you have an open source policy? No 48% Don't know 13% Yes 39% < 250 employees 61% 11% 28% > 10,000 employees 25% 10% 65% Source: The New Stack & Linux Foundation/TODO Group 2018 Open Source Program Management Survey (https://github.com/todogroup/survey) Remember this is a biased sample!
  • 3. What does not having a policy mean? Contrary to popular belief, it does not mean that you don’t have an open source policy at all. It means that you don’t have a written one. You have a policy, whether it is written down or not. It could range from “no open source at all” to “anything goes.”  —Heather J. Meeker, Open Source Licensing Specialist, author of Open Source for Business.
  • 4. What does having a policy mean? Think you’re in the right camp because you have an open source contribution policy? Think again! • You can have a very restrictive open source policy. • You can have a very bureaucratic process to obtain approval. • You can have a very opaque process to obtain approval. None of these are fun!
  • 6. What is a policy that doesn’t suck? Permissive. Allows open source contribution to be an integral part of the company’s engineering culture and best practices. Based on trust and autonomy. Explicit. The decision making process is well documented and transparent. Informative. The policy explains the why an helps educate engineers. Frictionless. Avoid bureaucracy, red tape, lengthly back and forth with legal, etc. Engineering perspective
  • 7. What is a policy that doesn’t suck? Minimizes risk. Avoid: • giving away competitive advantage, • giving away IP that can be used defensively (or—shudders —offensively), • reputational damages and accidental infringements. Consistently followed across the company. Keep contribution under your radar. Avoid compliance issues. Savvy about written information. Sometimes you want a paper-trail (e.g. compliance), sometimes you don’t. Doesn’t drown critical problems in a sea of menial issues. Legal perspective* * IANAL (I am not a lawyer). Please talk to me if you are and want to help me improve this slide.
  • 8. What is a policy that doesn’t suck? Engineering to be happy and productive. Risks minimized and well understood. Good communication between legal and engineering. Alignment with Business goals. Business perspective
  • 9. At the heart is a tension Legal wants to minimize risk. Prefers oral communication. Manager’s schedule. Favors spectrum thinking. Conservative role. Engineering wants to maximize velocity. Prefers written communication. Maker’s schedule. Favors binary thinking. Innovative role.
  • 10. Coming to agreement Acknowledge that this tension is normal. It’s just checks and balances. Listen to both sides. Remind them that their role is to help achieve common business goals. • Legal’s role is to minimize risk, but not at the expense of innovation. • Engineering’s needs can’t be fulfilled at the expense of the company’s survival. Find common ground. A good policy will improve the life of both sides. Align your open source activity with your business goals. If you are a patent troll, then don’t do open source. Accept that your open source policy will change with your business.
  • 11. Contributing open source What is a policy really about? Using open source
  • 12. The realm of Using open source
  • 13. Well understood problem, essentially: • Using software with licenses that are compatible with your current and future business model. • Compliance. Using open source Tip: a common issue is missing licenses. Equip engineering with a process (and issue or pull request templates) to request proper OSI-approved licenses.
  • 16. Other 4% Don't know 37% Must ask 12% Yes! 47% “How does your employer's IP agreement/policy affect your free- time contributions to open source unrelated to your work?” “Respondents were sampled randomly from traffic and qualifying activity to licensed open source repositories on GitHub.com and invited to complete the survey through a dialog box. A smaller sample was recruited from open source communities sourced outside of GitHub, […]” Contributing outside of work Source: GitHub 2017 open source survey (http://opensourcesurvey.org/2017/). But again… this is a highly biased sample.
  • 17. Contributing outside of work Why so much confusion? • Depends on the jurisdiction, but not uncommon, especially in the USA, for companies to own employees’ production 24/7. • Sometimes, extra criteria apply. For example, in California, IP developed with company equipment—even outside of work— belongs to the employer. • This prevents employees from contributing to open source, unless they ask for, and are granted permission to do so.
  • 18. Contributing outside of work The common solution: ask for permission • Most companies have a process for this. • Tends to focus on releasing open source or working on a limited set of pre-approved projects. • Breaks down when there’s a high number of dependencies (such as for Node.js projects).
  • 19. Contributing outside of work The better solution: BEIPA • Balanced Employee IP Agreement • https://github.com/github/balanced-employee-ip-agreement • Project created by GitHub, based on its own IP agreement. • BEIPA only claims control of creations made for or relating to the company's business.
  • 22. Releasing open source at work • Distinguish large open source projects you want to promote from smaller "day to day” modules. (E.g. Google’s < 100 LoC rule.) • Offer well oiled and well documented processes, checklists, templates, and tooling (see: https://github.com/todogroup/policies). • Offer help. • Promote working in the open rather than releasing software once it’s done. (Consider README-driven development to avoid scope creep.)
  • 23. Patching open source at work • By far the most common activity and the most important one. • The experience must be as frictionless as possible for engineers. • Surface the process by which decisions are made and trust engineers to do the right thing. This let’s legal focus on the difficult cases. • Cache decisions (build approve- and deny- lists) so that the process gets faster as time goes by.
  • 25. Turn your policy into an app! • Automatically approve requests that meet pre-established requirements (e.g. patch an MIT-licensed open source project on GitHub). • Automatically reject requests that don’t meet your criteria (but allow motivated appeals). • Manually handle other requests and cache the decision so more gets automated over time.
  • 26. Using such a system, Adobe was able to shorten it’s review time from 4.6 days to 4.6 hours. But there’s more. The data collected can help: • understand your open source activity, • promote it, • connect engineers unknowingly contributing to the same projects, • etc. Turn your policy into an app!
  • 27. Thank you! Tobie Langel (@tobie) Principal, UnlockOpen tobie@unlockopen.com