SlideShare a Scribd company logo
1 of 167
Adding an Operator to Airflow
A contributor overflow exception
Vanessa Sochat, PhD
Research Software Engineer
Stanford Research Computing Center
Why am I here?
Misaligned expectations: strained interaction
Once upon a time...
contributors reviewers
reviewers
changes
Contributor
reviewers
changes
Contributor Reviewer
Once upon a time...
people
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
What happened?
“This looks neat!”Pusheenocat found Apache Airflow
- I love Python
- I’m good with containers
- I maintain singularity python
Should I contribute?
“Yes! I should add a singularity operator”Should I contribute?
“I’ll mimic another operator.”How do I start?
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
- A community member said “Hey, this would be useful!”
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
- A community member said “Hey, this would be useful!”
- Stalled for another 4 months
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
- A community member said “Hey, this would be useful!”
- Stalled for another 4 months
- Closed
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
- A community member said “Hey, this would be useful!”
- Stalled for another 4 months
- Closed
- “They forgot about me.”
What Happened?
On March 5, 2019 Pusheenocat opened a pull request
- It was reviewed 6 times, 80 total comments, green multiple times
- The review stalled for 1 month, another month, and then 4 months
- A community member said “Hey, this would be useful!”
- Stalled for another 4 months
- Closed
- “She wasn’t persistent enough. She didn’t follow instructions.”
Misaligned incentives?
contributors reviewers
incentives
expectations
incentives
expectations
contributors reviewers
I care about the community
expectations
incentives
She cares about the
community
contributors reviewers
I care about the community
The review process is
streamlined.
I want an efficient review.
She cares about the
community
contributors reviewers
I have to do this for my job.
expectations
incentives
Why doesn’t she care about
the community?
contributors reviewers
expectations
Why did they forget about
me?
The contributor needs to be
persistent.
incentives
Who is involved?
Reviewers
reviewers
incentives
expectations
The maintainer
reviewers
incentives
expectations
The project member
reviewers
incentives
expectations
The long term contributor
Contributors
The job seeking deputy
contributors
incentives
expectations
The worker bee
contributors
incentives
expectations
The taste tester
contributors
incentives
expectations
contributors
incentives
expectations
The wandering developer
I’ll tell ya’ the story!
Adding an Executor to Airflow
A contributor overflow exception
Once upon a time,
on March 15, 2019
Pusheenocat
opened a pull request...
✅ The pull request template is often the first interaction.
Contributor bandwidth
Is limited
Contributor bandwidth
Is limited
✅ Be selective about what you ask contributors to do
Adding an Executor to Airflow
A contributor overflow exception
One day later...
✅ Reviewing promptly and answering questions
Expectation: copy this command, and done
Against expectation: I want to learn how to do this
Expectation: copy this command, and done
Against expectation: I want to learn how to do this
Expectation: copy this command, and done
Against expectation: I want to learn how to do this
Expectation: copy this command, and done
Against expectation: I want to learn how to do this
✅ Have good communication for each step
✅ Have good communication for each step
✅ Be empathetic to your contributor
Adding an Executor to Airflow
A contributor overflow exception
One month later...
Something changed?
Adding an Executor to Airflow
A contributor overflow exception
Four months later...
“Hello I’m a robot here to tell you that you were again
forgotten, and you are getting closed.”
Talking to the bot…
Talking to the bot…
✅ Have a community strategy for managing reviews
Hey, this would actually be useful, what’s up?
Why are you editing other files?
I didn’t?
Adding an Executor to Airflow
A contributor overflow exception
Meanwhile on Twitter...
We needed her to do something she didn’t
know to do.
You are not humble or persistent enough.
You are not empathetic.
You don’t know how to rebase.
You don’t know the right tools to use.
You must meet a quality bar you don’t understand
✅ Be supportive, not patronizing
✅ Be supportive, not patronizing
I understand this, but a new contributor needs
more support from the community.
A new contributor needs guidance.
I didn’t know what to do, and was forgotten.
This is not a community I would come back to.
✅ Communicate clearly, and respectfully
Adding an Executor to Airflow
A contributor overflow exception
A new contributor needs guidance...
Contributor bandwidth
Is limited
✅ Be selective about what you ask contributors to do
Adding an Executor to Airflow
A contributor overflow exception
Meanwhile on Twitter...
We have best practices and it’s on you to know them!
We have best practices and it’s on you to know them!
I can’t be expected to know the culture for a new
community.
We have best practices and it’s on you to know them!
I can’t be expected to know the culture for a new
community.
I am burnt out on this.
Devote more time to understand our community!
Devote more time to understand our community!
Join another Slack channel!
Devote more time to understand our community!
Join another Slack channel!
How to move forward?
Adding an Executor to Airflow
A contributor overflow exception
Why is this so hard for you?
✅ Do not target individuals; do not be mean.
Adding an Executor to Airflow
A contributor overflow exception
Success!
Misaligned incentives?
pusheenocat reviewers
Incentives
Have fun
Add Singularity operator
Expectations
Read all documentation
Keep up to date
Push for next steps
pusheenocat reviewers
Expectations
Supportive environment
Incentives
Contributor is advocate
Informed contributor
What did we learn?
What did we learn?
- A project cannot only assume one kind of contributor
- Not all contributors want to please, even if they want to add a feature
What did we learn?
- A project cannot only assume one kind of contributor
- Not all contributors want to please, even if they want to add a feature
- You should absolutely not bring personal issues up in a review
- “Why is this so hard for you” does not belong there.
What did we learn?
- A project cannot only assume one kind of contributor
- Not all contributors want to please, even if they want to add a feature
- You should absolutely not bring personal issues up in a review
- “Why is this so hard for you” does not belong there.
- Contributor and developer have shared responsibility for making progress
- Clearly communicate expectations and ideas
- The contributor is responsible as long as tests don’t pass, requests for changes
present
- The reviewer(s) are responsible in all other cases
What did we learn?
- A project cannot only assume one kind of contributor
- Not all contributors want to please, even if they want to add a feature
- You should absolutely not bring personal issues up in a review
- “Why is this so hard for you” does not belong there.
- Contributor and developer have shared responsibility for making progress
- Clearly communicate expectations and ideas
- The contributor is responsible as long as tests don’t pass, requests for changes
present
- The reviewer(s) are responsible in all other cases
- Expect the contributor to be informed within the scope of the contribution.
Adding an Executor to Airflow
A contributor overflow exception
Technical discussions require empathy.
How to be empathetic?
- Why are they here?
- The other party has goals that drive their incentives and actions. What are they?
How to be empathetic?
- Why are they here?
- The other party has goals that drive their incentives and actions. What are they?
- What are our shared goals?
- Focus on shared goals, and use them to re-center.
How to be empathetic?
- Why are they here?
- The other party has goals that drive their incentives and actions. What are they?
- What are our shared goals?
- Focus on shared goals, and use them to re-center.
- What don’t I know?
- What expectations does the other party have that I should ask about?
What are consequences?
contribution
contribution
contribution
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
people
Open Source!
Adding an Executor to Airflow
A contributor overflow exception
Each of us is living our own developer story...
Adding an Executor to Airflow
A contributor overflow exception
We’re part of a much bigger open source story.
Adding an Executor to Airflow
A contributor overflow exception
The community is responsible for the experience.
Adding an Executor to Airflow
A contributor overflow exception
You are responsible for creating positive experience.
Adding an Executor to Airflow
A contributor overflow exception
Who is the hero of the story?
Adding an Executor to Airflow
A contributor overflow exception
Be like Elmo!
Adding an Executor to Airflow
A contributor overflow exception
Twitter and GitHub @vsoch

