This document discusses quantum error correction. It explains that while quantum states and operators are theoretically perfect, in reality approximations must be made which can cause errors. Quantum error correction deals with these imperfections. It describes different types of quantum errors and discusses barriers to quantum error correction, such as the no-cloning theorem. The document introduces classical error correction techniques and explains how similar techniques can be applied to encode quantum states to correct bit flip and phase flip errors by measuring the parity of qubits without collapsing their superpositions. Specific quantum error correcting codes are presented, including Shor's code which can correct both types of errors.