Quaternions are used in many fields of science and computing, but teaching them remains challenging. Students can have a great deal of trouble understanding essentially what quaternions are and how they can represent rotation matrices. In particular, the similarity transform which actually achieves rotation, can often be baffling even after students have seen a full derivation. This paper outlines a constructive method for teaching quaternions, which allows students to build intuition about what quaternions are, and why simple multiplication is not adequate to represent a rotation. Through a set of examples, it demonstrates exactly how quaternions relate to rotation matrices, what goes wrong when qv is naively used to rotate vectors, and how the similarity transform fixes the problem.