More Related Content

Similar to Adding An Operator to Airflow: A Contributor Overflow Exception

Essay On Earthquake And Its Impact
Essay On Earthquake And Its ImpactEssay On Earthquake And Its Impact
Essay On Earthquake And Its ImpactAmanda Dahya
 
ENG215 Writing Activity 3 (rev. 2018-12) 1 WRITING.docx
ENG215 Writing Activity 3 (rev. 2018-12)    1  WRITING.docxENG215 Writing Activity 3 (rev. 2018-12)    1  WRITING.docx
ENG215 Writing Activity 3 (rev. 2018-12) 1 WRITING.docxgidmanmary
 
How To Write A College Admission Essay Guide B
How To Write A College Admission Essay Guide BHow To Write A College Admission Essay Guide B
How To Write A College Admission Essay Guide BMegan Jones
 
How listening deeply can transform you into a better leader, designer, resear...
How listening deeply can transform you into a better leader, designer, resear...How listening deeply can transform you into a better leader, designer, resear...
How listening deeply can transform you into a better leader, designer, resear...Pei Ling Chin
 
How To Make A Hypothesis In Researc. Online assignment writing service.
How To Make A Hypothesis In Researc. Online assignment writing service.How To Make A Hypothesis In Researc. Online assignment writing service.
How To Make A Hypothesis In Researc. Online assignment writing service.Tracy Hill
 
