Six tips I learned about sustaining long-term core contributions at WCLDN

Wordcamp London - Six tips learned about core-contribution

As a developer and hopeful future contributor to the WP Core, I question what lies on the road ahead. So I sat for Felix Arntz’ talk at WordCamp London on how to sustain long-term contributions. Since joining his first core-contribution table at WordCamp Europe – Seville in 2015, he’s gained a lot of knowledge (and frustrations).

#Tip 1 – Hold your horses

He first talked about the headaches of reporting bugs and creating tickets when in this zone. That even though you’d want to go ahead and immediately patch – you still need to discuss first. This is not a solo project. You need to learn the philosophies of the circle you’re part of and make them part of your mindset.

Always place the project’s goals ahead of your own ego. It’s worth allowing others to try to convince you. In the same way that you should feel free to convince others when necessary. If you disagree initially – step away, think about it further, and come back later.

#Tip 2 – Sometimes you’re wrong

Understand that rejection’s part of the whole process. Your ideas Will not always be accepted by the group – and that’s OK! Here’s how Felix suggests you deal with that rejection.

  • If someone gives no good reason for saying no, ask for one explicitly.
  • Disagree? Then dig further. Ask for a third and fourth opinion.
  • Still disagree? Then, your thoughts may not comply with the project’s philosophies.
  • Always keep your calm and be polite. Don’t take anything personally.

#Tip 3 – Get your answers

Felix shared how when he joined Multisite in 2016, he struggled a bit with unanswered questions. He would say be persistent when you don’t receive an answer for a while. Your question is valid and deserves an answer too. But I think that it’s often up to you to chase your own answers. One way or another.

#Tip 4 – Find your focus.

First, you need to find out what interests you the most, before you can start placing your focus towards it. Then you’ll know which meetings you can participate regularly in for that component.

I may not like to sit back myself – I tend to dive right in and participate. Always keeping in mind that direct communication Works best. But Felix says it’s perfectly OK to just pop in with a hello at first and hang around a bit, seeing how it’s done. And the more you show up, learn and present ideas, the more you build trust over time.

#Tip 5 – It ain’t just code.

You’re not just gonna be sitting there coding the stuff all day, by your lonesome. Be open to new tasks. And when you accept them, document changes precisely so that others can follow. Or even recap so your colleagues can stay up to date.

Write precise ticket descriptions and commit messages. You may be the one interested in the core, but you’ll still need to collaborate with other teams, like design and accessibility.

Want to become a component maintainer? Once you’re more familiar with your component, start providing responses to new tickets. And make new contributors feel welcome.

#Tip 5 – Learn and repeat

You don’t need to be a coding virtuoso to land an important role in the core. All you need to do is keep contributing, learn from mistakes and never stop improving your skillset over time.

Why is this important?

Well, we advise that you pay attention to details. But keep in mind that even a small change might break something in another location. So write tests to verify functionality and integrity. Don’t break any through a commit. And always make sure your code is reviewed by other experts in the respective area.

#Tip 6 – Be time-aware

You need to be reasonable with the time you have to things. Don’t overestimate what you can do within those core-dedicated hours. Moreover, don’t get involved with too many components. Just stay focused on those select few, so you can make a real difference.

Wanna increase your core time?

Then know that making an impact on core development will spark your fellow coder’s attention. Already got a lot on your plate with the company employing you 9-5? Bring up your aspirations with your boss.

Many companies will be more than happy to grant their developers extra time to work on extra projects that grow their skillset. Also works if it’s time for a change. Because prospective companies may become interested in sponsoring you. So my advice would be to take a chance. You never know!

Dev Spotlight: Felix Arntz on Coding and Contributing to the WordPress Core

Plesk interviews Felix Artnz

After Felix Arntz gave his latest speech at WCLDN regarding contributing to the WordPress Core, I had a sit with him. Mostly to chat about what keeps him going. He’s a freelance backend developer, based in Germany. And for many years, he’s been implementing client solutions and plugins that majorly focus on Multisite environments.

