SlideShare a Scribd company logo
Decoding Core
Contribution
WordCamp San Diego 2013
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 the art of Coffee & Sailing
• WordPress 3.5 Recent Rockstar and wp-cli Contributor
• WordPress Core Team Rep for 2012
• Happy DreamHost Employee
Core Team?
Contributors.
Contributors.
Decoding Core Contribution - WordCamp San Diego 2013
OKAY.
How can I get on this list
of AWESOME?
Everyone has something
to contribute.
Which Contributor Group
do you belong to?
Contributor Groups?
• Docs
• Support
• Theme Review Team
• Plugin Review Team
• Events
• Core Code
• UI/UX Group
• Accessibility
• Polyglots
• .org Systems
• Mobile Applications
• Community
Decoding Core Contribution - WordCamp San Diego 2013
Decoding Core Contribution - WordCamp San Diego 2013
Not sure where to go?
Try #wordpress-contribute
Let’s focus on
Core Code
contribution.
Your First Contribution
If you haven’t read ...
• http://codex.wordpress.org/Contributing_to_WordPress
• The official (always in progress) handbook!
• http://make.wordpress.org/core/handbook/
Release Cycle
• http://make.wordpress.org/core
• foreach( $releases as $release )
• Planning
• Feature Development
• Beta
• RC
Planning:
Choose the Scope.
Feature Development:
Teamwork.
Beta:
Features are Finished.
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)
Decoding Core Contribution - WordCamp San Diego 2013
Okay. I found a need.
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
• git clone https://github.com/WordPress/WordPress.git
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
• git diff --no-prefix master > 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?
Decoding Core Contribution - WordCamp San Diego 2013
Decoding Core Contribution - WordCamp San Diego 2013
Be Persistent!
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?
• http://make.wordpress.org/
• https://irclogs.wordpress.org/
• http://make.wordpress.org/core/handbook
• http://core.trac.wordpress.org/
• http://lists.automattic.com/
• http://codex.wordpress.org/Contributing_to_WordPress
• 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

What's hot (18)

PDF
åˆ†äŗ«ē„”åå°ē«™ API
Joseph Chiang
Ā 
PPTX
WordPress Workshop
Terri Orlowski
Ā 
PPT
WordPress Fav Plugins & Security
The Toolbox, Inc.
Ā 
PDF
Isomorphic WordPress Applications with NodeifyWP
Taylor Lovett
Ā 
PPTX
WP-ShowHide
Lester Chan
Ā 
PPTX
WordCamp Boston WordPress plugins-8-2014
The Toolbox, Inc.
Ā 
PDF
WordPress Intermediate Workshop
The Toolbox, Inc.
Ā 
PPTX
Best Practices for Building WordPress Applications
Taylor Lovett
Ā 
PPT
2010 11 pubcon_hendison-hosting
shendison
Ā 
PDF
å»ŗē«‹å‰ē«Æé–‹ē™¼åœ˜éšŠ - 2011 äø­čÆé›»äæ”čØ“ē·“ę‰€ē‰ˆ
Joseph Chiang
Ā 
PPTX
Best Practices for WordPress in Enterprise
Taylor Lovett
Ā 
PDF
A Related Matter: Optimizing your webapp by using django-debug-toolbar, selec...
Christopher Adams
Ā 
PPTX
WordPress
risager
Ā 
PPTX
Saving Time with WP-CLI
Taylor Lovett
Ā 
KEY
WordPress APIs
mdawaffe
Ā 
PDF
You Got React.js in My PHP
Taylor Lovett
Ā 
PDF
Best Practices for WordPress
Taylor Lovett
Ā 
KEY
[2010]ęˆ‘ęœ‰äø€äøŖę¢¦ęƒ³
Twinsen Liang
Ā 
åˆ†äŗ«ē„”åå°ē«™ API
Joseph Chiang
Ā 
WordPress Workshop
Terri Orlowski
Ā 
WordPress Fav Plugins & Security
The Toolbox, Inc.
Ā 
Isomorphic WordPress Applications with NodeifyWP
Taylor Lovett
Ā 
WP-ShowHide
Lester Chan
Ā 
WordCamp Boston WordPress plugins-8-2014
The Toolbox, Inc.
Ā 
WordPress Intermediate Workshop
The Toolbox, Inc.
Ā 
Best Practices for Building WordPress Applications
Taylor Lovett
Ā 
2010 11 pubcon_hendison-hosting
shendison
Ā 
å»ŗē«‹å‰ē«Æé–‹ē™¼åœ˜éšŠ - 2011 äø­čÆé›»äæ”čØ“ē·“ę‰€ē‰ˆ
Joseph Chiang
Ā 
Best Practices for WordPress in Enterprise
Taylor Lovett
Ā 
A Related Matter: Optimizing your webapp by using django-debug-toolbar, selec...
Christopher Adams
Ā 
WordPress
risager
Ā 
Saving Time with WP-CLI
Taylor Lovett
Ā 
WordPress APIs
mdawaffe
Ā 
You Got React.js in My PHP
Taylor Lovett
Ā 
Best Practices for WordPress
Taylor Lovett
Ā 
[2010]ęˆ‘ęœ‰äø€äøŖę¢¦ęƒ³
Twinsen Liang
Ā 

