There has been quite a bit of chatter in the DotNetNuke Forums about various concerns. That in itself is awesome. We as a community need to be actively voicing our concerns and questions to the rest of the community, as well as to the DotNetNuke Corporation. This very act provides invaluable feedback and information to the community. However, there are ways that this can be done that will hinder an open source project altogether. Maybe not in the big picture, but most certainly in the immediate perception by community members.
Consider this... In November 2008, the DotNetNuke Corporation announced that they were going to focus on getting a Professional version of DotNetNuke available to the public, in the hopes of implementing a business model that will in turn generate revenue. While I think that this too is a great thing, I am not going to waste any more time talking about it here. That's not what this post is about.
You more than likely have one of three opinions on that topic: (1) favorable, (2) unfavorable, or (3) undecided. The DNN Forums is typically a great place to either voice why your opinion is what it is, or to finally make a decision either way. However, all too often in a forum post, people will let their emotions get the better of them.
This is an easy thing to do. I am certain that I have probably had my fair share of these kinds of posts in the past. However, in an effort to improve myself, and in turn, improve my communications to those around me and those I have an effect on, I do not allow that to happen these days.
Does that mean that I always side with whatever the DNN Corp decides to do, say, or publish? Of course not, but it does mean that while I may disagree with something that a person says or believes, I am not going to let my message or belief become clouded with emotion. The end result is that the message that I wanted to get across is not what is heard at all. Instead, the emotional statements are replied to.
Here is an example forum post that illustrates what I am referring to.
John Doe says in a forum post, "I cannot believe that the DNN Corp is trying to release a professional version of DotNetNuke, and steal my customers. I work really hard, and these guys just want to make a buck. I am trying to feed my family. I have been developing for over 20 years, and have not heard of such a horrible idea. What will happen to my code? Will I even be able to sell modules anymore?"
Keeping the previous comment in mind, here is an example reply. I will speak to both example quotes in just a moment.
Jane Dough replies in the same forum thread, "Obviously, you are not informed. Have you even tried to read the blog posts or pay attention to the previous thread post? The information has been released for at least a week now. How about taking a look?"
You might already be able to tell that this conversation will go nowhere fast. Every reply from this point forward will be about defending oneself from the previous angry reply, until someone changes the subject, or until either John or Jane gets tired of the public berating. Either way, the point trying to be made will never make it to the other side. In the same breathe, the community members that might have started reading this thread will never make it through and see the point trying to be made either, as they do not want to read people's bickering remarks. They want to read about DotNetNuke (or whatever your forum content is focused on).
In the previous example, both arguments are diluted with personal jabs at the other. In many cases the jabs are not intended, but rather are perceived due to the poor choice of words. This is increasing crucial for those whose first language may not be English. So how might we improve the previous dialogue? First of all, no matter what, all parties to a conversation have a responsibility to mutually clean up their words to keep them "vanilla", or non-disruptive. Here are some other general rules to live by while traversing any forums.
Yes, I am talking to you. I am also talking to the person next to you, the person behind you, the people on your IM and contact list, and even myself.
Language that points a finger at blame, or "I know better than you because..." is strongly discouraged. You may not use those exact words, but using words that sound like that is a bad thing to do. When you say something like this, the other people participating in the conversation will immediately try to discredit your so called knowledge or experience. So saying something like, "I have been developing applications for over 30 years now, and ..." would probably be better left out.
None of us knows everything, and even if we have experience in a specific area for a larger number of years, you cannot say that you don't learn new things everyday.
It is far to easy to jump to conclusions on any topic that we feel we have a handle on. When you consider the human condition, we each tend to wrap bits of information inside of a cloak of our own experience. This means that we will make even the most innocent piece of information suit our needs, fit our prior experiences, or to fit into our current train of thought.
For example, if John Doe from above heard today that the blog module was going to have tags implemented in it in the next release, he might start a forum thread, asking why they aren't waiting for a DNN-wide implementation, and telling them why they are wrong for not doing so. If he just asked, he might find out that this is what they are doing. (This is just a hypothetical example.)
Making such an assumption will in many cases land you in hot water once you find out the truth. But if you don't care how you are perceived by the rest of the general public, by all means, assume away...
I would say that 9 times out of 10, when a forum thread heats up even a little bit, we can look at the entire thread and see that someone didn't read a previous post. In our current day of age where we have little patience and time, this happens every single day on nearly every single forum thread.
For example, what if John from above said, "When I used to develop at NASA 20 years ago, we used a better approach." And then a few posts later, Jane from above said something like, "It sounds like you don't have a whole lot of experience doing this." You might as well call this conversation dead.
Make sure that you actually read each forum post before you reply. This is even more critical when you are replying to a specific person about something that they are quoted saying.
Let's be real. We all think very differently and have different experiences and perspectives. As a result, we will not all agree on topics, issues, changes, etc. We will very often need to simply "agree to disagree". There is nothing wrong with that. Just get your opinion on the record without your message getting lost by discounting or discrediting other posters in the forums.
Just remember this. If it were not for the opinions of those people that disagree with you, you may not even know why your opinion matters as much as it does. In every single case, the right answer is never one person or the other, but rather a middle ground found in the combination of the two opinions.
While it is not okay to point the finger are your extensive resume of experience to prove a point, linking to reputable resources on the web or pointing people to reputable and well respected members of the community is. Send a link to a benchmark or case study proving your point, and there is no need to go any further. That is, unless your link doesn't accurately prove the point.
We can even take this a step further in the case of developers. We can very easily build up a console application and send people the console code or screenshots/video of the console application results. Why debate the issue, when we can just prove it, and get it over with? Do it without breaking any of the other rules though... :)
While we can try and try to find middle groud with folks, not everyone is capable of being pleased. We can give them all of the information and right answers that they are looking for, and they will still be unhappy. In these cases, the person(s) on the other end of the line are probably having a bad day, or they might simply enjoy being disruptive. Either way, it is just better to leave everything alone. The best thing you could do is just stop replying to the thread. Anything you say will just be fuel for their arguments - even if they contradict themselves.
Assuming that you have gotten this far, you probably agree with at least a little bit of what I am saying. That being said, if we remember that not everyone else will make it this far in my blog post, your happiness in any community forum will be heightened that much more. It is easy to forget that sometimes certain personality conflicts clash, or others are not mature in their written communication methods. In these cases, all of the previous rules are probably only being followed by you. That's perfectly fine. At least you can leave the forum thread knowing that you did what you could. It may be beneficial to try and point out and help the other person with their communications, but only try that once. If is falls into the previous category, just walk away.
Technorati Tags: DNN, DotNetNuke, Community, Meaningless