This month, Yoast started sponsoring him part-time to contribute to the WordPress Core. Which lets him spend even more time coding for the open-source-project he’s deeply committed to. Besides this, you’ll also find him involved in Multisite, Capabilities and Post Thumbnails. Moreover, he writes plugins and libraries, focusing on developing clean and sustainable solutions. Here’s what we learned from Felix last weekend.

Felix Arntz Q&A

WordPress is free for us and allows us not only to publish content but also to make a living out of it. And even get in touch with awesome people from all over the world. It’s important to give something back in whatever dimension that’s possible for you, as an individual, in whatever area works best for you.

Definitely overcoming the feelings about being “rejected”. For example, when people closed tickets I opened or didn’t accept my suggestions. It’s important to step back and ask yourself why this make you feel frustrated.

Maybe this won’t make a lot of sense to you. But when you write a unit test in WordPress, you don’t need to clean up after yourself. Because WordPress does it for you. It’s not very well-documented, so a lot of people don’t know – unfortunately.

They clean up after themselves and write tons of additional code which is absolutely unnecessary. It’s not important because it doesn’t break anything. But it just kind of bugs me. Yes, a useless thing, which bugs me. (laughing).

Patience. At first, I was very annoyed because many things took a lot of time. I was like, “come on, it’s not that hard to fix!” But when I got my committer access to WordPress core and did my first commit, that was the moment when it clicked.

I was kind of anxious when I was about the hit the “Enter” button for the very first time. Did I do everything right? Would my decision break WordPress? I know my colleagues have similar attitudes too.

Everybody wants to be 100% sure the code they’ll commit will work – and not break anything. I understood then why (good) things may take time and why not everything I had pushed for previously got merged as quickly as I wanted it to.

That’s a very easy question: going to my first WordCamp! One of the best decisions I ever made, to be honest. In my talk I said I regret that I didn’t to that 2 years earlier.

However, it was definitely outside of my comfort zone, because I wouldn’t say I was much of a people person. I didn’t know anybody. But it immediately worked for me. I already met the first cool people of this community on the plane – which was amazing! (laughter).

I really like Sublime Text, which I use as a code editor. It’s a very basic tool but I love how fast it is. This is way more important to me than additional features other editors would provide me with. Well, I argue about that sometimes with people. (Laughter).

WP Query Monitor is a great Developer Tools panel for WordPress. And then some automation tools like Gulp and a lot of testing tools. If I counted them all, it would take us some time. (Laughter)

Coding standards and well, design patterns. Basically more abstractions in the code base. And making it maintainable. Because to be honest, maintaining it is terrible at the moment.

I’ve been holding off learning JavaScript for some time now. Even if my focus is PHP, and if it will probably stay that way, I still really wanna learn and understand JavaScript. And enable myself to create some cool stuff in Gutenberg. And maybe help out in the Gutenberg team at some point.

I didn’t start learning it yet, but I definitely will! Now that we’re talking, I seriously think I’m gonna start tomorrow by learning React and then dive into Gutenberg. (Laughter)

I decided not to go down the business road. Because I love coding. And when you run a business, you do this part that you really enjoy less and less. I just wanna code (Laughter)

I’ve been a freelancer for some years now and I try to automate my workflow as much as possible. So I think I would probably use any tool that would help me doing so. Why not a server management platform like Plesk? I must confess, that I haven’t used Plesk’s control panel so far. And I don’t know that much about it. But that’s nothing we can’t change!

Lots of things music-related: listening, writing and producing music, playing the piano, going to concerts. And I love playing soccer. Oh and of course – travelling the world with WordCamps!

Catch Felix’s WCLDN Talk on WP Core if you’ve missed it

You can very well get familiar with the technical bits of WordPress core contribution during a WP Contributor Day. But you don’t normally get deep insights if you’re interested in finding your spot in a core contributor team.

Felix’s talk is for those who want to contribute as efficiently as possible and deal with roadblocks with less frustration. He showcases the benefits of contributing, recommends how to build trust, and gives insights on which traits are particularly valuable to have. It’s more than just code-writing. It’s building long-term relationships and making significant impacts. WPTV Talk coming soon! Meanwhile, check these slides here.