Nc State University Essay Question. Online assignment writing service.
Nc State University Essay Question. Online assignment writing service.Nc State University Essay Question. Online assignment writing service.
Nc State University Essay Question. Online assignment writing service.Courtney Hurst
 
· Self-Assessment· InterpretationValues and Moral Survey of St
· Self-Assessment· InterpretationValues and Moral Survey of St· Self-Assessment· InterpretationValues and Moral Survey of St
· Self-Assessment· InterpretationValues and Moral Survey of StLesleyWhitesidefv
 
! Nh n welcome_package_7-11-14_ppt97-2003
!  Nh n welcome_package_7-11-14_ppt97-2003!  Nh n welcome_package_7-11-14_ppt97-2003
! Nh n welcome_package_7-11-14_ppt97-2003John R. Fugazzie MBA
 
! NhN welcome_package_7-11-14_ppt 97-2003
!  NhN welcome_package_7-11-14_ppt 97-2003!  NhN welcome_package_7-11-14_ppt 97-2003
! NhN welcome_package_7-11-14_ppt 97-2003lisacasinoschuetz
 
Clean Up Your Agile Outcomes.pdf
Clean Up Your Agile Outcomes.pdfClean Up Your Agile Outcomes.pdf
Clean Up Your Agile Outcomes.pdfJohn Barratt
 
"Mastering cross-cultural communication", Anna Gandrabura
"Mastering cross-cultural communication", Anna Gandrabura"Mastering cross-cultural communication", Anna Gandrabura
"Mastering cross-cultural communication", Anna GandraburaFwdays
 
Essay On Importance Of Time Management In Students Life
Essay On Importance Of Time Management In Students LifeEssay On Importance Of Time Management In Students Life
Essay On Importance Of Time Management In Students LifeXiomara Smith
 
Customer Interviews: Uncovering Product or Feature Ideas
Customer Interviews: Uncovering Product or Feature IdeasCustomer Interviews: Uncovering Product or Feature Ideas
Customer Interviews: Uncovering Product or Feature IdeasAndreas Kwiatkowski
 

Similar to Adding An Operator to Airflow: A Contributor Overflow Exception (18)

Essay On Earthquake And Its Impact
Essay On Earthquake And Its ImpactEssay On Earthquake And Its Impact
Essay On Earthquake And Its Impact
 
ENG215 Writing Activity 3 (rev. 2018-12) 1 WRITING.docx
ENG215 Writing Activity 3 (rev. 2018-12)    1  WRITING.docxENG215 Writing Activity 3 (rev. 2018-12)    1  WRITING.docx
ENG215 Writing Activity 3 (rev. 2018-12) 1 WRITING.docx
 
How To Write A College Admission Essay Guide B
How To Write A College Admission Essay Guide BHow To Write A College Admission Essay Guide B
How To Write A College Admission Essay Guide B
 
How listening deeply can transform you into a better leader, designer, resear...
How listening deeply can transform you into a better leader, designer, resear...How listening deeply can transform you into a better leader, designer, resear...
How listening deeply can transform you into a better leader, designer, resear...
 
How To Make A Hypothesis In Researc. Online assignment writing service.
How To Make A Hypothesis In Researc. Online assignment writing service.How To Make A Hypothesis In Researc. Online assignment writing service.
How To Make A Hypothesis In Researc. Online assignment writing service.
 
Search @ Spotify
Search @ Spotify Search @ Spotify
Search @ Spotify
 
2. research
2. research2. research
2. research
 
Nc State University Essay Question. Online assignment writing service.
Nc State University Essay Question. Online assignment writing service.Nc State University Essay Question. Online assignment writing service.
Nc State University Essay Question. Online assignment writing service.
 
