Pages

Showing posts with label Best Practices. Show all posts
Showing posts with label Best Practices. Show all posts

Tuesday, April 21, 2009

Best Practices on Answering Questions

Introduction

Just like any one, when we see any question in forums, we want to answer them. If we have the answer in our mind we write few lines about this over there. If we do not have the straight answer then we go to the Google and look for the answer and post the link in the answer section of question.

There are so many Answers already

If some one else already answers the question, but still you want to answer the question then you need to read all the answers before you post your own answer. This is very important. This way you will learn more about subject by reading other answers. If your answer matches to the existing then please do not duplicate the answer. When you are answering the question please do not refer to any external link unless the question is very generic.
Let’s go with example. Question “How to implement Replication in SQL Server”. For this kind of questions you can’t answer in few lines, you need to refer to the links. The question, which can be answered in few lines please put your own words to answer the question. Explain your answer with examples to understand in better way. Explaining the answers with real-world examples always improves your knowledge and others knowledge.

Think beyond

If you are just answering the question, then it is good. But this is not enough. You need to think beyond. Let’s go with example. Question is "How to Delete Duplicate Records in a Table". If you search for this in Google you will get different ways to delete the duplicate records. You post the link or your own query in the answer section. Do not think your answer is completed. Your answer is not yet completed.

This is where you need to think beyond. Does my solution/answer handle all the different cases? Let’s take some of the cases in deleting the duplicate records.

1) How many records you have in this table?
2) Who is data provider to this table?
3) Is this table available on 24x7?
4) What is % of the duplicate records?
5) Is this partitioned tabled?
6) Table has any Primary Key or Foreign keys with any other table?

Obviously you can't answer these questions on your own. The one who raised the question can only answer these. This way you are not only thinking beyond but also helping all the other people who are reading the question. This way the quality of your post is increasing.

Learn with your answer

If you are simply posting the same information by copying it from other sites then it is not great. Your main aim should be, learn with your answer. If you keep on doing this then at some point of time you don’t have to refer any other sites or links because you already have good knowledge on the subject.


Can I copy other articles into the answers section?

No. This is very easy for you to copy but this will create problems for the people who are maintaining the website. The Admin of the website gets into Copyright violation issues. Please do not copy the articles from other sites. Try to read and understand the article and paste the summary of that article in your own words and refer to the link.

What will I get by answering?

The biggest advantage is, this will improve your knowledge. If you are marking your presence in your project team it is not great. You need to mark your presence in the world. One day your pocket will be filled up with awards and rewards.

I don’t have time to answer the questions?

You don’t have to answer all the questions, but if you answer one “Unanswered question” or “Answer with good and real world example” will certainly improve your knowledge. Try to answer 1 question with real good example then one day you will be one of the top members in the forum. Do not treat this as burden. Just spend 10 minutes to learn something new or share your knowledge.

Best Practices On Posting Questions in Forums

Introduction
Just like any one, when we run into problems in .Net or SQL Server, we need help from other people. We look for the solution in Google. If we couldn’t find then we will get into good forums, where you have so many great people who can answer your question in very short span. There are some instances where great people can’t answer some of these questions with the information that is provided in Question and Description.

Why no one is responding to my question?
There could be number of reasons. The two most obvious reasons could be either the question or description are not very clear from a complete requirement point of view or the people in forum didn’t come across that situation or do not have expertise to answer the question or solve the problem. Obvious we can’t expect from any one to have hands on every technology that is there in the software field.

The Wrong way to post your question
Normally, a person will start posting like “Urgent” in the title and posts something like “How to validate Textbox data in ASP.NET. Please send me code. Its urgent”. When you hit submit, it will ask you to enter other mandatory fields in page.
With out spending a little to see where your question falls under, you just simply select any category to post your question. But your post goes into minutes, hours and even days with no response.

Another example in SQL Server section is, title contains SQL Query and the Description contains explain below query:
SELECT * FROM EMP WHERE EMP_ID = [:in_emp_id]

As you know each line of the code has meaning associated with its previous or next line. If you just post where you have the doubt then, we can’t answer your question.

The Correct way to post your questionLet’s take some time to put it in right way so that you will get good responses to your question. If we take examples in previous section then:
My Subject line is going to be “Text Box Validation in ASP.NET” and description or the problem statement would be “Hi Friends, I have one text box in my ASP.NET web application form, where I am expecting users to enter their telephone number. I would like to put to validation on this control. The validation that I want to place on this textbox is to accept only numbers from 0-9. The validation should be on client side using java script. So please give me the code/idea to achieve this”

When we are posting our question in the forum we should respect the person who is reading your question.


What am I supposed to do after getting the answer?
Once you are satisfied with the answer, please rate the answer that was able to give you the right solution or direction and please put a word “thank you”.

“Thank you” word really means a lot to the people who are trying to help you in solving the problem.

Even if you are able to find a solution on your own, please come back to the forum and say few lines about how you resolved the issue? This way you are going to help others as well. Please use the same thread.

What if I do not get the answer?
If you are not satisfied with the answer try to use the same thread to post your comments. If nobody replied to your question then repost the same question (but not on the same day) with more detailed information. This is the best way to solve any problem. If you open new thread you may get same answers once again.