1. Both parties should accept the possibility of being wrong

If you were wrong, would you want to know? If the answer is no, then no point in discussing.

2. Discussion should be about premises (facts) and reasoning, rather than views directly

Views themselves should not be pre-determined or challenged. Views should be a function of premises and reasoning. If a premise changes, or better reasoning is found, your view should update accordingly. E.g:

# GOOD

reasoning_function(premise) -> view

Note: The opposite of this is confirmation bias, illustrated as:

# BAD

find_facts_to_backup_view(view) -> premise

3. Accept that you probably have a bias, and go into conversation actively looking for it

People are generally good at critiquing opposing sides/views, but not their own views.

Signs you may have bias:

4. Nuanced perspectives are valid and encouraged

Things are generally not black and white, there are usually gradations. Avoid the hyper-partisan trap of modern politics.

5. Attempt to understand the intention behind someone’s statement

Rather than pedantically pick apart specific wording of a statement

6. Being right / wrong doesn’t matter, only figuring out the truth

A “weighing balance” mentality instead of “My team vs your team” helps here.

This is science and discovery, not competition.