  The purpose of this little survey is to give a simple description of the main
approaches to quantum error correction and quantum fault-tolerance. Our goal is
to convey the necessary intuitions both for the problems and their solutions in
this area. After characterising quantum errors we present several
error-correction schemes and outline the elements of a full fledged
fault-tolerant computation, which works error-free even though all of its
components can be faulty. We also mention alternative approaches to
error-correction, so called error-avoiding or decoherence-free schemes.
Technical details and generalisations are kept to a minimum.
