SlideShare a Scribd company logo
Maintaining
quality in
open source
Quality Engineer
@ GitHub
/meaghan-lewis
meaghan@github.com
@iammeaghanlewis
3
CLIENT APPS
4
5
6
7
What
distinguishes
open source
projects?
COMMUNITY
9
1WHY INVOLVEMENT
MATTERS
Contributions are key
● Engagement is good
● More eyes on the application
● More ideas for features and enhancements
CONTRIBUTIONS
MAKE OR BREAK
A PROJECT
ENCOURAGE THE
COMMUNITY
Make it easy
● Helpful README
● Have contribution guidelines
● Maintain build & test scripts
● Have templates
Readme
Contributing
Scripts
Run tests in CI automatically
Issue template
Pull request template
COMMUNITY
INTERACTIONS
Types of collaboration
Issues Pull Requests Support
Issues
● Label issues accordingly
● Triage regularly
● Work with community members
Label issues accordingly
Triage
Work with collaborators
Pull requests
● Have test process & plan
● Test changes
● Give feedback
Define testing process
Manual test scenarios
Confirm PR tested
Support
● Make notices publicly available
● Pre-canned responses
● Have SLA for response
Halp
Canned Replies
Takeaways
1Make
information
accessible
Have
processes to
support
contributors
Be responsive
and helpful
2 3
Thanks!
Any questions? /meaghan-lewis
meaghan@github.com
@iammeaghanlewis

More Related Content

What's hot

What is waterfall model
What is waterfall modelWhat is waterfall model
What is waterfall model
Shivam Rathi
 
Teamleader testcon 2019
Teamleader testcon 2019Teamleader testcon 2019
Teamleader testcon 2019
Thomas Noë
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
Jean-François Nguyen
 
Selenium as a trend
Selenium as a trendSelenium as a trend
Selenium as a trend
Nataliya Holodiuk
 
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
Agile đây Vietnam
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
pmanvi
 
TLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing Testing
Anna Royzman
 
The Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego MolinaThe Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego Molina
Sauce Labs
 
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVALWHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
Aditi Sharma
 
Road to react
Road to reactRoad to react
Road to react
Vincent Desmares
 
Validate Documents with Automated Visual Testing
Validate Documents with Automated Visual TestingValidate Documents with Automated Visual Testing
Validate Documents with Automated Visual Testing
Demi Jiang
 
Critical Theory Unit Project Assessments
Critical Theory Unit Project AssessmentsCritical Theory Unit Project Assessments
Critical Theory Unit Project Assessments
avalvona
 
Better than google.
Better than google.Better than google.
Better than google.
MarcosAntoniodeSouza16
 
TestBash: Quality Does Not Belong With the Tester!
TestBash: Quality Does Not Belong With the Tester!TestBash: Quality Does Not Belong With the Tester!
TestBash: Quality Does Not Belong With the Tester!
Maaret Pyhäjärvi
 
Software development in a World of Change
Software development in a World of ChangeSoftware development in a World of Change
Software development in a World of Change
Sami Lehtinen
 
Selenium Workshop 2015
Selenium Workshop 2015Selenium Workshop 2015
Selenium Workshop 2015
vodqasg
 
Creating visual metaphors of the design cycle
Creating visual metaphors of the design cycleCreating visual metaphors of the design cycle
Creating visual metaphors of the design cycle
dflynn19
 
CS519 - project idea presentation
CS519 - project idea presentationCS519 - project idea presentation
CS519 - project idea presentation
Sergii Shmarkatiuk
 
Products are a mess
Products are a messProducts are a mess
Products are a mess
Suman Mukherjee
 

What's hot (19)

What is waterfall model
What is waterfall modelWhat is waterfall model
What is waterfall model
 
Teamleader testcon 2019
Teamleader testcon 2019Teamleader testcon 2019
Teamleader testcon 2019
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
 
Selenium as a trend
Selenium as a trendSelenium as a trend
Selenium as a trend
 
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
TLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing Testing
 
The Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego MolinaThe Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego Molina
 
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVALWHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
WHY MOODLE PLUGIN DEVELOPMENT NEEDS APPROVAL
 
Road to react
Road to reactRoad to react
Road to react
 
Validate Documents with Automated Visual Testing
Validate Documents with Automated Visual TestingValidate Documents with Automated Visual Testing
Validate Documents with Automated Visual Testing
 
Critical Theory Unit Project Assessments
Critical Theory Unit Project AssessmentsCritical Theory Unit Project Assessments
Critical Theory Unit Project Assessments
 
