A collection of self-paced tutorials and programming exercises for learning quantum computing and Q#.
Quantum Katas is a collection of tutorials and programming exercises for learning quantum computing and the Q# programming language. It provides a structured, hands-on approach to mastering quantum concepts through incremental coding tasks, each validated by a unit testing framework. The project covers topics from basic qubits and gates to advanced algorithms like Grover's search and quantum Fourier transform.
Developers, students, and researchers who want to learn quantum computing and Q# programming through practical exercises. It's ideal for those who prefer a structured, code-first approach to learning complex quantum concepts.
Quantum Katas offers a unique, test-driven learning experience with comprehensive coverage of quantum computing topics. Unlike generic tutorials, it provides immediate feedback through integrated unit tests and supports multiple learning formats (Jupyter Notebooks and Q# projects), making it one of the most practical resources for hands-on quantum programming.
Tutorials and programming exercises for learning Q# and quantum computing
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Offers a clear progression from fundamental concepts like complex arithmetic to advanced algorithms such as Grover's search, with each kata building incrementally on previous tasks.
Each task is covered by a unit test that validates solutions upon running, providing instant correctness checks—a rare feature in quantum programming tutorials.
Available as Jupyter Notebooks for interactive exploration and as Q# projects for traditional IDE use, catering to different development preferences and environments.
Includes links to Q# documentation, hints, and detailed explanations for each task, reducing the need for external resources and aiding self-paced study.
The repository is marked as deprecated in favor of a new online Azure Quantum experience, meaning no future updates, potential breaking changes with newer QDK versions, and limited community support.
Requires installing the Quantum Development Kit, .NET 6.0 SDK, and additional Python packages for some tutorials, creating a significant barrier to entry compared to simpler, web-based alternatives.
Running katas online via mybinder.org suffers from reduced capacity and slow startup times, as noted in the README, which can disrupt the learning flow and require multiple attempts.