What is Core contributing?
Contributing to WordPress core as a non-developer can feel a little confusing. After 10 years of benefitting from the efforts of WordPress Core contributors, I was finally able to find a path toward giving back and making a meaningful impact.
WordPress is an Open Source project. It’s maintained by folks around the world who care about its future and believe in a product that can be used and tweaked to meet the needs of countless individuals and organizations.
The beautiful thing about WordPress is we can help make it better. We’ve previously written about ways you can contribute to WordPress.
Barriers to contributing
But I felt blocked from going further by:
- Time – It didn’t make sense to try and figure out how to contribute to WordPress, since I didn’t have a great starting point. There was no obvious path for digging in.
- Experience – While I have experience as a designer, I wasn’t sure how this could translate to working on WordPress as I assume only developers could help.
This all changed recently for me. XWP is committed to the vision of WordPress as an Open Source product, meeting the many unique needs of different websites. Over the years we’ve been supporting the efforts of several of our team members in working on WordPress.
Contributing as part of a team
Starting last year we began to add some structure to this support. We created a team that focuses on contributing to WordPress Core for a specific amount of time. We call it the Core Contributor Team (or CCT for short). The first team was composed of John Regan, Matt Geri, Piotr Delawski, Ryan Kienstra, and WordPress 4.7 Deputy Release Lead: Jeff Paul.
The purpose of CCT is to:
- Get folks inspired to contribute back to WordPress core software, especially if they haven’t done it before
- Sponsor enough time (roughly 1 day a week for 4 months) to make a difference across a range of issues
Earlier this year I, along with Jeff Paul, Justin Kopepasah (Koop), Miina Sikk, and Mike Crantea, joined our second Core Contributor Team. We were also supported by Weston Ruter, XWP’s CTO, as we attempted to align our efforts with the work he is helping to do on Core as the Tech Lead for the Customize component. Being part of a team was very helpful, especially for someone who hadn’t done this before. We met each week to discuss what each person was working on, offer support for areas we were stuck on, or suggestions on what to tackle next.
Initially the team was spread out across a range of areas, looking through Trac, joining the different Core Slack meetings, and finding tickets to help out on. We worked on the Customizer, REST API, Accessibility, and Project Gutenberg, and were able to make helpful contributions towards each of these areas.
The team experience
Koop, Mike, and Miina each helped from an engineering perspective, and they’ve shared their thoughts from the experience:
“Although not my first time contributing to Core, it has been quite a while since contributions flowed so quickly and repetitively. Working with a team was a great motivator for Core contributions. Contributing to Gutenberg at its beginning stages was good to see the direction of focus regarding teams outside of XWP. Contributing to Core had previously been complex and it was a good to know that contribution methods have changed over the past few years, allowing people to more easily contribute.”
“This was my 2nd time contributing to Core. Choosing the first ticket was a bit overwhelming, but once I gotten into an area of interest, it was easy to find similar tickets and further work. The area I focused on was Accessibility.”
“This was my first time contributing to Core. It was easy for me to find an issue to start with since they were tagged with categories I could filter through. The ones that interested me and I started with were related to Customizer and the rest API. At first I wasn’t sure how things are done and what the workflow is like, but once I started coding things went smoothly; I had been wanting to contribute to core for some time already but the system was quite confusing. I wasn’t sure if it’s fine to just start working on something or how to start exactly. After the CCT experience I feel like this was exactly what I needed to be able to continue contributing to Core in the future, definitely interested in doing it more!”
Our contributions to WordPress (the Gutenberg project isn’t shown) during CCT
Design is always needed
As a non-developer, coming from a design background, I wasn’t sure where I could help. I looked through Trac tickets related to design. I read through pages of comments and tried to make sense of what was being discussed. It felt like a maze. I chatted with several folks from CCT, as well as a handful of people who are regularly Core Contributors to try and figure out where I could help.
Finally it clicked. I found an issue that I could understand, and had a problem I could offer a solution to.
That insight is simple, but took me a while to figure out. Once I was able to start giving feedback on that issue, and realized my feedback was helping to move the conversation forward, I was hooked.
Suddenly dozens of issues started to appear out of nowhere (they’d been there all along) that I could contribute to. I was able to jump into numerous issues, giving feedback, sketching wireframes, and creating prototypes.
A couple things that I learned from all this:
- You don’t have to have all the right answers to move an issue forward. If you have only part of the answer, or questions that clarify the problem, don’t be afraid to share.
- Visual aids really help define the problem and can offer a solution. Often I’d include a wireframe of the issue. It would ether validate that I didn’t understand the problem – that’s still progress – or it would help add clarity to the issue.
An example of a sketch added to an issue
I appreciate the opportunity CCT offered in getting past my own barriers to contributing. You can become a contributor whether you’re a designer, a developer, a project manager, or many other things; whether you’re interested in accessibility, quality assurance, copywriting, or just someone who wants to make WordPress better.
Going forward I’m going to continue contributing to Core development wherever I can. In the near future this means helping with Gutenberg on design related tickets as it eventually moves toward a release. I’ve gotten hooked on Core contribution and look forward to seeing what I can help with next.