Better than google.
Better than google.Better than google.
Better than google.
 
TestBash: Quality Does Not Belong With the Tester!
TestBash: Quality Does Not Belong With the Tester!TestBash: Quality Does Not Belong With the Tester!
TestBash: Quality Does Not Belong With the Tester!
 
Software development in a World of Change
Software development in a World of ChangeSoftware development in a World of Change
Software development in a World of Change
 
Selenium Workshop 2015
Selenium Workshop 2015Selenium Workshop 2015
Selenium Workshop 2015
 
Creating visual metaphors of the design cycle
Creating visual metaphors of the design cycleCreating visual metaphors of the design cycle
Creating visual metaphors of the design cycle
 
CS519 - project idea presentation
CS519 - project idea presentationCS519 - project idea presentation
CS519 - project idea presentation
 
Products are a mess
Products are a messProducts are a mess
Products are a mess
 

Similar to Maintaining quality in open source

Agile Testing
Agile Testing Agile Testing
Agile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical StudyAgile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical Study
Asanka Dilruk
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and Agile
Memi Beltrame
 
Optimism Webinar 2 - Moving from AB testing to true experimentation
Optimism Webinar 2 - Moving from AB testing to true experimentationOptimism Webinar 2 - Moving from AB testing to true experimentation
Optimism Webinar 2 - Moving from AB testing to true experimentation
Optimizely
 
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operationsThe IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
D2L Barry
 
Development methodologies
Development methodologiesDevelopment methodologies
Development methodologies
missstevenson01
 
Building A Testing Culture At Autodesk
Building A Testing Culture At AutodeskBuilding A Testing Culture At Autodesk
Building A Testing Culture At Autodesk
Mari Ju
 
Pscad agile adoption
Pscad agile adoptionPscad agile adoption
Pscad agile adoption
sdeconf
 
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdfTest Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Diana Gray, MBA
 
Webcast Presentation: Increasing Product Quality through DevOps
Webcast Presentation: Increasing Product Quality through DevOpsWebcast Presentation: Increasing Product Quality through DevOps
Webcast Presentation: Increasing Product Quality through DevOps
GRUC
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
Software Park Thailand
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
Thanh Nguyen
 
ATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps CultureATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps Culture
Agile Testing Alliance
 
Agile adoption julen c. mohanty
Agile adoption   julen c. mohantyAgile adoption   julen c. mohanty
Agile adoption julen c. mohanty
Julen Mohanty
 
Practitest webinar - When a test manager makes a difference
Practitest webinar - When a test manager makes a differencePractitest webinar - When a test manager makes a difference
Practitest webinar - When a test manager makes a difference
Derk-Jan de Grood
 
What is agile
What is agileWhat is agile
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
movocode
 
How integrators bring you a better Moodle
How integrators bring you a better MoodleHow integrators bring you a better Moodle
How integrators bring you a better Moodle
Dan Poltawski
 
Enabling DevOps for enterprise
Enabling DevOps for enterpriseEnabling DevOps for enterprise
Enabling DevOps for enterprise
punedevscom
 
Validate your product with usability testing
Validate your product with usability testingValidate your product with usability testing
Validate your product with usability testing
Nearsoft
 

Similar to Maintaining quality in open source (20)

Agile Testing
Agile Testing Agile Testing
Agile Testing
 
Agile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical StudyAgile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical Study
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and Agile
 
Optimism Webinar 2 - Moving from AB testing to true experimentation
Optimism Webinar 2 - Moving from AB testing to true experimentationOptimism Webinar 2 - Moving from AB testing to true experimentation
Optimism Webinar 2 - Moving from AB testing to true experimentation
 
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operationsThe IC Who "Lived" Me, Transitioning from implementing D2L to operations
The IC Who "Lived" Me, Transitioning from implementing D2L to operations
 
Development methodologies
Development methodologiesDevelopment methodologies
Development methodologies
 
Building A Testing Culture At Autodesk
Building A Testing Culture At AutodeskBuilding A Testing Culture At Autodesk
Building A Testing Culture At Autodesk
 
Pscad agile adoption
Pscad agile adoptionPscad agile adoption
Pscad agile adoption
 
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdfTest Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
 
Webcast Presentation: Increasing Product Quality through DevOps
Webcast Presentation: Increasing Product Quality through DevOpsWebcast Presentation: Increasing Product Quality through DevOps
Webcast Presentation: Increasing Product Quality through DevOps
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
ATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps CultureATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps Culture
 
