Use parentheses liberally to resolve ambiguity.
Using parentheses can force an order of evaluation. This saves the time a reader may spend remembering precedence of operators.
Don't sacrifice clarity for cleverness.
Write conditional expressions so that they read naturally aloud.
Sometimes eliminating a not operator (!) will make an expression more understandable.
Keep each line simple.
The ternary operator (x ? 1 : 2) usually indicates too much code on one line. if... else if... else is usually more readable.