1 Quantum computing: the hype and the promise
This chapter introduces quantum computing as a fundamentally different model of computation from the classical paradigm that underpins everyday technology. Acknowledging that quantum effects are unintuitive, it proposes a practical, “physics-light” path to learning by writing and reasoning about quantum programs. It sets expectations about prerequisites (basic quantum concepts and linear algebra), and frames the book’s hands-on approach: solve well-scoped problems, implement them as code, and build intuition through practice rather than abstract theory alone.
The chapter separates hype from reality by focusing on practical quantum advantage—cases where quantum algorithms beat the best classical methods in meaningful, real-world tasks within useful timeframes. It highlights problem characteristics most likely to benefit: small-data big-compute settings, exploitable mathematical structure, and asymptotically superior algorithms (with exponential or similarly strong speedups often required once practical overheads are considered). It uses well-known examples to illustrate nuance: simulations of quantum systems and materials science are promising, Shor’s factoring algorithm targets a structured task, and Grover’s quadratic speedup often loses to classical methods that leverage data structure or faster primitives.
Finally, the chapter surveys the three pillars of the field—algorithms, hardware, and software—and how their co-evolution shapes progress. It traces hardware milestones from early proof-of-concept experiments, through debated “supremacy” demonstrations, to today’s focus on fault tolerance and error correction as the gateway to useful, large-scale computation. On software, it outlines a stack spanning applications, languages and libraries, compilation and optimization, and hardware control, with simulators playing a central role in testing. The practical workflow mirrors classical development—design hybrid algorithms, test and debug on simulators, estimate resources, then run on real devices—and the chapter closes by motivating learners: the ecosystem is expanding rapidly, education is increasingly accessible, and this book will guide readers through building quantum solutions in Qiskit and Q#.
Quantum advantage might be achievable if the time a quantum computer takes to solve a certain problem grows at a slower rate as the problem size increases than the time a classical computer takes to do the same. In this case, problem instances that are much larger than the crossover size might be good candidates for quantum solutions. If the crossover time is months or more, quantum computing offers no practical advantage, since larger problem instances take much longer to solve, and running a quantum computer for months or years to solve a single problem is not practical.

The major milestones of quantum hardware development. The first two, showing the use of quantum mechanics to perform a computation and having a quantum computer solve an artificial problem that a classical computer can not, have already been achieved. The next milestone, building a fault-tolerant quantum computer that can run long computations, is the current focus. The final goal is to build a quantum computer that can solve practical problems that a classical computer can not.

A quantum software stack serves as an interface between the quantum algorithms and the hardware running them. Its components mirror those of the classical software stack.

Quantum application software development workflow. From the developer perspective, it is similar to the classical software development workflow, with some differences to account for the nature of quantum computing. For example, using quantum simulators instead of the hardware makes testing quantum code on small problems faster and easier because it eliminates the need to account for noise.

Summary
- Quantum computing will not speed up arbitrary classical computing tasks. Instead, it will let us solve some highly specialized problems such as quantum systems simulations that are too complicated for classical (super)computers.
- To yield practical advantage over the best classical algorithms for the same problem, quantum algorithms have to offer significant speedups, featuring at least exponentially better asymptotic complexity compared to that of the classical algorithms.
- Quantum hardware is in its “noisy intermediate-scale” era, with devices too large to be simulated classically but too small and too noisy to solve practical problems.
- The software stack plays a critical role for quantum computers, enabling the execution of algorithms on hardware and accessing the quantum systems via the cloud, accelerating algorithms research and driving the requirements for hardware design.
- Governments and companies worldwide are paying increasing attention to quantum computing and investing in its continued development.
- Learning quantum computing can provide you with a lot of opportunities to contribute to this domain and, like learning any new computing paradigm, make you a better thinker!