Agile adoption julen c. mohanty
Agile adoption   julen c. mohantyAgile adoption   julen c. mohanty
Agile adoption julen c. mohanty
 
Practitest webinar - When a test manager makes a difference
Practitest webinar - When a test manager makes a differencePractitest webinar - When a test manager makes a difference
Practitest webinar - When a test manager makes a difference
 
What is agile
What is agileWhat is agile
What is agile
 
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
4-Agility & Agile process, 12 Agile Principles-10-01-2024.pdf
 
How integrators bring you a better Moodle
How integrators bring you a better MoodleHow integrators bring you a better Moodle
How integrators bring you a better Moodle
 
Enabling DevOps for enterprise
Enabling DevOps for enterpriseEnabling DevOps for enterprise
Enabling DevOps for enterprise
 
Validate your product with usability testing
Validate your product with usability testingValidate your product with usability testing
Validate your product with usability testing
 

Recently uploaded

Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio, Inc.
 
Hands-on with Apache Druid: Installation & Data Ingestion Steps
Hands-on with Apache Druid: Installation & Data Ingestion StepsHands-on with Apache Druid: Installation & Data Ingestion Steps
Hands-on with Apache Druid: Installation & Data Ingestion Steps
servicesNitor
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Peter Caitens
 
Optimizing Your E-commerce with WooCommerce.pptx
Optimizing Your E-commerce with WooCommerce.pptxOptimizing Your E-commerce with WooCommerce.pptx
Optimizing Your E-commerce with WooCommerce.pptx
WebConnect Pvt Ltd
 
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA ComplianceSecure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
ICS
 
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
Ortus Solutions, Corp
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
Maitrey Patel
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
Pedro J. Molina
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
michniczscribd
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
kalichargn70th171
 
Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)
alowpalsadig
 
Computer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdfComputer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdf
chandangoswami40933
 
What’s New in VictoriaLogs - Q2 2024 Update
What’s New in VictoriaLogs - Q2 2024 UpdateWhat’s New in VictoriaLogs - Q2 2024 Update
What’s New in VictoriaLogs - Q2 2024 Update
VictoriaMetrics
 
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
manji sharman06
 
Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.
KrishnaveniMohan1
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
Tier1 app
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
sandeepmenon62
 
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
campbellclarkson
 
ppt on the brain chip neuralink.pptx
ppt  on   the brain  chip neuralink.pptxppt  on   the brain  chip neuralink.pptx
ppt on the brain chip neuralink.pptx
Reetu63
 
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdfSoftware Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
kalichargn70th171
 

Recently uploaded (20)

Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
 
Hands-on with Apache Druid: Installation & Data Ingestion Steps
Hands-on with Apache Druid: Installation & Data Ingestion StepsHands-on with Apache Druid: Installation & Data Ingestion Steps
Hands-on with Apache Druid: Installation & Data Ingestion Steps
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
 
Optimizing Your E-commerce with WooCommerce.pptx
Optimizing Your E-commerce with WooCommerce.pptxOptimizing Your E-commerce with WooCommerce.pptx
Optimizing Your E-commerce with WooCommerce.pptx
 
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA ComplianceSecure-by-Design Using Hardware and Software Protection for FDA Compliance
Secure-by-Design Using Hardware and Software Protection for FDA Compliance
 
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
Strengthening Web Development with CommandBox 6: Seamless Transition and Scal...
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
 
Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)
 
Computer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdfComputer Science & Engineering VI Sem- New Syllabus.pdf
Computer Science & Engineering VI Sem- New Syllabus.pdf
 
What’s New in VictoriaLogs - Q2 2024 Update
What’s New in VictoriaLogs - Q2 2024 UpdateWhat’s New in VictoriaLogs - Q2 2024 Update
What’s New in VictoriaLogs - Q2 2024 Update
 
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
 
Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
 
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
🏎️Tech Transformation: DevOps Insights from the Experts 👩‍💻
 
ppt on the brain chip neuralink.pptx
ppt  on   the brain  chip neuralink.pptxppt  on   the brain  chip neuralink.pptx
ppt on the brain chip neuralink.pptx
 
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdfSoftware Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
 

Maintaining quality in open source