· Self-Assessment· InterpretationValues and Moral Survey of St
· Self-Assessment· InterpretationValues and Moral Survey of St· Self-Assessment· InterpretationValues and Moral Survey of St
· Self-Assessment· InterpretationValues and Moral Survey of St
 
Dance USA Intro
Dance USA IntroDance USA Intro
Dance USA Intro
 
! Nh n welcome_package_7-11-14_ppt97-2003
!  Nh n welcome_package_7-11-14_ppt97-2003!  Nh n welcome_package_7-11-14_ppt97-2003
! Nh n welcome_package_7-11-14_ppt97-2003
 
! NhN welcome_package_7-11-14_ppt 97-2003
!  NhN welcome_package_7-11-14_ppt 97-2003!  NhN welcome_package_7-11-14_ppt 97-2003
! NhN welcome_package_7-11-14_ppt 97-2003
 
Clean Up Your Agile Outcomes.pdf
Clean Up Your Agile Outcomes.pdfClean Up Your Agile Outcomes.pdf
Clean Up Your Agile Outcomes.pdf
 
"Mastering cross-cultural communication", Anna Gandrabura
"Mastering cross-cultural communication", Anna Gandrabura"Mastering cross-cultural communication", Anna Gandrabura
"Mastering cross-cultural communication", Anna Gandrabura
 
Communication cycle.pptx
Communication cycle.pptxCommunication cycle.pptx
Communication cycle.pptx
 
Unit 13 lo4/5
Unit 13 lo4/5Unit 13 lo4/5
Unit 13 lo4/5
 
Essay On Importance Of Time Management In Students Life
Essay On Importance Of Time Management In Students LifeEssay On Importance Of Time Management In Students Life
Essay On Importance Of Time Management In Students Life
 
Customer Interviews: Uncovering Product or Feature Ideas
Customer Interviews: Uncovering Product or Feature IdeasCustomer Interviews: Uncovering Product or Feature Ideas
Customer Interviews: Uncovering Product or Feature Ideas
 

More from Vanessa S

The Stories We Tell Ourselves
The Stories We Tell OurselvesThe Stories We Tell Ourselves
The Stories We Tell OurselvesVanessa S
 
Singularity Registry HPC
Singularity Registry HPCSingularity Registry HPC
Singularity Registry HPCVanessa S
 
Introduction to Singularity and Data Containers
Introduction to Singularity and Data ContainersIntroduction to Singularity and Data Containers
Introduction to Singularity and Data ContainersVanessa S
 
Research Software Engineering at Stanford University
Research Software Engineering at Stanford UniversityResearch Software Engineering at Stanford University
Research Software Engineering at Stanford UniversityVanessa S
 
Research Software Engineering at Stanford
Research Software Engineering at StanfordResearch Software Engineering at Stanford
Research Software Engineering at StanfordVanessa S
 
The Research Software Encyclopedia
The Research Software EncyclopediaThe Research Software Encyclopedia
The Research Software EncyclopediaVanessa S
 
The Scientific Filesystem
The Scientific FilesystemThe Scientific Filesystem
The Scientific FilesystemVanessa S
 
Singularity Containers for Scientific Compute
Singularity Containers for Scientific ComputeSingularity Containers for Scientific Compute
Singularity Containers for Scientific ComputeVanessa S
 
Laboratory of NeuroGenetics QA (8/2010)
Laboratory of NeuroGenetics QA (8/2010)Laboratory of NeuroGenetics QA (8/2010)
Laboratory of NeuroGenetics QA (8/2010)Vanessa S
 
PEARC17: Reproducibility and Containers: The Perfect Sandwich
PEARC17: Reproducibility and Containers: The Perfect SandwichPEARC17: Reproducibility and Containers: The Perfect Sandwich
PEARC17: Reproducibility and Containers: The Perfect SandwichVanessa S
 
Building Tools for Neuroimaging
Building Tools for NeuroimagingBuilding Tools for Neuroimaging
Building Tools for NeuroimagingVanessa S
 
Brain Maps like Mine
Brain Maps like MineBrain Maps like Mine
Brain Maps like MineVanessa S
 
Qualifying Exam Presentation
Qualifying Exam PresentationQualifying Exam Presentation
Qualifying Exam PresentationVanessa S
 
Pre-Proposal Presentation
Pre-Proposal PresentationPre-Proposal Presentation
Pre-Proposal PresentationVanessa S
 
