This year marks 7 years that I’ve been developing plugins for WordPress, and 3 years that I’ve been doing software development as a day job. I could go on and on about what I’ve learned over the past 7 years. I’ve read countless books, blog posts, and articles ranging from topics of SDLC, Development Styles, Coding standards, and career planning. All of that is great and all, but there are 3 things I’ve learned developing for an open source platform (namely WordPress) that I think produce the best end product.
1. What your users want is important, but not the most important
Yes, your users are your customers when it comes to Open Source. They will have suggestions, fixes, improvements, and other input on what you should do differently or next with your project. All my projects started out as something I wanted myself, that I figured some other people could use. From there you publish your project and the feature requests start pouring in (along with the bug reports). Where do you go from here?
The truth is, nothing is free. While you aren’t being paid, you are using your free time to develop the project. Keep yourself (and your significant other/family/friends) happy/healthy before you put your project first. I’ve made that mistake a few times. In the middle of date night is not the time to respond to a bug report. Just trust me on that one. Take all input from your users seriously, but also keep your expectations realistic.
2. Take everything your users say seriously
Hot on the heels of the first thing, you have to listen to your users and no matter how “stupid” you think the request or bug is, this person thought it was important enough to tell you. Some users may not be developers, some may be great developers. The point is, if someone takes the time to fill out a report or feature request, you should take the time to read it and give it a chance for consideration. Without your users, your app/project is nothing.
3. Get and give feedback
One of my favorite parts of open source development is the community. Particularly in the WordPress community, there is a wealth of knowledge in software development practices and skills that any fortune 500 company would die for. The catch, most of these people volunteer their time to the project, and are basically willing to give you feedback for free. If you feel you have knowledge in an area, give a little back. It’s a self-sufficient system where users help users and developers help developers and the end product is a well oiled machine of productivity.
Like I’ve said, I’ve learned WAY more than 3 things but these are ones that I think have become my focus in the past 6-8 months. Hopefully I can keep up with the feedback and listening to my users, while balancing my home life. Challenge: Accepted.
[image credit: http://www.confluex.com/]