Editor's Notes

  1. This session is about Maintaining quality in open source. This is a personal journey and what I’ve learned from testing on an open source project. Throughout this session, I’ll share what have been some effective ways to build in high quality on open source projects. My hope is that some of these lessons might resonate with you whether or not you work on an open source project.
  2. First, I’ll briefly tell you a little more about me. I’ve been in quality for the past 6 years now. Over the past few years, I have begun to work on open source projects and have become sort of an automation aficionado and open source advocate. Im excited to share some processes that have helped me in working with open source software.
  3. At GitHub, I work under client apps which is for applications that GitHub builds to support developers in various ways. Throughout this session, I will feature some examples from these projects that highlight things we do to ensure quality. It includes the products:
  4. At GitHub, I work under client apps which is for applications that GitHub builds to support developers in various ways. It includes the products: Electron - a platform to build cross platform desktop apps
  5. Atom - which is a text editor
  6. Desktop- desktop tool to use GitHub
  7. Editor Tools - which focuses on the GitHub plugin for IDE’s.
  8. When I first started testing open source software, I noticed there was something very different about open source projects compared to non-open source projects. There is something that sets them apart. Something that forces me think about the software from a different perspective. So what is it that distinguishes open source projects?
  9. Community makes all the difference. Working on open source, you don’t just have to consider your teammates in your own software delivery team You have to take into account a whole community of contributors and maintainers. From a quality engineer’s perspective, it means you have a bigger team- there is more unexpected activity there are sometimes more pull requests than you expect. Definitely more issues and questions about the software. More to take into consideration
  10. So community involvement makes open source unique. The community affects these projects in so many ways. Let’s talk for a few minutes about why involvement matters.
  11. Contributions are really key in a few different aspects. As we just saw an example of, engagement is good and can have tremendous benefits to a project. Show a picture where a user submits a bug Having more eyes on the application is always a plus. With non open-sourced applications, of course there are users- but you might not interact with them. When projects are open-sourced, users find it easy to pop on over to the GitHub repository and open up an issue. The users want to be heard, they want you to know all the bugs they found, and they want them to be fixed. Show a picture where a user submits enhancements In addition to bugs, users can also describe pain points in their workflows- which is a plus, and can often suggest enhancements and new features as well. This can even influence the product team about what to work on next. Engagement is good, because it also means people care about your product.
  12. So involvement is good, but we want community members to be able to easily understand how to contribute, what the guidelines are, and make sure they feel supported to help out. it’s important to build a community of contributors who are not just eager about the software, but can help contribute in a positive way and promote quality in the project.
  13. Have pics/examples for each sub-bullet! The goal is to have good steps in place to tell the community best practices for working together
  14. Have a friendly readme. This is the Atom README that shows details about the project, resources for websites to visit for more information and support. There is a link to follow them on Twitter A section describing a code of conduct Then there’s steps for installing Atom and getting set up to use it This is an example of a great README that’s full of juicy information
  15. Whereas READMEs help people use the project, contributing docs help people contribute to the project. It explains what types of contributions are needed and how the process works. The contributing doc should include a code of conduct that describes expectations for participating in the project and steps to report inappropriate behavior. The code of conduct sets ground rules for participants’ behavior and helps to facilitate a friendly, welcoming environment. Contributing docs should also include information about how to submit pull requests, issues and feature requests. While not every project has a CODE_OF_CONDUCT file, its presence signals that this is a welcoming project to contribute to.
  16. Makes it easy Makes it so that people follow the same steps to do stuff. More uniformity, less surprises. That’s always a motto I like to live by- so boring, I know. But extremely helpful
  17. In addition to having those scripts locally it’s also great to use those scripts to run in CI and then set it up so that it is integrated with pull requests
  18. Pull request templates are helpful to have in order to ask directed questions so that there is enough information in the description of the pull request for reviewers. Similarly, it’s also a good idea having an issue template for the same reason. Templates can be really helpful to directly ask all of the details you want to get from users- although unfortunately people are people and break the rules sometimes and don’t fill out all the fields that you think are helpful
  19. Pull request templates are helpful to have in order to ask directed questions so that there is enough information in the description of the pull request for reviewers. Similarly, it’s also a good idea having an issue template for the same reason. Templates can be really helpful to directly ask all of the details you want to get from users- although unfortunately people are people and break the rules sometimes and don’t fill out all the fields that you think are helpful
  20. Next, I want to talk about the different types of contributions that the community makes and how to build quality processes around these areas.
  21. There are 3 main avenues that the community can get involved in a project
  22. People are going to email in support questions. It’s important to: Make anything that needs to be made available, made available Pre-canned responses for standardization SLA for response time in order to
  23. Give people information they need upfront. Make it accessible Be accessible. Be responsive. Be helpful Have good processes in place to support product and follow processes to maintain/ensure quality