Independent component analysis
Independent component analysisIndependent component analysis
Independent component analysisVanessa S
 
Subnetworks in Schizophrenia, fMRI
Subnetworks in Schizophrenia, fMRISubnetworks in Schizophrenia, fMRI
Subnetworks in Schizophrenia, fMRIVanessa S
 
Research in Progress April 2014
Research in Progress April 2014Research in Progress April 2014
Research in Progress April 2014Vanessa S
 
Research in Progress Presentation
Research in Progress PresentationResearch in Progress Presentation
Research in Progress PresentationVanessa S
 
Introduction to Machine Learning Lecture
Introduction to Machine Learning LectureIntroduction to Machine Learning Lecture
Introduction to Machine Learning LectureVanessa S
 
Introduction to Neuroimaging Informatics
Introduction to Neuroimaging InformaticsIntroduction to Neuroimaging Informatics
Introduction to Neuroimaging InformaticsVanessa S
 

More from Vanessa S (20)

The Stories We Tell Ourselves
The Stories We Tell OurselvesThe Stories We Tell Ourselves
The Stories We Tell Ourselves
 
Singularity Registry HPC
Singularity Registry HPCSingularity Registry HPC
Singularity Registry HPC
 
Introduction to Singularity and Data Containers
Introduction to Singularity and Data ContainersIntroduction to Singularity and Data Containers
Introduction to Singularity and Data Containers
 
Research Software Engineering at Stanford University
Research Software Engineering at Stanford UniversityResearch Software Engineering at Stanford University
Research Software Engineering at Stanford University
 
Research Software Engineering at Stanford
Research Software Engineering at StanfordResearch Software Engineering at Stanford
Research Software Engineering at Stanford
 
The Research Software Encyclopedia
The Research Software EncyclopediaThe Research Software Encyclopedia
The Research Software Encyclopedia
 
The Scientific Filesystem
The Scientific FilesystemThe Scientific Filesystem
The Scientific Filesystem
 
Singularity Containers for Scientific Compute
Singularity Containers for Scientific ComputeSingularity Containers for Scientific Compute
Singularity Containers for Scientific Compute
 
Laboratory of NeuroGenetics QA (8/2010)
Laboratory of NeuroGenetics QA (8/2010)Laboratory of NeuroGenetics QA (8/2010)
Laboratory of NeuroGenetics QA (8/2010)
 
PEARC17: Reproducibility and Containers: The Perfect Sandwich
PEARC17: Reproducibility and Containers: The Perfect SandwichPEARC17: Reproducibility and Containers: The Perfect Sandwich
PEARC17: Reproducibility and Containers: The Perfect Sandwich
 
Building Tools for Neuroimaging
Building Tools for NeuroimagingBuilding Tools for Neuroimaging
Building Tools for Neuroimaging
 
Brain Maps like Mine
Brain Maps like MineBrain Maps like Mine
Brain Maps like Mine
 
Qualifying Exam Presentation
Qualifying Exam PresentationQualifying Exam Presentation
Qualifying Exam Presentation
 
Pre-Proposal Presentation
Pre-Proposal PresentationPre-Proposal Presentation
Pre-Proposal Presentation
 
Independent component analysis
Independent component analysisIndependent component analysis
Independent component analysis
 
Subnetworks in Schizophrenia, fMRI
Subnetworks in Schizophrenia, fMRISubnetworks in Schizophrenia, fMRI
Subnetworks in Schizophrenia, fMRI
 
Research in Progress April 2014
Research in Progress April 2014Research in Progress April 2014
Research in Progress April 2014
 
Research in Progress Presentation
Research in Progress PresentationResearch in Progress Presentation
Research in Progress Presentation
 
Introduction to Machine Learning Lecture
Introduction to Machine Learning LectureIntroduction to Machine Learning Lecture
Introduction to Machine Learning Lecture
 
Introduction to Neuroimaging Informatics
Introduction to Neuroimaging InformaticsIntroduction to Neuroimaging Informatics
Introduction to Neuroimaging Informatics
 

Recently uploaded

APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxthe ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxhumanexperienceaaa
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...RajaP95
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 

Recently uploaded (20)

APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxthe ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 

Adding An Operator to Airflow: A Contributor Overflow Exception