Viewers also liked (13)

PPTX
Frases espiritualistas
MƔrcia Diniz
Ā 
PDF
High Performance WordPress
vnsavage
Ā 
PPTX
3D Process Involved in Mayabious Art
Mishti Priyanca
Ā 
PPT
HE TROBAT UNA PLOMA. P5B
a8061142
Ā 
PDF
WordCamp Vancouver 2012 - Manage WordPress with Awesome using wp-cli
GetSource
Ā 
PPTX
ąø„ąøµąø„ąøµą¹ˆą¹ąøžąø”
Mint Love Nong Namo
Ā 
PDF
ASP.NETć‚’åˆ©ē”Øć—ćŸAJAXé–‹ē™ŗć®åæœē”Ø
Sho Okada
Ā 
PDF
WebMatrixć«åÆ¾åæœć—ćŸć€ę–°ć—ć„ć‘ć©ę–°ć—ććŖć„Razor
Sho Okada
Ā 
PDF
Image Manipulation in WordPress 3.5 - WordCamp Phoenix 2013
GetSource
Ā 
PDF
Manage WordPress with Awesome using wp cli
GetSource
Ā 
PDF
WordPress State of the Word 2012
photomatt
Ā 
PDF
ćƒ”ć‚¬ćƒåž‹ćƒ‡ćƒć‚¤ć‚¹ć®ęœŖę„ć«ć¤ć„ć¦č€ƒćˆć‚‹
Sho Okada
Ā 
PDF
.Net恮webćƒ—ćƒ­ć‚°ćƒ©ćƒžćƒ¼ć«č“ˆć‚‹ć‚µćƒ¼ćƒćƒ¼ć‚¤ćƒ³ćƒ•ćƒ©ć®ęÆ”č¼ƒēš„ć‹ć‚“ćŸć‚“ćŖćŠč©±
Sho Okada
Ā 
Frases espiritualistas
MƔrcia Diniz
Ā 
High Performance WordPress
vnsavage
Ā 
3D Process Involved in Mayabious Art
Mishti Priyanca
Ā 
HE TROBAT UNA PLOMA. P5B
a8061142
Ā 
WordCamp Vancouver 2012 - Manage WordPress with Awesome using wp-cli
GetSource
Ā 
ąø„ąøµąø„ąøµą¹ˆą¹ąøžąø”
Mint Love Nong Namo
Ā 
ASP.NETć‚’åˆ©ē”Øć—ćŸAJAXé–‹ē™ŗć®åæœē”Ø
Sho Okada
Ā 
WebMatrixć«åÆ¾åæœć—ćŸć€ę–°ć—ć„ć‘ć©ę–°ć—ććŖć„Razor
Sho Okada
Ā 
Image Manipulation in WordPress 3.5 - WordCamp Phoenix 2013
GetSource
Ā 
Manage WordPress with Awesome using wp cli
GetSource
Ā 
WordPress State of the Word 2012
photomatt
Ā 
ćƒ”ć‚¬ćƒåž‹ćƒ‡ćƒć‚¤ć‚¹ć®ęœŖę„ć«ć¤ć„ć¦č€ƒćˆć‚‹
Sho Okada
Ā 
.Net恮webćƒ—ćƒ­ć‚°ćƒ©ćƒžćƒ¼ć«č“ˆć‚‹ć‚µćƒ¼ćƒćƒ¼ć‚¤ćƒ³ćƒ•ćƒ©ć®ęÆ”č¼ƒēš„ć‹ć‚“ćŸć‚“ćŖćŠč©±
Sho Okada
Ā 
Ad

Similar to Decoding Core Contribution - WordCamp San Diego 2013 (20)

