So you want to submit a module for full project status? This is a follow-up to another post I wrote, What's Wrong with the Project Application Queue?, which happened to stir up a lot of mixed feelings and people had quite a bit to say. While I don't necessarily agree with some of the processes currently in place, here are some recommendations for other developers struggling to get their projects through the application queue.
Do Your Homework
Probably the single most important thing to remember is to do your homework before submitting your application. Find out what modules are already out there that are similar to your idea.
- If there isn't anything related to your idea then you're probably ok.
- If there is, then ask yourself whether or not you can submit a patch/feature request.
- If you're not sure then it's always ok to use the Drupal IRC channels to ask, or you can still ask in the form of a feature request.
- If you're just flat out duplicating someone else's module then you're almost certain to be rejected.
Tidy Up and Document Your Code
Remember, submitting an application means that you won't be the only one using your module and everyone has their own "style" of programming. Drupal coding standards and documentation standards are an agreed upon template for writing modules so they can be easily read by other Drupal developers.
While I don't really agree with PAReview as a basis for reviewing project applications, people do use it, and you will catch a lot of flak for not meeting the coding standards. To avoid getting sent into an endless cycle of reviews, make sure you run your module through the PAReview app, and Coder each time you make a commit. PAReview will catch some issues, like security bugs, and code errors, but at the very least, it's good practice, and will save you a lot of headaches later on.
Be Patient and Keep Your Cool
It might take a while for your project to get approval, but try to understand that project reviewers are busy just like you. You're not the only one wanting attention, and quite frankly, they probably have more important life matters to deal with. They are also volunteering their time for free to do the reviews, so be polite. Take their advice and learn from it rather than just getting frustrated.
The review bonus may be a drag, and it is optional, but it may also help get your project through the queue faster, plus it helps out the other developers; however, if you're going to review other applications, don't be lazy and just run it through the PAReview app. You need to legitimately look through the code for improvements, otherwise you're really only adding to the problem. Refer to the How to review Full Project applications page on drupal.org for more clarity on what to do and what not to do.
Maintain Your Project
Congratulations, you're approved! Getting final approval on a project application doesn't, by any means, mean that you are "finished". An important part of being a module maintainer is just that, maintaining it. People are going to rely on you to fix bugs, answer questions, and keep your module up to date. If you can't commit the time to do all of these things then it's probably better if you don't submit the module at all, or hand off the responsibility to someone who is willing to take it.
Don't Give Up!
I think we can all agree, rejection sucks. It's frustrating to put your blood, sweat, and tears into something only to have it rejected by the community, but it's not the end of the world. If your submission is rejected, don't give up! There are other ways to contribute, and you can always come up with new ideas.
Thanks to all of the various commenters on my previous post for some of the suggestions here, your feedback does get heard!