Transcript
Page 1: Introduction to Contribution

Introduction to ContributionWordCamp Orange Country 2012

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

Page 2: Introduction to Contribution

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

Page 3: Introduction to Contribution

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/

Page 4: Introduction to Contribution

Who Contributes?• Theme Review Team

• Plugin Review Team

• Core Code

• UI/UX Group

• Support Forums

• Accessibility

• Polyglots

• .org Systems

• Mobile Applications

• Documentation

Page 5: Introduction to Contribution

I’m going to focus on Core Code

contribution.

Page 6: Introduction to Contribution

Core Team?

Page 7: Introduction to Contribution

Contributors.

Page 8: Introduction to Contribution

Contributors.

Page 9: Introduction to Contribution

OKAY.

How can I get on this list of AWESOME?

Page 10: Introduction to Contribution

Your First Contribution

Page 11: Introduction to Contribution

Release Cycle

• http://wpdevel.wordpress.com

• foreach ($releases as $release)

• Planning

• Development Cycles/Sprints

• Beta

• RC

Page 12: Introduction to Contribution

Planning:Choose the Scope.

Page 13: Introduction to Contribution

Development Cycles:Teamwork.

Page 14: Introduction to Contribution

Beta:No More Features.

Page 15: Introduction to Contribution

Release Candidate:Just the Regressions.

Page 16: Introduction to Contribution

Okay. I understand the release cycle.

What’s next?

Page 17: Introduction to Contribution

Start Small.

Page 18: Introduction to Contribution

Look for a Need.

Page 19: Introduction to Contribution

“If it’s not on Trac, it doesn’t exist.”

-Pretty much the entire Core Team.

http://core.trac.wordpress.org

Page 20: Introduction to Contribution

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)

Page 21: Introduction to Contribution
Page 22: Introduction to Contribution

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

Page 23: Introduction to Contribution

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

Page 24: Introduction to Contribution

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

Page 25: Introduction to Contribution

Attach a patch.

• Attach it to the ticket.

• Add a note to the ticket, so that everyone cc’d is notified.

Page 26: Introduction to Contribution

No one has responded.What now?

Page 27: Introduction to Contribution

Bother the crowd.

Page 28: Introduction to Contribution

Learn to love IRC.#wordpress-dev on FreeNode

Page 29: Introduction to Contribution

Ask for help.

Page 30: Introduction to Contribution

Ping those who are handling your ticket!

Page 31: Introduction to Contribution

Don’t rely onwp-hackers.

Page 32: Introduction to Contribution

Twitter is your friend.

Page 33: Introduction to Contribution

Be prepared for rejection.

Page 34: Introduction to Contribution

Iteration is key.It’s okay if someone else has a

better idea.

Page 35: Introduction to Contribution

Let’s work together to make a better WordPress.


Recommended