we reach the concept of a communication channel, with its own imperfections and intrinsic noise. The chapter reviews the principles and various families of block codes and cyclic codes, showing various capabilities of error-correction performance. The communication channel concept is fully disclosed in the description going through Chapters 12-14. After reviewing channel entropy (or mutual information in the channel), we reach Shannon's most famous channel-coding theorem, which sets the ultimate limits of channel capacity and error-correction potentials. The case of the Gaussian channel, as defined by continuous random variables for signal and noise, leads to the elegant Shannon-Hartley theorem, of universal implications in the field of telecoms. This closes the first half of the book. Next we approach QIT by addressing the issue of computation reversibility (Chapter 15). This is where we learn that information is "physical," according to Lan- dauer's principle and based on the fascinating "Maxwell's demon" (thought) experiment. We also learn how quantum gates must differ from classical Boolean logic gates, and introduce the notion of quantum bit, or qubit, which can be manipulated by a "zoo" of elementary quantum gates and circuits based on Pauli matrices. Chapters 17 and 18 are about quantum measurements and quantum entanglement, and some illustrative applications in superdense coding and quantum teleportation. In the last case, an appendix (Appendix P) describes the algorithm and quantum circuit required to achieve the teleportation of two qubits simultaneously, which conveys a flavor of the teleportation of more complex systems. The two former chapters make it possible in Chapters 19 and 20 to venture further into the field of quantum computing (QC), with the Deutsch-Jozsa algorithm, the quantum Fourier transform, and, overall, two famous QC algorithms referred to as the Grover Quantum Database Search and Shor's factorization. If, some day it could be implemented in a physical quantum computer, Grover's searc