Editor's Notes

  1. # Adding An Operator to Airflow: A Contributor Overflow Exception Engaging with a new community is a common experience in OSS development. There are usually expectations held by the project about the contributor's exposure to the community, and by the contributor about interactions with the community. When these expectations are misaligned, the process is strained. In this talk, I'll discuss a real life experience that required communication, persistence, and patience to ultimately lead to a positive outcome. ## Biography Vanessa Sochat is a research software engineer for the Stanford Research Computing Center. She received her PhD in Biomedical Informatics in 2016, and stayed at Stanford to focus on open source software development for scientific reproducibility. Her work includes development of container technologies, workflow software, and recipes for continuous integration. She is passionate about programming and system design, and continues to run the Singularity Hub container registry and maintain a large set of open source libraries. When not programming, Vanessa can be found eating avocados, recording podcast episodes or fun videos, making dinosaur noises, and running outside in the snow.
  2. So let’s start with a very meta question. Why am I here? Well probably the same reason that you are here - today we want to talk about community. Engaging with a new community is a common experience in OSS development. There are usually expectations held by the project about the contributor's exposure to the community, and by the contributor about interactions with the community.
  3. When these expectations are misaligned, the process is strained. In this talk, I'll discuss a real life experience that required communication, persistence, and patience to ultimately lead to a positive outcome.
  4. Once upon a time...
  5. There were contributors, and there were reviewers.
  6. The contributor might say “Hey! I’ve made these changes to the codebase. Could you please take a look?”
  7. And the maintainers might say “Ah, you’ve made changes to the codebase! Let me take a look.” But no, we’re already off a bit, because I can’t just shove people into such stark boxes. Let’s try again.
  8. Once upon a time...
  9. There were people.
  10. And they cared a lot about different kinds of open source software. Containers! Programming languages! Workflow managers!
  11. At the intersection of their communities is where collaboration happened. But people have their favorites so...
  12. Let’s scootch them a little closer.
  13. So let’s start with a special node - the open source developer, who can actually sit sometimes right in the middle of a web of projects. This is Pusheenacat, the open source developer.
  14. So what happened to Pusheenacat?
  15. Just to make this fun, I’m going to introduce to you three kinds of archetypes to help us think about this discussion.
  16. Both contributors and reviewers have expectations and incentives.
  17. Here is an easy example. A contributor might really care about the community, and the reviewers expect them to as well. This translates to simple things like being respectful, putting time and care into writing a response, or even just the emojis that you put on an issue comment.
  18. Both parties want the review to be efficient.
  19. The maintainer is someone that is uniquely responsible for the survival and longevity of the software. There can be more than one of course. I chose this particular picture because in a lot of cases, a maintainer plays a large role in interacting with people. In helping them, handling issues, or creating awareness for the library. This is a role that comes with a LOT of responsibility. Maintainers are generally responsible for the project. This means it’s sustainability and its quality. This is stressful. Should a new feature be added, is it really needed or is it going to make maintaining the project harder? And also, this person needs to learn how to act cordial even in the face of a disgruntled contributor. The maintainer needs to learn to say no. Are the pull requests being reviewed, and are the issues being addressed? There is a lot of weight on the maintainers shoulders.
  20. The long term contributor started contributing to the project at some point, and became familiar with it, or liked the community enough to stick around. He or she contributes by way of helping with issues, or being a reviewer on pull requests. This is a lot less stressful role than a core maintainer because they have less of a role in taking care of the long term sustainability or design of the project.
  21. The job seeking deputy: The job seeking deputy is a contributor that is trying to impress you, the project. They are going to be overly polite, read every single piece of documentation that you have, and generally kiss ass. They need to look good because they want to prove themselves to you.
  22. The worker bee: The worker bee is there because he has to be. Maybe his employer said “You need to do this thing for this software” OR maybe he’s getting paid by someone directly. It doesn’t matter. Because it’s a matter of business, this guy is incentivized to do everything right. He might not be aiming to please the project, but he’s possibly aiming to please his employer, and not get in trouble.
  23. The wandering baker (is really interested in his or her craft, baking, and literally wanders around the open source landscape looking for new recipes /things to try. This person will put in the time and energy to share her recipe, but she isn’t going to stick around to be a permanent fixture in the bake shop.