State of support and call for help
After listening to the Brussels Drupalcon podcast I thought it would be good to post a general write up on the state of support on Drupal.org and what new people or people not really involved can do to help out. A lot of this is unscientific and opinion based.
Drupal has experienced phenomenal growth over the years. This is not new. I am user id 5195 and started 3 years ago. As I post this we have more then 80,000 registered accounts and a growing list of involved companies selling Drupal services. Maybe someone (mythical someone) could do a date, user registration graph to see the current curve. Past graphs showed this.
Over the years many people have joined in (or were already helping) and provided support and answers to a large number of people. Some posts have gone unanswered. My feeling on this is the numbers have gone up but the overall percentage of unanswered posts have gone down. Numbers because we've got over 80,0000 registered users and not all that many folks answering questions in the forums. A lot of unanswered posts are multiple from the same person. A person asking a question, not liking the answer and posting it again. Or someone posting an unclear question and it not getting answered. Or the few who would know that are on holiday and missed it. It happens.
We need to try and emphasize the Drupal mission and principles more in response when some new person comes in all fired up to start a fight rather then get involved and help out.
So, the summary first..... All in all, not bad. Could be better. Could be worse. We still need more people returning the help they have received from others to the next generation of Drupal users. As Drupal core and contrib have continued to evolve into the next generation and our exposure to the rest of the world continues to grow, we gain whole new classes of users, developers and implementers. Read on for some ideas on how to help out and contribute back to the project that gave this great tool-set/CMS.
Now onto some realities and how you can help out.
- This is Open Source software. No one is responsible for providing free support to you and there are no guarantees to support unless you contract with an individual or company.
- People provide support here for a variety of reasons, often they are complex. They are not obligated. There is no mythical 'they’ and no mythical 'someone should'. There is only all of us, you and me.
- If you are not providing some form of support on Drupal.org in return for this free software and free assistance, then how can you expect others to provide free support to you?
- If you have successfully installed Drupal, then you know more than someone and can help.
- It can take three weeks to three months to really begin to get a handle on using and developing Drupal. This tends to hold true across a variety of skill levels depending on skill set and goal. Plan your time to deployment accordingly. What Drupal allows you to do and accomplish is not simple, expect to invest some time to learn it as it does prove worth it.
Leveraging resources
Three years ago I decided my contribution would be answering basic questions (fortunately others have decided this too). This evolved into teaching and encouraging others how to support and working with people to improve the documentation and directing people to pages and resources they may not be aware of. Many other technical forums contain and maintain their documentation and FAQ's in their forums. Drupal.org does not do this, instead choosing to maintain long term information in the handbook, and a lot of folks either don't know to, or never, look in the handbook for answers.
The handbook is large. Over 1400 pages. The handbook re-org in January this year was effective in that it organized a lot of the information in an easier to find format. The php snippets and the phptemplate theme snippets have been added and have grown through contributions by our members and inspired other specialized sections with bits and pieces of complex tools. This resulted in a change in the type of questions being asked in the forums as the question became more sophisticated and complex. The Troubleshooting FAQ has been added to which also helps significantly with repetitive issues. Over this last year we have added videocasts from a lot of nice folks as these things take time to do right. More hosted centrally off Drupal.org would be nice.
One thing we lack is 'So Drupal is installed now what?' tutorials. People keep demanding them form the mythical 'someone should' and others keep promising them and telling the community 'they'll show us' and disappear to never return. So if anyone really wants to make a name for themselves they can put together some 'now what' tutorials. There is even a starting point thread that outlines a lot of stuff, just need to pretty it up and walk through all the steps from, Drupal is successfully installed here's step 1. I certainly haven't had the time to do them so anyone else picking them up would be great.
How to help and why
People contribute for a variety of reasons. Today we have more people then ever providing support in the forums and helping out with the occasional handbook page. We still don't have enough but it's not all doom and gloom.
Altruism, enlightened self-interest, community involvement. All of these come into play. Altruism because it's a 'right thing to do'. Enlightened self-interest' because as mentioned on the web-cast helping people in the forums, providing support and code to contrib module maintainers for modules you use and interacting with the community gets you noticed by people who are over worked. High profile people who are looking for someone to direct work they can't take often do so to people who are involved and active in the community.
Other ideas that came out of the webcast...
Pay it forward
- Companies can budget some support time as a way to contribute back to the community that gave you this great free software. benefits you because you are tapped into whats going on and folks are more likely to help those they recognize…. Hour a day/ Friday morning a week, etc. Be creative. Get your folks in the habit of helping build the next generation of support folks who will turn into the module developers you can hire later. It's a good way to help build your reputation and find those whom you may hire.
- If you are not doing support, then how can you expect others to? People are more likely to spend additional time assisting those they know are helping others so it benefits you to help others with no expectation of help in return.
- Anyone can answer a question that they know the answer to. Someone is newer then you or less experienced then you
- Learn to use and reference resources on Drupal.org. The support tab, the contribute tab and the handbooks all have a wealth of resources and sometimes it can help others to show them how to use them as well as answer their questions. A little more time up front is less time later. If you answered a question more then twice and there isn't a handbook page, then the third time add such a page and link to it instead.
IRC
IRC support is an interesting point. #drupal-support and #drupal-themes have been listed in the support tab for a year yet so many never click the link. There are a lot of opinions about IRC support. Drupal is a community platform. People in a community strive to communicate. #drupal is the original channel and is for code development on Drupal not support questions, it is active and the root channel. #drupal-support has a limited number of volunteers supporting people in it. That's all right as it's conversations are transitory and not the best venue for long term storage of help and assistance but it can still be used effectively. Here's how;
- Like with forums, answer questions with links to handbook resources.
- If you have no links and have answered the question more then twice, write a handbook page so others can answer for you. Fifteen pages I wrote originated this way as well as updating others.
- No one is there to help! Really? Well are you there helping people for free? No? Hmmm....... Free, live support is a gift, please treat those who offer it and the time they grant you as such.
- If you are hanging out there and bored tag team on forum questions or docs. You can also learn a lot just auditing the channel.
What can you do?
Aspiring Drupal Ninja.
- If you've installed Drupal, you know know more then someone else.
- Support gets you noticed over time.
- documentation saves you and someone else from repeatedly answering the same questions.
- other support folks tend to respond more to those that they see helping others and are more likely to take the time to invest more in the support
- those to busy to take work or recognized get asked for who they should hire or give work to.
- Easy contributions: Write documentation for contributed modules you use that don't have a page. It's easy but we have hundreds of modules and so few handbook contributors.
We are resource constrained here on Drupal.org. There are more good ideas then real people or resources to implement them. So we try to make the most effective use of our resources as possible.
It is each of our responsibilities to train those that come after us as those who came before have helped us. The responsibility is a distributed one. It's the only way this community will scale. So when someone says "why don't you do x", it's not because it's not a good idea, it's often there is no one to do x and maintain it or it's been tried and not worked well. So if you want to do x, then step up and get a team to work on it.
Thanks to everyone who has contributed to the code, UI, forums support, documentation, evangelism and so forth. Without the code we'd have nothing to build on, without the community we'd not have such great code.
I leave you all with this last note. I am expecting the birth of my daughter in January. This means I will have less time to allocate so let's hope someone will step up and help cover my work in the forum. I will be trying to focus more and more on documentation in preparation for 5.0 as ultimatly that helps more people.
-Steven Peck
---------
Test site, always start with a test site.Drupal Best Practices Guide -|- Black Mountain
Community plumbing - Drupal is a plumbing tool as in plumbing the depths to learn and there are a lot of depths to be mined. (I just like that quote from the podcast)