SlideShare a Scribd company logo
1 of 36
Download to read offline
Introduction to
 Contribution
  WordCamp Orange Country 2012




Mike Schroder (DH-Shredder)
@GetSource - http://www.getsource.net
Who Am I?

•   Mike Schroder, a.k.a DH-Shredder, a.k.a. @GetSource

•   Third Culture Kid, enjoy Coffee & Sailing

•   WordPress Core and Plugin Contributor

•   Happy DreamHost Employee
If you haven’t read ...

•   http://codex.wordpress.org/Contributing_to_WordPress


•   Andrew Nacin’s in-progress handbook:
    •   http://nacin.com/projects/core-contributor-handbook/
Who Contributes?
•   Theme Review Team    •   Polyglots

•   Plugin Review Team   •   .org Systems

•   Core Code            •   Mobile Applications

•   UI/UX Group          •   Documentation

•   Support Forums

•   Accessibility
I’m going to focus on
      Core Code
    contribution.
Core Team?
Contributors.
Contributors.
OKAY.

How can I get on this list
    of AWESOME?
Your First Contribution
Release Cycle

•   http://wpdevel.wordpress.com

•   foreach ($releases as $release)

    •   Planning

    •   Development Cycles/Sprints

    •   Beta

    •   RC
Planning:
Choose the Scope.
Development Cycles:
     Teamwork.
Beta:
No More Features.
Release Candidate:
 Just the Regressions.
Okay. I understand
 the release cycle.
   What’s next?
Start Small.
Look for a Need.
“If it’s not on Trac, it
        doesn’t exist.”
-Pretty much the entire Core Team.

http://core.trac.wordpress.org
Reports are your friend.
•   http://core.trac.wordpress.org/report

•   Next Major Release:
    http://core.trac.wordpress.org/report/6

•   Needs Patch:
    http://core.trac.wordpress.org/report/16

•   Has Patch, Needs Testing:
    http://core.trac.wordpress.org/report/13

•   View Tickets -> Custom Query (i.e. needs-refresh)
Okay. I found a bug.
            Now What?
•   Get the WordPress.org source from trunk.

•   http://codex.wordpress.org/SVN
    •   svn co http://core.svn.wordpress.org/trunk/

•   https://github.com/WordPress/WordPress
Apply the Patch, if any.
•   Right-click on patch download link, copy URL

