I recently had the opportunity to attend Adobe MAX. Meanwhile, my associate Elizabeth Naramore attended the Microsoft Web Developer Summit. We both took away similar impressions of our hosts: These are companies that are actively soliciting feedback from the community and rolling it into their products and future decisions. (I’ve attended the Microsoft Web Developer Summit in the past, so I will be speaking from firsthand experience about both.)
The events are similar; select members of the community are invited and placed in a room with corporate representatives. These representatives are carefully selected to not only know answers to technical questions, but also be able to affect change. (In most companies, few people are capable of both.) The rooms are also carefully stripped of large blunt objects, as well as pointy ones that could be use as persuasion tools.
At MAX, Adobe were particularly interested in our views on AMF support. AMF is the native binary messaging format of Flash and Flex applications, support for which has recently been added to Zend Framework. They demonstrated how it works as well as some upcoming tools designed to make integrating Flex applications with PHP easier.
Microsoft presented on Silverlight, IIS, and Internet Explorer, among other topics. Once again, Microsoft was actively soliciting feedback on what they could be doing better. To see the effects of these types of conversations, look at the per-directory configuration support in IIS 7 that lacks the performance hits of
Now, if you would be so kind, I’d like you to stop for a moment and consider what these two very large companies are doing. They each brought in PHP community members and asked what they can be doing to better support PHP. And, they actually listened. These meetings focus less on what Adobe and Microsoft are doing and more on what the PHP community needs.
An easy point to take away is this: PHP matters. If these companies are actively soliciting feedback from the PHP community, we must matter to them.
The second point to take away is a bit harder to swallow. If these huge companies can do this, why can’t we? When was the last time any open source product you’re using asked you for feedback? When was the last time the PHP project actively solicited feedback from its community? Many open source projects start out as the scratch an itch variety. Many developers sit down and start a project to solve a common problem they have. Once they move past that scratch an itch stage, the projects grow up and actively engage their communities. Like Adobe and Microsoft are doing.
Engaging your community can sound like a big waste of time. Every minute your developers are engaging your community, they’re not fixing bugs, adding new features, or working on the Riemann Hypothesis. Pity. What they are doing is getting a better idea of what exactly it is that your users want—which is immensely valuable—and making your entire project more approachable. Investing time in real community engagement often pays dividends. Those users can, with a little bit of coaching and coaxing, become developers themselves.
Let me share a personal experience. I use a bunch of open source software. There was one library that had a few problems. I did some research, put an hour or two of effort into it, and fixed two rather mean bugs. Then I went to the forums only to find the actual developers were AWOL. I posted about my problems along with a patch solving them. I visited frequently over the next few weeks, hoping for some feedback or at least an acknowledgement of the problem. Nothing. So, while I’ve fixed the bugs locally, others are not so lucky, and it’s very unlikely I’ll try to send patches again. (I’ll send my patches to projects that care, thank you very much.) While those developers didn’t waste time posting to the forums, they also lost a possible contributor. I’m representative of many other potential developers; by losing me and those like me, they’re losing a renewable resource.
Hopefully you’ll agree that engaging your community is not a waste of time. Tragically, not everyone can afford to fly people out to fun cities and ply them with alcohol in order to get their opinion, there are a number of cost-effective ways to engage them.
Forums & Mailing Lists
There are three key steps to using forums:
- Install the software.
- Tell people where it is.
- Show up.
The third step is critical. Many corporations and projects have pulled forums down after watching them turn into a horrible mess of whining and complaining. The critical element that stops this from happening is active participation.
IRC is a great medium. There’s an IRC client for every platform out there, and there are many servers you can use for free! The real-time nature of IRC means questions can be answered immediately.
If you can throw your own conference, great. For every other project out there, an unconference is a good alternative. ZendCon had a very successful “uncon,” and PHP Tek is planning to have one as well. Often, all you need to do is talk with the conference organizers, schedule a talk or two, and invite your community to meet at the conference. You get all the joy of having a conference without having to organize one.
Answering Your Email
Need I say more? Try using the Reply button once in a while.
Although all these methods engage your community, they’re passive. Luckily, it’s easy to flip the switch. Just ask your users what they’re thinking, invite them to talk to you, and implore them to get involved. There are few things people like more than sharing their opinion. You just need to encourage them to get started.