By nature, the idea behind open-source software is awesome: a group of people contributing their time to building something greater for others to use.
For the longest time, I’ve been someone who has often benefited from open source, but aside from contributing tickets, bug reports, or documentation, I’ve never actually contributed code to an open source project.
Contributing to WordPress 3.5 is the first time that I’ve ever contributed code to a project, and I couldn’t be happier that it’s on an application that’s such a significant part of my career.
Roll The Credits
Though I’ve been using WordPress – for both blogging and development – for roughly seven years, I’ve never actually contributed code to the application.
Of course, it’s not because I didn’t want to – it’s because I lacked what was necessary to actually do it. Depending on your level of experience, this will likely look different for you.
The Challenge of Contributing
At some point, I think any programmer wants to contribute to his or her favorite open source project, but sometimes there are factors that make it more difficult.
- Lack of knowledge of a particular language can hinder your ability to contribute to the codebase.
- Understanding the processes that are in place – that is reporting, ticketing, source control, patching, etc. – have their own learning curve.
- There are unintended consequences to the code that you’ll be modifying and you’re not prepared to handle that.
- …or many other things.
Whatever the case may be, getting started with contributing to the core application takes time, energy, and education and that can take months – or even years – before you get to that point.
That’s what happened to me. In fact, I submitted a couple of patches several of which weren’t accepted because someone else provided better work (and I’m thankful for that).
How To Get Started
To get started in contributing to WordPress, I recommend the following things:
- Read the Contributing To WordPress Codex article in its entirety. Odds are, you’ll be able to contribute something other than code immediately.
- Follow the WordPress Trac closely. This is where all bug reports are opened, filed for milestones, and discussed. If you’re looking to contribute code, this is the place to follow.
- Read Mark Jaquith’s WordPress Toolbox post. This post will describe exactly what’s required for submitting patches.
- Follow the Core Contributor handbook that’s discussed in Helen’s comment.
It doesn’t look like much, but I highly recommend following Trac for sometime to understand how developers interact, how patches are created, submitted, and then accepted or rejected before going about it.
I’d love to contribute to the core application again – with more significant patches, no less – but the truth is that there are many, many more talented and skilled developers working on the core application.
I’m simply glad to be a part of the group of people who contributed as I’ve got great respect for everyone involved.