the dot product
How much do two arrows 'agree'? If they point the same way, a lot; at right angles, not at all; in opposite directions, negatively. The dot product is a single number that measures exactly this overlap between two vectors, and — surprisingly — it ties together angle and length into one easy multiplication. From it we can read off whether two vectors are perpendicular, find the angle between them, and project one onto another.
There are two faces of the dot product, and their agreement is the whole point. The algebraic face: multiply matching components and add them up. For u = (u_1, u_2, u_3) and v = (v_1, v_2, v_3), u . v = u_1 v_1 + u_2 v_2 + u_3 v_3 — the answer is a plain number (a scalar), not a vector. The geometric face: u . v = |u| |v| cos theta, where theta is the angle between the two arrows. Setting the two faces equal gives a fast way to find an angle: cos theta = (u . v) / (|u| |v|). The most-used special case is the test for orthogonality (perpendicularity): since cos 90 degrees = 0, two nonzero vectors are perpendicular exactly when u . v = 0.
The dot product is everywhere: work done by a force is force dotted with displacement; the test u . v = 0 detects right angles without drawing anything; cos theta extracts the angle in one step. It plays nicely with the algebra too — it is commutative (u . v = v . u) and distributes over addition. Note u . u = |u|^2, so the dot product even recovers length. One honest caution about signs: a positive dot product means the angle is acute (the arrows broadly agree), zero means a right angle, and negative means obtuse (they broadly oppose). The sign carries real geometric information — do not discard it.
Take u = (1, 2, 2) and v = (2, 0, -1). Then u . v = (1)(2) + (2)(0) + (2)(-1) = 2 + 0 - 2 = 0, so u and v are perpendicular. For the angle between a = (1, 0, 0) and b = (1, 1, 0): a . b = 1, |a| = 1, |b| = sqrt(2), so cos theta = 1/sqrt(2), giving theta = 45 degrees.
Zero dot product means perpendicular; otherwise it gives the angle.
The dot product of two vectors is a number, not a vector — do not write 'u . v' as if it had components. And do not confuse it with the cross product u x v, which IS a vector; the two answer different geometric questions.