SlideShare a Scribd company logo
W A D I N G I N T O T H E P E R L
C O M M U N I T Y
N O W W H A T ?
J A S O N ( J A Y C E ^ ) H A L L - B L U E H O S T - J A Y C E @ L U G - N U T . C O M
C O M M O N T O B E
O V E R W H E L M E D O R
L O S T
B U T W H E R E D O I S T A R T ?
E N T E R T H E P R C
• Started and run by neilb (Neil
Bowers)
• Monthly Assignments
• CPAN Modules
• Target: Get a pull request on GitHub
Y O U ’ V E G O T A N
A S S I G N M E N T : N O W
W H A T ?
• Don’t Panic!
• Read the email
• Introduce yourself
• Ask
• Fork and Branch
L O W H A N G I N G
F R U I T
• Code
• Tests
• CPAN Conventions
• Documentation
• Google it
M A K I N G Y O U R
P U L L R E Q U E S T
• Read the GitHub Tutorial
• Work in a new branch
• Follow any rules from
CONTRIBUTING file
• Create a useful pull message
• Tell Neil
I N C R E A S I N G T H E
C H A N C E S O F
M E R G E
• Things the maintainer explicitly tells you they
want
• Fixing bugs
• Fixing CPAN Testers failures.
• Improving test coverage, using Devel::Cover.
• Improve documentation
• Improve performance, if you can find hotspots
with Devel::NYTProf.
• Improve the distribution's kwalitee, as measured
by CPANTS.
P E R S O N A L
P R E F E R E N C E S
• Something you want to avoid?
• Most common is XS
• Let Neil know if you can’t do
something
• Or take it as a chance to learn
S I G N I N G U P F O R
T H E P R C
• http://cpan-prc.org/
• #pr-challenge
• Mailing List
• Hackathon TONIGHT!
T H E H I T L I S T
• http://cpan-prc.org/hitlist.html
• Modules that aren’t on GitHub
• How can you help them get there?
W A D I N G I N T O T H E P E R L
C O M M U N I T Y
N O W W H A T ?
J A S O N ( J A Y C E ^ ) H A L L - B L U E H O S T - J A Y C E @ L U G - N U T . C O M

More Related Content

Viewers also liked (14)

Textual analysis of 2 soap opera trailers
Textual analysis of 2 soap opera trailersTextual analysis of 2 soap opera trailers
Textual analysis of 2 soap opera trailers
 
Western MN and eastern SD Walking Your Fields newsletter for June
Western MN and eastern SD Walking Your Fields newsletter for JuneWestern MN and eastern SD Walking Your Fields newsletter for June
Western MN and eastern SD Walking Your Fields newsletter for June
 
Loukas
LoukasLoukas
Loukas
 
Cm2 ciencias naturales temario_mf211_2015
Cm2 ciencias naturales temario_mf211_2015Cm2 ciencias naturales temario_mf211_2015
Cm2 ciencias naturales temario_mf211_2015
 
PRAFUL_HADOOP
PRAFUL_HADOOPPRAFUL_HADOOP
PRAFUL_HADOOP
 
Thailand
ThailandThailand
Thailand
 
CARTELES FASCISTAS Y REPUBLICANOS
CARTELES FASCISTAS Y REPUBLICANOSCARTELES FASCISTAS Y REPUBLICANOS
CARTELES FASCISTAS Y REPUBLICANOS
 
EL período de entreguerras
EL período de entreguerrasEL período de entreguerras
EL período de entreguerras
 
ADN e Biotecnoloxia
ADN e BiotecnoloxiaADN e Biotecnoloxia
ADN e Biotecnoloxia
 
A organización do corpo humano
A organización do corpo humanoA organización do corpo humano
A organización do corpo humano
 
Atmosfera
AtmosferaAtmosfera
Atmosfera
 
As plantas
As plantasAs plantas
As plantas
 
Ejercito mexicano
Ejercito mexicanoEjercito mexicano
Ejercito mexicano
 
Al Fazal International Weekly Magazine - 23 December 2016
Al Fazal International Weekly Magazine - 23 December 2016Al Fazal International Weekly Magazine - 23 December 2016
Al Fazal International Weekly Magazine - 23 December 2016
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Enterprise Security Monitoring, And Log Management.
Enterprise Security Monitoring, And Log Management.Enterprise Security Monitoring, And Log Management.
Enterprise Security Monitoring, And Log Management.
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Motion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in TechnologyMotion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in Technology
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 

