Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Start Contributing to Perl, It's Easy!
Search
Augustina Ragwitz
July 24, 2013
How-to & DIY
0
980
Start Contributing to Perl, It's Easy!
OSCON slide deck
Augustina Ragwitz
July 24, 2013
Tweet
Share
More Decks by Augustina Ragwitz
See All by Augustina Ragwitz
Start Contributing to Perl, It's Easy!
missaugustina
3
250
Other Decks in How-to & DIY
See All in How-to & DIY
JAWS-UGから学んだコミュニティの成功要因 (Success Factors)
awsjcpm
5
500
とある航空会社の飛行機の乗り方をお教えします。/20240913-lt
kwada
3
310
2025年03月02日 メイカーズながおかまつり での講演 「コミュニティベースでの製品開発ものづくりフェアの役割」
takasumasakazu
0
250
[電子工作]クリップモーターをつくろう
oriontakemura
0
180
「AITRIOS」でトカゲの活動量を可視化
hoshinoresearch
0
390
生成AIとミニ四駆で学ぶ! MATLAB/Simulink
covao
1
380
How to get hundreds of organic backlinks through statistics link building
ronishehu
1
280
JAWS-UG山梨第0回 AWSのユーザーコミュニティ支援
awsjcpm
0
180
こんなにあるの? 最近のIPAトレンドを ざっくりまとめてみた
watany
4
1k
JAWS-UG Fukuoka - AWS re:Invent 2024 re:Cap AWS Community Perspective
awsjcpm
2
170
Nutanix Community Edition 超入門 25.04
ricefield66
0
140
「無理」を「コントロール」するスキル / Skills to Control "Muri"
hageyahhoo
6
2.7k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
880
Docker and Python
trallard
45
3.5k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
22
1.4k
Thoughts on Productivity
jonyablonski
69
4.8k
Building Applications with DynamoDB
mza
96
6.5k
Designing for humans not robots
tammielis
253
25k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Scaling GitHub
holman
461
140k
Transcript
Start Contributing to Perl, It's Easy!
Augustina Ragwitz
[email protected]
irc.perl.org: auggy freenode irc: mmmpork twitter: @mmmpork
Perl Wants You!
Open Source Software is “Free!”
Open Source is like Public Radio (well... more like Public
Access TV)
Want to pay your dues? Contribute!
Start Small
Small Code Patches
Documentation
Unit Tests
Learn the Process
New Code means New Context
Don't be intimidated no one is judging you
PEOPLE make up communities
Talk to the community
irc.perl.org #p5p #perl-help
Why do we need this talk?
Tribal Knowledge
Where can I contribute to Perl?
Perl Core a.k.a. Perl 5 Porters
dev.perl.org #p5p on irc.perl.org
[email protected]
Pumpkings
AKA Sucker of the Moment “I was told there would
be pumpkin pie!”
Submit a patch, become immortal!
Perl Core != C programming
Documentation
Patch supporting scripts
Improve unit test coverage
Check RT for bugs http://rt.perl.org
Whoa! A To-Do List! Porting/todo.pod
How to submit a patch: http://perldoc.perl.org/perlhack.html
Perlbug utility + helpful tips http://perldoc.perl.org/perlbug.html
The CPAN Comprehensive Perl Archive Network
AKA The Place Where Modules Live
MetaCPAN http://www.metacpan.org
PAUSE Perl Authors Upload Server http://pause.perl.org
CPAN Testers Test all the Modules on all the Perls
http://www.cpantesters.org
Cool Stats! http://stats.cpantesters.org
How can I contribute to CPAN?
File a bug
Struggled to use a module? Improve documentation!
Especially if the author helped you!
Did you change anything to make it work? Submit the
patch!
How to submit a patch to CPAN
Disclaimer: TIMTOWTDI
Step One: Get the source code
Check Metacpan Repository Information
Check the Module documentation
Last Resort: Download the tarball
Git::CPAN::Patch
Step Two: Hack, Hack, Hack
Step Three: Submit the patch
Has the author specified a bugtracker?
Examples: Github Bitbucket Sourceforge
GitHub http://www.github.com Make a “Pull Request”
If not, use RT http://rt.cpan.org
Send an email to RT and attach your patch
[email protected]
Use RT if: Author says to or No bugtracker information
How do I know my patch was submitted?
RT responds with an email
GitHub shows your pull request
What happens when I submit a patch?
Scenario One: Merged and Released!
Scenario Two: Author responds to bugtracker ticket
What if my patch is rejected? :(
Don't give up!!!
Use the author's feedback to fix your patch
What if the author doesn't respond... AT ALL!?
[email protected]
FORK!
How do I write a patch that's likely to get
merged?
Don't submit a large, complex patch Each issue gets its
own commit
Write clear commit messages
Be consistent with the author's style
Update documentation
Write tests
Include a changelog entry
Collaboration is FUN!
Q&A