This course provides a rigorous introduction to experimental quantum computing. After reviewing the necessary basics of quantum computing, we will discuss how noise and errors affect real quantum gates and the experimental techniques used to diagnose these errors and characterize qubit performance. The second half of the course will focus on experimental implementations of quantum computing, such as superconducting and trapped ions. A strong background in undergraduate quantum mechanics, linear algebra, and knowledge of numeral analysis with python and installing python modules is required.