SlideShare a Scribd company logo
1 of 32
Download to read offline
Start contributing to
OSS projects on your way
Kazuaki Matsuo
Senior Software Engineer, Device Automation
About me
• Kazuaki Matsuo
• from !, GitHub: KazuCocoa, Twitter: @Kazu_cocoa
• HeadSpin
• Software Engineer now, former was a test/QA engineer
• Maintain Appium project
• Five years after my first commit
Topic
• My experience in OSS world
• Start contributing to OSS
• How you can work in OSS Community
Takeaway
• Get an opportunity/motivation to contribute to Appium (OSS)
project
My experience in OSS
2012
2014
No contributions
2012
2014
2012
2014
2012
2014
my first commitment for Appium repo
2018
2019
Commit more
Maintain Ruby client
• Ruby was the primly language in Cookpad
• Decided to use Ruby
• Ruby lib status changed to “call for maintainers”
• https://github.com/appium/ruby_lib/issues/337
• I started to contribute it
Changes
• W3C support
• Separate core part
• https://github.com/appium/ruby_lib_core
• Collaboration
• https://github.com/watir/tap_watir
• https://github.com/watir project for mobile
Step into server side further
• Appium has:
• Clients: Not only for Ruby client
• Servers: For iOS/Android
• Languages
• NodeJS, Java/Kotlin, Objective-C/Swift, Ruby, Python, .NET
Nowadays
• As a part of my work at HeadSpin
• As a part of my private work
I talked…
• Fix issues I faced as a small start to contribute to OSS projects
• Leverage to other repositories/issues or more difficult issues
How you can work in OSS
Community
Only committing to the codebase?
• In various community, I heard this question frequently
• Exactly committing to the codebase is very important
• But other activities also very important as a community
Features/Documentations
Support users
Use them and evolve automation
Community in Japan
Localisation
• Desktop
• https://
crowdin.com
/project/
appium-
desktop
Documentations
• Example
• https://github.com/appium/appium/tree/master/docs
• We commit to documentation as well, but maybe they are not
enough for users
• Building document support also very appreciate
• Improving documentation for users as a user is also important
Appium forum
• https://discuss.appium.io/
Good first issue/Help wanted
• e.g. Adding unit/functional tests
• Yesterday’s workshop: appium/python-client/pull/398, appium/
python-client/pull/399
Improve error messages
• e.g. appium-base-driver
• appium/appium-base-driver/pull/329
Improve error messages
• e.g. appium-base-driver
• appium/appium-base-driver/pull/329
Takeaway
• Start contributing from small changes
• get reviews
• leverage to other repositories
• OSS community needs you can work in
• Documentation
• Q&A
• Fixing issues / add new features (try to find an issue)
Thanks
email: kazu@headspin.io
Twitter: @Kazu_cocoa

More Related Content

What's hot

North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
Sébastien Levert
 
Rise of the hybrids
Rise of the hybridsRise of the hybrids
Rise of the hybrids
Oron Ben Zvi
 

What's hot (16)

Evaluation Questions: 6
Evaluation Questions: 6Evaluation Questions: 6
Evaluation Questions: 6
 
DesignTab Final Handover
DesignTab Final HandoverDesignTab Final Handover
DesignTab Final Handover
 
Equipment List: Software
Equipment List: SoftwareEquipment List: Software
Equipment List: Software
 
North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
North American Collaboration Summit 2018 - SharePoint Framework, Angular & Az...
 
WordCamp Seoul 2012
WordCamp Seoul 2012WordCamp Seoul 2012
WordCamp Seoul 2012
 
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
 
SUGUK Let me script that for you
SUGUK Let me script that for youSUGUK Let me script that for you
SUGUK Let me script that for you
 
Genesis framework presentation
Genesis framework presentationGenesis framework presentation
Genesis framework presentation
 
BuildStatus - PiterJS #1
BuildStatus - PiterJS #1BuildStatus - PiterJS #1
BuildStatus - PiterJS #1
 
'Using' github - coworking with Github
'Using' github - coworking with Github'Using' github - coworking with Github
'Using' github - coworking with Github
 
Service Workers: no more offline!
Service Workers: no more offline!Service Workers: no more offline!
Service Workers: no more offline!
 
WordCamp Kent 2019 - WP 101: Local Development - Themes and Plugins
WordCamp Kent 2019 - WP 101: Local Development - Themes and PluginsWordCamp Kent 2019 - WP 101: Local Development - Themes and Plugins
WordCamp Kent 2019 - WP 101: Local Development - Themes and Plugins
 
Introduction towatchkit
Introduction towatchkitIntroduction towatchkit
Introduction towatchkit
 
Molajo
MolajoMolajo
Molajo
 
Productive Out-of-the-Box: Tooling with Yeoman to Rapidly Develop Ember.js Ap...
Productive Out-of-the-Box: Tooling with Yeoman to Rapidly Develop Ember.js Ap...Productive Out-of-the-Box: Tooling with Yeoman to Rapidly Develop Ember.js Ap...
Productive Out-of-the-Box: Tooling with Yeoman to Rapidly Develop Ember.js Ap...
 
Rise of the hybrids
Rise of the hybridsRise of the hybrids
Rise of the hybrids
 

Similar to Start contributing to OSS projects on your way

Selenium at Mozilla: An Essential Element to our Success
Selenium at Mozilla: An Essential Element to our SuccessSelenium at Mozilla: An Essential Element to our Success
Selenium at Mozilla: An Essential Element to our Success
Stephen Donner
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
Lucas Jellema
 
