Productive Discussion: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 13: Line 13:
When forming your question, make sure the question does not sound like a decision has already been made (e.g. "We're going to fix the problem like this, do you agree?").
When forming your question, make sure the question does not sound like a decision has already been made (e.g. "We're going to fix the problem like this, do you agree?").


=== Define Scope ===
=== Provide Context ===


A question is not asked in isolation. Here are some ideas for additional information it may be wise to provide.
A question is not asked in isolation. Here are some ideas for additional information it may be wise to provide. This and "construct question" may happen together.


'''Context''' is where the decision fits in with the rest of Mozilla. When starting a discussion, it is important to be clear about why a decision needs to be made. For example, if the decision is about fixing a problem, it is helpful for people to know what the problem is, and why it needs fixing.
'''Context''': what situation led to the need for a decision, and where the decision fits in relation to the rest of what Mozilla is doing. When starting a discussion, it is important to be clear about why a decision needs to be made. For example, if the decision is about fixing a problem, it is helpful for people to know what the problem is, and why it needs fixing.


'''Scope''' is what is needed to make a decision. This can include things like specific technologies (e.g. a code library) and broader discussion points (e.g. should we do this?)
'''Off-Topic''': what should be avoided during discussions. If there are particular things you do not want to discuss, mention them explicitly.


'''Not in Scope''' is what is to be avoided during discussions. This means that there may be some particular things you do not want to discuss, because they are not about this particular decision.
'''Impact''': how much people or things (like features, code libraries, products) will be affected by a decision. When setting the scope of a discussion, make sure you think about the impact of the decision both by numbers of people and by size (e.g. will this completely alter something, or is it a small change?)


'''Impact''' how much people or things (like features, code libraries, products) will be affected by a decision. When setting the scope of a discussion, make sure you think about the impact of the decision both by numbers of people and by size (e.g. will this completely alter something, or is it a small change?)
'''Timeframe''': how long a discussion should take. Some decisions need to be made before a deadline, and others can take their time to get right. In any case, before you start a discussion, try to suggest a finishing time. This can be changed later if it needs to be.


'''Timeframe''' is how long a discussion should take. Some decisions need to be made before a deadline, and others can take their time to get right. In any case, before you start a discussion, try to suggest a finishing time. This can be changed later if it needs to be.
=== List People ===


=== Invite People ===
You should consider who definitely needs to be involved in the discussion.