PRC Challenge - YAPC 2016

  • 1. W A D I N G I N T O T H E P E R L C O M M U N I T Y N O W W H A T ? J A S O N ( J A Y C E ^ ) H A L L - B L U E H O S T - J A Y C E @ L U G - N U T . C O M
  • 2. C O M M O N T O B E O V E R W H E L M E D O R L O S T B U T W H E R E D O I S T A R T ?
  • 3. E N T E R T H E P R C • Started and run by neilb (Neil Bowers) • Monthly Assignments • CPAN Modules • Target: Get a pull request on GitHub
  • 4. Y O U ’ V E G O T A N A S S I G N M E N T : N O W W H A T ? • Don’t Panic! • Read the email • Introduce yourself • Ask • Fork and Branch
  • 5. L O W H A N G I N G F R U I T • Code • Tests • CPAN Conventions • Documentation • Google it
  • 6. M A K I N G Y O U R P U L L R E Q U E S T • Read the GitHub Tutorial • Work in a new branch • Follow any rules from CONTRIBUTING file • Create a useful pull message • Tell Neil
  • 7. I N C R E A S I N G T H E C H A N C E S O F M E R G E • Things the maintainer explicitly tells you they want • Fixing bugs • Fixing CPAN Testers failures. • Improving test coverage, using Devel::Cover. • Improve documentation • Improve performance, if you can find hotspots with Devel::NYTProf. • Improve the distribution's kwalitee, as measured by CPANTS.
  • 8. P E R S O N A L P R E F E R E N C E S • Something you want to avoid? • Most common is XS • Let Neil know if you can’t do something • Or take it as a chance to learn
  • 9. S I G N I N G U P F O R T H E P R C • http://cpan-prc.org/ • #pr-challenge • Mailing List • Hackathon TONIGHT!
  • 10. T H E H I T L I S T • http://cpan-prc.org/hitlist.html • Modules that aren’t on GitHub • How can you help them get there?
  • 11. W A D I N G I N T O T H E P E R L C O M M U N I T Y N O W W H A T ? J A S O N ( J A Y C E ^ ) H A L L - B L U E H O S T - J A Y C E @ L U G - N U T . C O M

Editor's Notes

  1. There is a CPAN River, but to me it was the ocean. Never able to find my place, feeling adrift. In my own boat, often isolated set of tools Much like yesterdays great Lightning Talk, I’d programmed for years, but hadn’t advanced as much as I should have.
  2. neil bowers, famed contributor to CPAN, great influence on the quality of CPAN code. - Hopefully he doesn’t watch this on youtube and give me something crazy for my next module because of this picture Why monthly? Plenty of time, but time-boxed reminders keep you moving modules that already exist, and are used. It means you don’t have to start by creating the next great Templating language (please) or blog software :) Assigned a module that has something identified as likely needing some help List of modules that have some ordering already applied (other things depend on them, authors have accepted to be in the challenge) Pull requests on GH get traction. The module itself, Perl itself, you, and the maintainer
  3. DON’T PANIC! no matter how scary the module seems at first (know where your towel is) Your assignment will come with some nice links to get you familiar with the module. metacpan kwalitee cpantesters Github Issues/RT tickets Introduce yourself right away, let them know you want to help out, and ask about what might need some help, and any conditions they might have. Amazingly enough, people who’ve worked on a project for a long time know something about it.
  4. Are there any open bugs already in their RT or Github issues? (Don’t know where they would be, documentation/metadata issue) TODO/FIXME/README notes? Modernization (update to Moo) — discuss with author FIRST! Don’t assume they want your style. Updated Toolchain - Newer modules to replace old ones in use, or old manual code How good is their Coverage CPAN Testers failures? Tests for bugs that exist, but you don’t know how to fix? Breakout Release tests (say documentation) vs code testing Add Travis (or other) support — discuss with author FIRST! Run Perlcritic — discuss any concerns with author before asserting they are issues Modernize build tools if they want that (not *everybody* wants Dist::Zilla for instance) Old test.pl to t/* Does it have proper sections (Synopsis, abstract, author, copyright, etc) Did it fill your needs, if not, fix that. Examples - seriously, *real* example code, maybe dockerfile? Better form of howto Typos Perlmonks Stack overflow what questions have people had about this, or what questions did people ask that this should have filled the need?
  5. Start with the basics of git Make sure you’ve read their requirements, and talked to the owner if possible (HINT: if they don’t have a contributing doc, but gave you some rules, make a CONTRIBUTING doc for them) Spare time? Do some more…
  6. not always black/white. Owner might know of cases that you don’t, so talk it over with them first. Create an Issue on their tracker so you can document what’s happening. They likely will have input before you code Don’t go and perltidy it for them. Make real changes Clean Commits, allow for an easy merge of what they want, and no other changes If a change only affects kwalitee, it might not be accepted or ever rolled.
  7. Sorry, but my C is too rusty Fear of that is part of what kept me from helping in some areas for a long time I’ve had two XS modules, neither really worked out for me (besides doing doc pulls)
  8. Get signed up, get your first assignment Check us out, and ask questions Help out others! Come see us at the hackathon (we have food, thank you Craigslist) Mentors, people looking for help
  9. Why is that bad? If they are on another git service, easy to have another copy there Also document where issues go Gets traction