SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Ähnlich wie 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 OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStackopenstackindia
 
Your first patch to open stack
Your first patch to open stackYour first patch to open stack
Your first patch to open stackAkanksha Agrawal
 
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
 

Ähnlich wie 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 OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStack
 
Your first patch to open stack
Your first patch to open stackYour first patch to open stack
Your first patch to open stack
 
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
 

Kürzlich hochgeladen

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 

Kürzlich hochgeladen (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 

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