You should consider who needs to be involved. When thinking about this, it can be helpful to look at the categories defined by the [http://en.wikipedia.org/wiki/Responsibility_assignment_matrix "RACI" model]:
When thinking about this, it can be helpful to look at the categories defined by the [http://en.wikipedia.org/wiki/Responsibility_assignment_matrix "RACI" model]:


* '''Responsible''': people who need to implement the decision
* '''Responsible''': people who need to implement the decision
Line 69: Line 69:
If you have decided to go ahead, you need somewhere to put the written proposal and supporting information (if it is anything more than trivial), and somewhere to have the discussion. These two places will not be the same. This is because proposals for change will usually need to be updated during or after the discussion, and therefore it is unwise to define their canonical location as somewhere where this is not possible - such as the first post in a discussion thread.  
If you have decided to go ahead, you need somewhere to put the written proposal and supporting information (if it is anything more than trivial), and somewhere to have the discussion. These two places will not be the same. This is because proposals for change will usually need to be updated during or after the discussion, and therefore it is unwise to define their canonical location as somewhere where this is not possible - such as the first post in a discussion thread.  


So, best practice for written proposals is to put them on the Mozilla wiki. Etherpad does not have sufficient formatting capability to make it a good home for proposals. It also doesn't keep clear named history. Using Google Docs may lead to one of two issues - either people who want to edit can't, or people can without leaving details of who they are. A blog post is possible if you want editorial control and are willing to update a post at a later date, but decisions and policies can be long-lived and it might be wise to move it to the wiki after it's done.
'''Written Proposal''': Best practice for written proposals is to put them on the Mozilla wiki. Etherpad does not have sufficient formatting capability to make it a good home for proposals. It also doesn't keep clear change-based history with named editors, whereas the wiki does. Using Google Docs often leads to one of two permissions issues - either people who want to edit can't, or people can, but without leaving details of who they are. A blog post is possible if you want editorial control and are willing to update a post at a later date, but decisions and policies can be long-lived and it might be wise to move it to the wiki for posterity after it's done anyway.


Where you decide to have this discussion depends on whether it's possible to make a short list of all the concerned parties or not. If it is not, you should have the actual discussion in an appropriate Mozilla discussion forum. They are topic-based and archived, and their asynchronous nature widens participation. If you do have a short list of concerned parties, there are some other options. Bugzilla is mostly about implementation rather than decision on policy, although the edges are fuzzy. IRC (in a logged channel) is OK if you can be sure everyone can be available at the same time. Unless someone is taking good notes, you should avoid taking significant decisions on teleconferences, Vidyo, or in meetings.
'''Discussion Venue''': Where you decide to have this discussion depends on whether it's possible to make a short list of all the concerned parties or not. If it is not, you should have the actual discussion in an appropriate Mozilla [https://www.mozilla.org/about/forums/ discussion forum]. They are topic-based and archived, and their asynchronous nature widens participation. If you do have a short list of concerned parties, there are some other options. Bugzilla is mostly about implementation rather than decision on policy, although the edges are fuzzy. IRC (in a logged channel) is OK if you can be sure everyone can be available at the same time. Unless someone is taking good notes, you should avoid taking significant decisions on teleconferences, Vidyo, or in meetings.


=== Gather Data ===
=== Gather Data ===
Line 87: Line 87:
== Start Discussion ==
== Start Discussion ==


Kick off your discussion by posing your question, introducing your moderator (if needed), and outlining the scope and topics to be included. It is always a good idea to give people the reasons you are having a discussion, and try to explain how you see the possible outcomes.
Kick off your discussion by writing your proposal, and then posting a pointer to it (and perhaps a copy of it) in the medium you have chosen. Introduce the moderator (if needed).
 
Post your discussion in the medium you've chosen.


=== Evangelize Discussion ===
=== Evangelize Discussion ===


After the discussion has begun, you should invite people to join and tell people that it is happening, using whatever means you feel appropriate. Include all the people or groups from the list you made above. Keep a note of where you advertise it, so you can post the outcome of a discussion in the same places.
After the discussion has begun, you should invite people to join and tell people that it is happening, using whatever means you feel appropriate. Include all the people or groups from the list you made above. Keep a note of where you advertise it, so you can post the outcome of a discussion in the same places. Try and funnel discussion to the chosen location rather than engaging in the debate in e.g. blog comments.


=== Hold Discussion ===
=== Hold Discussion ===
Line 118: Line 116:


A discussion is usually finished when a decision is made. Some discussions lead to no decision, and should be stopped because of time, or because they have found that a decision requires a different discussion.
A discussion is usually finished when a decision is made. Some discussions lead to no decision, and should be stopped because of time, or because they have found that a decision requires a different discussion.
The fact that people still disagree is not a reason to keep the discussion open. If the person responsible for the decision feels all viewpoints have been sufficiently aired, they are entirely permitted to end things there. Unanimity is not a requirement.


Draw the discussion to a close by summarizing the points made, and letting people know that it is finishing.
Draw the discussion to a close by summarizing the points made, and letting people know that it is finishing.


Make sure to '''inform''' people by telling them what the decision was, and summarize the discussion to tell them why. Because the discussion has happened in an archived medium, you can also include a link to the discussion. You should do this any place you announced or publicized the discussion.
Make sure to '''inform''' people by telling them what the decision was, and summarize the discussion to tell them why. Because the discussion has happened in an archived medium, you can also include a link to the discussion. You should do this any place you announced or publicized the discussion.
Account confirmers, Anti-spam team, Confirmed users, Bureaucrats and Sysops emeriti
4,925

edits