PDF
Contributing to WordPress Core
Jeffrey Pearce
Ā 
PDF
Becoming A WordPress Beta Tester
Kim Parsell
Ā 
KEY
Contributing to WordPress core - a primer
lessbloat
Ā 
ODP
Wordcamp Uk 2008
Peter Westwood
Ā 
PDF
WordPress and Git
Rob Miller
Ā 
PPTX
Introduction to git & WordPress
Josh Lee
Ā 
PPTX
The WordPress Community - Passion and Participation
Gina Bearne
Ā 
PDF
Contributing Back to WordPress - Getting Involved in the Community
Zero Point Development
Ā 
PPT
WordPress Development: Tracking Your Code With Version Control
Sterling Hamilton
Ā 
PPTX
Giving back to WordPress - no code needed!
Meagan Hanes
Ā 
PDF
.Git for WordPress Developers
mpvanwinkle
Ā 
PDF
How to Contribute Without Code - WordCamp Miami 2015
Michele Butcher-Jones
Ā 
PDF
Contributing to WordPress without Coding
Michele Butcher-Jones
Ā 
PDF
How You Can Contribute to WordPress
Nile Flores
Ā 
PPTX
Starting WordPress Theme Review
Catch Themes
Ā 
PDF
WordCamp St Louis 2018 Contributing Without Coding
Michele Butcher-Jones
Ā 
PDF
Code is Poetry: The WordPress OpenSource Project
Michele Butcher-Jones
Ā 
PDF
Contributing to WordPress for Professional Development
Japheth Thomson
Ā 
PDF
Get Involved! Contributing to the WordPress Community
Courtney OCallaghan
Ā 
PPTX
Using Git with WordPress - Presented by Nigel Rodgers.
WordCamp Harare
Ā 
Contributing to WordPress Core
Jeffrey Pearce
Ā 
Becoming A WordPress Beta Tester
Kim Parsell
Ā 
Contributing to WordPress core - a primer
lessbloat
Ā 
Wordcamp Uk 2008
Peter Westwood
Ā 
WordPress and Git
Rob Miller
Ā 
Introduction to git & WordPress
Josh Lee
Ā 
The WordPress Community - Passion and Participation
Gina Bearne
Ā 
Contributing Back to WordPress - Getting Involved in the Community
Zero Point Development
Ā 
WordPress Development: Tracking Your Code With Version Control
Sterling Hamilton
Ā 
Giving back to WordPress - no code needed!
Meagan Hanes
Ā 
.Git for WordPress Developers
mpvanwinkle
Ā 
How to Contribute Without Code - WordCamp Miami 2015
Michele Butcher-Jones
Ā 
Contributing to WordPress without Coding
Michele Butcher-Jones
Ā 
How You Can Contribute to WordPress
Nile Flores
Ā 
Starting WordPress Theme Review
Catch Themes
Ā 
WordCamp St Louis 2018 Contributing Without Coding
Michele Butcher-Jones
Ā 
Code is Poetry: The WordPress OpenSource Project
Michele Butcher-Jones
Ā 
Contributing to WordPress for Professional Development
Japheth Thomson
Ā 
Get Involved! Contributing to the WordPress Community
Courtney OCallaghan
Ā 
Using Git with WordPress - Presented by Nigel Rodgers.
WordCamp Harare
Ā 
Ad

Recently uploaded (20)

PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
Ā 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
Ā 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
Ā 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
Ā 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
Ā 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
Ā 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
Ā 
PDF
The Future of Artificial Intelligence (AI)
Mukul
Ā 
PDF
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
Ā 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
Ā 
PPTX
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
Ā 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
Ā 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
Ā 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
Ā 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
Ā 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
Ā 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
Ā 
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
Ā 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
Ā 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
Ā 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
Ā 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
Ā 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
Ā 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
Ā 
The Future of Artificial Intelligence (AI)
Mukul
Ā 
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
Ā 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
Ā 
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
Ā 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
Brief History of Internet - Early Days of Internet
sutharharshit158
Ā 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
Ā 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
Ā 
Simple and concise overview about Quantum computing..pptx
mughal641
Ā 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
Ā 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
Ā 

Decoding Core Contribution - WordCamp San Diego 2013

  • 1. Decoding Core Contribution WordCamp San Diego 2013 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 the art of Coffee & Sailing • WordPress 3.5 Recent Rockstar and wp-cli Contributor • WordPress Core Team Rep for 2012 • Happy DreamHost Employee
  • 7. OKAY. How can I get on this list of AWESOME?
  • 9. Which Contributor Group do you belong to?
  • 10. Contributor Groups? • Docs • Support • Theme Review Team • Plugin Review Team • Events • Core Code • UI/UX Group • Accessibility • Polyglots • .org Systems • Mobile Applications • Community
  • 13. Not sure where to go? Try #wordpress-contribute
  • 14. Let’s focus on Core Code contribution.
  • 16. If you haven’t read ... • http://codex.wordpress.org/Contributing_to_WordPress • The official (always in progress) handbook! • http://make.wordpress.org/core/handbook/
  • 17. Release Cycle • http://make.wordpress.org/core • foreach( $releases as $release ) • Planning • Feature Development • Beta • RC
  • 22. Okay. I understand the release cycle. What’s next?
  • 24. Look for a Need.
  • 25. ā€œIf it’s not on Trac, it doesn’t exist.ā€ -Pretty much the entire Core Team. http://core.trac.wordpress.org
  • 26. 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)
  • 28. Okay. I found a need. 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 • git clone https://github.com/WordPress/WordPress.git
  • 29. 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
  • 30. 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 • git diff --no-prefix master > 20000.2.diff
  • 31. Attach a patch. • Attach it to the ticket. • Add a note to the ticket, so that everyone cc’d is notified.
  • 32. No one has responded. What now?
  • 36. Learn to love IRC. #wordpress-dev on FreeNode
  • 38. Ping those who are handling your ticket!
  • 40. Twitter is your friend.
  • 41. Be prepared for rejection.
  • 42. Iteration is key. It’s okay if someone else has a better idea.
  • 43. Let’s work together to make a better WordPress.
  • 44. Any Questions? • http://make.wordpress.org/ • https://irclogs.wordpress.org/ • http://make.wordpress.org/core/handbook • http://core.trac.wordpress.org/ • http://lists.automattic.com/ • http://codex.wordpress.org/Contributing_to_WordPress • 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