•   From root of trunk:
    •   wget http://core.trac.wordpress.org/raw-attachment/
        ticket/20000/20000.diff
        (or curl -OL http://core ...)

    •   patch -p0 < 20000.diff
Now, create a patch.

•   Create all patches from the WordPress root within your
    trunk checkout.
    •   svn diff > bugNumber[.patchNumber].diff

    •   e.g. svn diff > 20000.2.diff
Attach a patch.

•   Attach it to the ticket.


•   Add a note to the ticket, so that everyone cc’d is
    notified.
No one has responded.
     What now?
Bother the crowd.
Learn to love IRC.
#wordpress-dev on FreeNode
Ask for help.
Ping those who are
handling your ticket!
Don’t rely on
 wp-hackers.
Twitter is your friend.
Be prepared for rejection.
Iteration is key.
It’s okay if someone else has a
           better idea.
Let’s work together to
make a better WordPress.
Any Questions?
    •   https://irclogs.wordpress.org/

    •   http://lists.automattic.com/

    •   http://core.trac.wordpress.org/

    •   http://codex.wordpress.org/Contributing_to_WordPress

    •   http://nacin.com/projects/core-contributor-handbook/

    •   http://aaron.jorb.in/blog/2010/03/commit-the-story-of-
        writing-a-wordpress-patch/

    •   http://patcheswelcome.wordpress.com/

Mike Schroder (DH-Shredder)
@GetSource - http://www.getsource.net

More Related Content

Similar to Introduction to Contribution

Becoming A WordPress Beta Tester
Becoming A WordPress Beta TesterBecoming A WordPress Beta Tester
Becoming A WordPress Beta TesterKim Parsell
 
Intro to WordPress Plugins
Intro to WordPress PluginsIntro to WordPress Plugins
Intro to WordPress Pluginszamoose
 
Apache contribution-bar camp-colombo
Apache contribution-bar camp-colomboApache contribution-bar camp-colombo
Apache contribution-bar camp-colomboSagara Gunathunga
 
How to "Hack" the DSpace Community
How to "Hack" the DSpace CommunityHow to "Hack" the DSpace Community
How to "Hack" the DSpace CommunityTim Donohue
 
Contributing to WordPress core - a primer
Contributing to WordPress core - a primerContributing to WordPress core - a primer
Contributing to WordPress core - a primerlessbloat
 
DNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleDNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleWill Strohl
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer DayKimihiko Kitase
 
WordPress intro
WordPress introWordPress intro
WordPress introdbnorth
 
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyContribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyDocker, Inc.
 
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterCreating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterChris Aniszczyk
 
Your first patch to open stack
Your first patch to open stackYour first patch to open stack
Your first patch to open stackAkanksha Agrawal
 
Your first patch to OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStackopenstackindia
 
How to Contribute to Apache Usergrid
How to Contribute to Apache UsergridHow to Contribute to Apache Usergrid
How to Contribute to Apache UsergridDavid M. Johnson
 
What is quality code? From cruft to craft
What is quality code? From cruft to craftWhat is quality code? From cruft to craft
What is quality code? From cruft to craftNick DeNardis
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationNick Josevski
 
A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5SSW
 
Contributing Back to WordPress - Getting Involved in the Community
Contributing Back to WordPress - Getting Involved in the CommunityContributing Back to WordPress - Getting Involved in the Community
Contributing Back to WordPress - Getting Involved in the CommunityZero Point Development
 
WordPress 4.4 and Beyond
WordPress 4.4 and BeyondWordPress 4.4 and Beyond
WordPress 4.4 and BeyondScott Taylor
 

Similar to Introduction to Contribution (20)

Becoming A WordPress Beta Tester
Becoming A WordPress Beta TesterBecoming A WordPress Beta Tester
Becoming A WordPress Beta Tester
 
Intro to WordPress Plugins
Intro to WordPress PluginsIntro to WordPress Plugins
Intro to WordPress Plugins
 
Apache contribution-bar camp-colombo
Apache contribution-bar camp-colomboApache contribution-bar camp-colombo
Apache contribution-bar camp-colombo
 
How to "Hack" the DSpace Community
How to "Hack" the DSpace CommunityHow to "Hack" the DSpace Community
How to "Hack" the DSpace Community
 
Contributing to WordPress core - a primer
Contributing to WordPress core - a primerContributing to WordPress core - a primer
Contributing to WordPress core - a primer
 
DNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleDNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made Simple
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day
 
WordPress intro
WordPress introWordPress intro
WordPress intro
 
Learning to code
Learning to codeLearning to code
Learning to code
 
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyContribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
 
Hacking on WildFly 9
Hacking on WildFly 9Hacking on WildFly 9
Hacking on WildFly 9
 
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterCreating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from Twitter
 
Your first patch to open stack
Your first patch to open stackYour first patch to open stack
Your first patch to open stack
 
Your first patch to OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStack
 
How to Contribute to Apache Usergrid
How to Contribute to Apache UsergridHow to Contribute to Apache Usergrid
How to Contribute to Apache Usergrid
 
What is quality code? From cruft to craft
What is quality code? From cruft to craftWhat is quality code? From cruft to craft
What is quality code? From cruft to craft
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5A modern architecturereview–usingcodereviewtools-ver-3.5
A modern architecturereview–usingcodereviewtools-ver-3.5
 
Contributing Back to WordPress - Getting Involved in the Community
Contributing Back to WordPress - Getting Involved in the CommunityContributing Back to WordPress - Getting Involved in the Community
Contributing Back to WordPress - Getting Involved in the Community
 
WordPress 4.4 and Beyond
WordPress 4.4 and BeyondWordPress 4.4 and Beyond
WordPress 4.4 and Beyond
 

Recently uploaded

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

Introduction to Contribution

  • 1. Introduction to Contribution WordCamp Orange Country 2012 Mike Schroder (DH-Shredder) @GetSource - http://www.getsource.net
  • 2. Who Am I? • Mike Schroder, a.k.a DH-Shredder, a.k.a. @GetSource • Third Culture Kid, enjoy Coffee & Sailing • WordPress Core and Plugin Contributor • Happy DreamHost Employee
  • 3. If you haven’t read ... • http://codex.wordpress.org/Contributing_to_WordPress • Andrew Nacin’s in-progress handbook: • http://nacin.com/projects/core-contributor-handbook/
  • 4. Who Contributes? • Theme Review Team • Polyglots • Plugin Review Team • .org Systems • Core Code • Mobile Applications • UI/UX Group • Documentation • Support Forums • Accessibility
  • 5. I’m going to focus on Core Code contribution.
  • 9. OKAY. How can I get on this list of AWESOME?
  • 11. Release Cycle • http://wpdevel.wordpress.com • foreach ($releases as $release) • Planning • Development Cycles/Sprints • Beta • RC
  • 13. Development Cycles: Teamwork.
  • 15. Release Candidate: Just the Regressions.
  • 16. Okay. I understand the release cycle. What’s next?
  • 18. Look for a Need.
  • 19. “If it’s not on Trac, it doesn’t exist.” -Pretty much the entire Core Team. http://core.trac.wordpress.org
  • 20. Reports are your friend. • http://core.trac.wordpress.org/report • Next Major Release: http://core.trac.wordpress.org/report/6 • Needs Patch: http://core.trac.wordpress.org/report/16 • Has Patch, Needs Testing: http://core.trac.wordpress.org/report/13 • View Tickets -> Custom Query (i.e. needs-refresh)
  • 21.
  • 22. Okay. I found a bug. Now What? • Get the WordPress.org source from trunk. • http://codex.wordpress.org/SVN • svn co http://core.svn.wordpress.org/trunk/ • https://github.com/WordPress/WordPress
  • 23. Apply the Patch, if any. • Right-click on patch download link, copy URL • From root of trunk: • wget http://core.trac.wordpress.org/raw-attachment/ ticket/20000/20000.diff (or curl -OL http://core ...) • patch -p0 < 20000.diff
  • 24. Now, create a patch. • Create all patches from the WordPress root within your trunk checkout. • svn diff > bugNumber[.patchNumber].diff • e.g. svn diff > 20000.2.diff
  • 25. Attach a patch. • Attach it to the ticket. • Add a note to the ticket, so that everyone cc’d is notified.
  • 26. No one has responded. What now?
  • 28. Learn to love IRC. #wordpress-dev on FreeNode
  • 30. Ping those who are handling your ticket!
  • 31. Don’t rely on wp-hackers.
  • 32. Twitter is your friend.
  • 33. Be prepared for rejection.
  • 34. Iteration is key. It’s okay if someone else has a better idea.
  • 35. Let’s work together to make a better WordPress.
  • 36. Any Questions? • https://irclogs.wordpress.org/ • http://lists.automattic.com/ • http://core.trac.wordpress.org/ • http://codex.wordpress.org/Contributing_to_WordPress • http://nacin.com/projects/core-contributor-handbook/ • http://aaron.jorb.in/blog/2010/03/commit-the-story-of- writing-a-wordpress-patch/ • http://patcheswelcome.wordpress.com/ Mike Schroder (DH-Shredder) @GetSource - http://www.getsource.net