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
カンファレンスでリフレッシュ!無理なく楽しむカンファレンス参加術 / How to enjoy conferences without stress
kattsuuya
1
8.6k
チームビルディングを受けてみた
harukahosokawa
2
180
EasyEDA機能紹介と今後の計画 (中国語) プロジェクトマネージャ罗德松
takasumasakazu
0
130
QFHアンテナを作ってみた、 それとパッチアンテナ
takurx
1
120
AWS User Community - JAWS-UG/AWS ユーザーコミュニティのご紹介
awsjcpm
1
200
#Stampfly #M5Stack 開発ストーリーと今後の可能性 前説
takasumasakazu
0
120
中指立てたか判定IoT #iotlt #p5js
n0bisuke2
0
290
テストも、国際化も! 小中高生クリエータ支援プログラム『未踏ジュニア』を支える技術
yasulab
PRO
1
190
アイデアをカタチにする、イマジニア
haruka_imgr
0
130
M5Stickと超小型エッジAIカメラ「AITRIOS」
hoshinoresearch
0
480
JAWS-UGについて JAWS-UG TOHOKU [青森] 弘前開催
awsjcpm
0
200
音に負けない!子どもが騒いでいる脇でも快適オンラインMTGの秘伝
kaitou
0
410
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
694
190k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Writing Fast Ruby
sferik
628
62k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Code Review Best Practice
trishagee
69
18k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building an army of robots
kneath
306
45k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Agile that works and the tools we love
rasmusluckow
329
21k
Gamification - CAS2011
davidbonilla
81
5.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
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