Visualising the Gram-Schmidt Algorithm
This applet demonstrates the Gram-Schmidt algorithm performed in $\mathbb R^3$.
The Gram-Schmidt algorithm converts a basis of an inner product space into an orthonormal basis.
It does this by building up the orthonormal basis one vector at a time. For each vector in turn, we remove any component that is parallel to the vectors which came before, and then normalise the result.
Other resources: