Giving Back in 2016

Three years ago, I ended 2012 with a call to the Drupal community to Get Off the Island. Mainly I wanted to encourage Drupal developers to prepare themselves for the major changes coming in Drupal 8 by connecting with other PHP projects and with the broader community, and called on people to attend non-Drupal conferences in order to visit and learn from other communities.

I had no idea that the phrase would become one of the rallying cries of the PHP Renaissance. But it did, and has been repeated from Drupal to php[architect] magazine and other places time and again as projects, Drupal and otherwise, embrace Proudly Invented Elsewhere (PIE).

At the end of 2014, I wrote a follow-up for Acquia's Future of PHP series. In that, I called on people to Build Bridges between communities through not just visiting them, but building with them. Build and launch a real project with some toolkit that's not your usual go-to tool, and then documenting and sharing that knowledge with others.

While recording another episode of the Acquia Podcast with JAM (who seems to like having me on for some reason), he asked me what was next. What was the next 2016 challenge to help build a more robust PHP community?

This one should be easy, right? Give back.

The challenge I'll give you this year, PHP, is to contribute. Not just to your familiar territory, but to something new. Contribute, somehow, to three new projects in 2016. And celebrate it. The hashtag is #PHPGivesBack2016.

We're all standing on the shoulders of giants. And most of those giants, quite frankly, don't work in your project. But they could all use a hand, because those giants aren't really giants. We're all just standing on a huge pile of midgets.

Is most of your work associated with one particular project? Then that one doesn't count. Pick three others. They could be affiliated projects (From Drupal to Symfony or Guzzle, for instance, or from Symfony to Laravel) or entirely unrelated projects. It could be a nominal competitor to your usual project, or not. It doesn't matter. Help build another part of the PHP community.

Have you never contributed to an Open Source project before? Great! That means you have even more options to choose from. There are literally thousands of PHP projects, large and small. There are dozens of projects with medium to large communities around them. Anything from a massive project like Drupal or Zend Framework to a small library on Packagist you happen to use is fair game. Pick a PHP user-space project, a PECL extension, or PHP Internals itself. Some projects have dedicated new-contributor onboarding processes, like Drupal's Core Office Hours, others just want a random pull request on GitHub. Pick what is most comfortable for you.

Are you not a programmer? So much the better. You've probably heard this line before, but there are many ways to contribute to an Open Source project. Code fixes are one. Simply reporting bugs in a useful fashion is another. Nearly every project could use better documentation. Most community Open Source projects with a user interface of some kind are in desperate need of design help or usability testing. If the project has a support channel or forum, simply answering questions before the maintainer gets to them can save gobs of time, time that the maintainer can then spend fixing those bugs you filed a great report for. (Really, running interference for a maintainer so the maintainer can focus on maintaining is crucially important to many projects.)

Of course, not all projects are as welcoming as others. Maybe there's just not a cultural fit, maybe it's beyond your skill level, maybe the maintainer really is a jerk. That's OK. One of the great things about the PHP community is that there are plenty of places to go. If you don't feel welcomed in a particular project... leave and find a new one. Don't waste your time if you run across a pocket of toxic people. Vote with your contributions and go elsewhere, and make a better project better. In a way, that's helping the toxic project, too, by suffocating it of contributions so that more welcoming community projects can become stronger and over take it.

Three contributions, to three projects, in any way, that is new to you. That's the ask. That's #PHPGivesBack2016. And then talk about it. Giving back is something to be proud of so be proud of it, and encourage others to do so as well.

And of course, there's no reason you need to stop at three. The benefits to you, and your career, and to the community don't stop at three. Go ahead and get involved. Be part of something by giving back.