Question 4 Jessica Cowgill
Question 4 Jessica CowgillQuestion 4 Jessica Cowgill
Question 4 Jessica Cowgill
Jessica Cowgill
 
Evaluation 4
Evaluation 4Evaluation 4
Evaluation 4
msk9
 

Similar to Start contributing to OSS projects on your way (20)

Selenium at Mozilla: An Essential Element to our Success
Selenium at Mozilla: An Essential Element to our SuccessSelenium at Mozilla: An Essential Element to our Success
Selenium at Mozilla: An Essential Element to our Success
 
Guide to open source
Guide to open source Guide to open source
Guide to open source
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
 
Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions		Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions
 
Create great cncf user base from lessons learned from other open source com...
Create great cncf user base from   lessons learned from other open source com...Create great cncf user base from   lessons learned from other open source com...
Create great cncf user base from lessons learned from other open source com...
 
Prototyping like it is 2022
Prototyping like it is 2022 Prototyping like it is 2022
Prototyping like it is 2022
 
Question 4 Jessica Cowgill
Question 4 Jessica CowgillQuestion 4 Jessica Cowgill
Question 4 Jessica Cowgill
 
ConcourseCI support activities in Yahoo! Japan
ConcourseCI support activities in Yahoo! JapanConcourseCI support activities in Yahoo! Japan
ConcourseCI support activities in Yahoo! Japan
 
20170701 lets-step-into-the-oss-community
20170701 lets-step-into-the-oss-community20170701 lets-step-into-the-oss-community
20170701 lets-step-into-the-oss-community
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slides
 
Documenting APIs: Sample Code and More (with many pictures of cats)
Documenting APIs: Sample Code and More (with many pictures of cats)Documenting APIs: Sample Code and More (with many pictures of cats)
Documenting APIs: Sample Code and More (with many pictures of cats)
 
Evaluation 4
Evaluation 4Evaluation 4
Evaluation 4
 
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
 
Cos con19 about Pulsar (By Yu Liu)
Cos con19 about  Pulsar (By Yu Liu)Cos con19 about  Pulsar (By Yu Liu)
Cos con19 about Pulsar (By Yu Liu)
 
Ohoh
OhohOhoh
Ohoh
 
Apache Curator: Past, Present and Future
Apache Curator: Past, Present and FutureApache Curator: Past, Present and Future
Apache Curator: Past, Present and Future
 
Code the docs-yu liu
Code the docs-yu liuCode the docs-yu liu
Code the docs-yu liu
 
Evaluation - Question 1
Evaluation - Question 1Evaluation - Question 1
Evaluation - Question 1
 
Embracing OSS in the enterprise
Embracing OSS in the enterpriseEmbracing OSS in the enterprise
Embracing OSS in the enterprise
 
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One StyleCloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
 

More from Kazuaki Matsuo

More from Kazuaki Matsuo (20)

2022-jasst-tohoku.pdf
2022-jasst-tohoku.pdf2022-jasst-tohoku.pdf
2022-jasst-tohoku.pdf
 
Add new commands in appium 2.0
Add new commands in appium 2.0Add new commands in appium 2.0
Add new commands in appium 2.0
 
Manage appium dependencies with -appium-home in appium 2.0
Manage appium dependencies with  -appium-home in appium 2.0Manage appium dependencies with  -appium-home in appium 2.0
Manage appium dependencies with -appium-home in appium 2.0
 
20210616-career-example-at-icare
20210616-career-example-at-icare20210616-career-example-at-icare
20210616-career-example-at-icare
 
Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)
 
Chrome Devtools Protocol via Selenium/Appium (Japanese)
Chrome Devtools Protocol via Selenium/Appium (Japanese)Chrome Devtools Protocol via Selenium/Appium (Japanese)
Chrome Devtools Protocol via Selenium/Appium (Japanese)
 
Xcode 11におけるXCUITestの挙動
Xcode 11におけるXCUITestの挙動Xcode 11におけるXCUITestの挙動
Xcode 11におけるXCUITestの挙動
 
20191130 system-automation-conference
20191130 system-automation-conference20191130 system-automation-conference
20191130 system-automation-conference
 
Uncovering breaking changes behind UI on mobile applications
Uncovering breaking changes behind UI on mobile applicationsUncovering breaking changes behind UI on mobile applications
Uncovering breaking changes behind UI on mobile applications
 
Go ahead outside Japan
Go ahead outside JapanGo ahead outside Japan
Go ahead outside Japan
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomation
 
20171215 andoird-test-night
20171215 andoird-test-night20171215 andoird-test-night
20171215 andoird-test-night
 
20170726 ios test_night_no
20170726 ios test_night_no20170726 ios test_night_no
20170726 ios test_night_no
 
20170613 tech easy
20170613 tech easy20170613 tech easy
20170613 tech easy
 
20170529 clem kazuaki_matsuo
20170529 clem kazuaki_matsuo20170529 clem kazuaki_matsuo
20170529 clem kazuaki_matsuo
 
20150423 m3
20150423 m320150423 m3
20150423 m3
 
20170302 tryswift tasting_tests
20170302 tryswift tasting_tests20170302 tryswift tasting_tests
20170302 tryswift tasting_tests
 
20161126 to ruby
20161126 to ruby20161126 to ruby
20161126 to ruby
 
20160914 te engineer
20160914 te engineer20160914 te engineer
20160914 te engineer
 
20160913 cookpad ios_jp
20160913 cookpad ios_jp20160913 cookpad ios_jp
20160913 cookpad ios_jp
 

Recently uploaded

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Recently uploaded (20)

Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 

Start contributing to OSS projects on your way