SMS dit: The theory of error-correcting codes