Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

arXiv:2010.07729 · ACM Technical Symposium on Computer Science Education (SIGCSE)

Teaching Quantum Computing through a Practical Software-driven Approach

Mariia Mykhailova, Krysta M. Svore

Published Feb 25, 2020• 45 citations
arXivHTMLPDF

Abstract

Quantum computing harnesses quantum laws of nature to enable new types of algorithms, not efficiently possible on traditional computers, that may lead to breakthroughs in crucial areas like materials science and chemistry. There is rapidly growing demand for a quantum workforce educated in the basics of quantum computing, in particular in quantum programming. However, there are few offerings for non-specialists and little information on best practices for training computer science and engineering students. In this report we describe our experience teaching an undergraduate course on quantum computing using a practical, software-driven approach. We centered our course around teaching quantum algorithms through hands-on programming, reducing the significance of traditional written assignments and relying instead on self-paced programming exercises ("Quantum Katas''), a variety of programming assignments, and a final project. We observed that the programming sections of the course helped students internalize theoretical material presented during the lectures. In the survey results, students indicated that the programming exercises and the final project contributed the most to their learning process. We describe the motivation for centering the course around quantum programming, discuss major artifacts used in this course, and present our lessons learned and best practices for a future improved course offering. We hope that our experience will help guide instructors who want to adopt a practical approach to teaching quantum computing and will enable more undergraduate programs to offer quantum programming as an elective.

DOI
10.1145/3328778.3366952

Related papers

Teaching Quantum Computing Using Microsoft Quantum Development Kit and Azure Quantum

Mariia Mykhailova

This report describes my experience teaching a graduate-level quantum computing course at Northeastern University in the academic year 2022–23. The course takes a practical, software-driven approach to the course, teaching basic quantum concepts and algorithms through hands-on programming assignments and a software-focused final project. The course guides learners through all stages of the quantum software development process, from solving quantum computing problems and implementing solutions to debugging quantum programs, optimizing the code, and running the code on quantum hardware. This report offers instructors who want to adopt a similar practical approach to teaching quantum computing a comprehensive guide to getting started.

arXiv:2311.12960•IEEE International Conference on Quantum Computing and Engineering (QCE)•Sep 17, 2023•10 citations

Investigating Students' Strengths and Difficulties in Quantum Computing

Tunde Kushimo, Beth Ann Thacker

Quantum Computing is an exciting field that draws from information theory, computer science, mathematics, and quantum physics to process information in fundamentally new ways. There is an ongoing race to develop practical/reliable quantum computers and increase the quantum workforce. This needs to be accompanied by the development of quantum computing programs, courses and curricula coupled with the development and adoption of evidence-based materials and pedagogies to support the education of the next generation of quantum information scientists and workforce. At our university, we introduced an introductory course in Quantum Computing to undergraduate students and conducted a case study to investigate the strengths and difficulties of these students in quantum computing after taking the introductory course. Our goal is to contribute to the improvement of quantum computing education while understanding the topics that the students find easy to comprehend and topics that are difficult to comprehend. We conducted a series of interviews to identify these strengths and difficulties. This investigation is essential to help train the next generation of quantum scientists and researchers because it gives information and direction to quantum computing education, and it also helps us to develop research-based teaching and learning materials. We report on the results of these interviews and our initial work on the development of evidence-based materials for teaching an introductory course in Quantum Computing.

arXiv:2212.03726•IEEE International Conference on Quantum Computing and Engineering (QCE)•Sep 17, 2023•13 citations

Introducing Quantum Computing to Engineer and Computer Science Students Using Active Teaching-Learning Methodologies

Lucas Borges, Pâmela Thays Lins Bezerra, Erico S. Teixeira +1 more

Investments in quantum technologies, which are based on the effects of quantum mechanics, have escalated in recent years, with big players such as IBM, Google, and Microsoft engaging in the race for quantum supremacy. Some potential benefits of this cutting-edge technology include developing new drugs and materials through accurate molecule simulation, establishing more secure and reliable communication channels, and finding faster solutions for complex optimization problems. As quantum technologies evolve, however, the demand for new software, interfaces, and end-to-end systems to properly program and explore the advantages of quantum mechanics becomes paramount. This requires engineers, especially software engineers, and computer scientists, to have multidisciplinary knowledge and skills. Unfortunately, introductory quantum computing and technologies courses are mostly available in physics, and most engineering and computer science courses do not have modules on quantum physics, leading to a talent gap in the current job market. Therefore, this paper proposes a short teaching plan for introducing quantum computing to students with a more technology-based background, such as computer science and engineering students. This plan uses active learning methodologies, such as Challege-Based Teaching, to better engage these students and contextualize the many applications of this new technology. The initial teaching plan consists of a 3-hour seminar introducing the main quantum mechanics concepts and the technology applications, a 3-hour introduction to the math fundamentals and quantum logic gates, and a 3-hour handson workshop using the IBM Qiskit platform. Two versions of this plan were executed in two different moments: (1) a one-day event open to undergraduate students from different institutions and backgrounds, and (2) a 3-day internal training course for computer science and information technology management undergraduate students from our higher education institution. Data was collected during both events through online forms and interviews to measure the learning outcomes of the produced material and better understand the public interest in the field. The results identified key elements for better teaching quantum computing for computer scientists and engineers, providing guidelines for developing a more extensive and term-long teaching plan for undergraduate technology courses.

IEEE Global Engineering Education Conference (EDUCON)•Apr 22, 2025•2 citations

A Course on the Introduction to Quantum Software Engineering: Experience Report

Andriy Miranskyy

Quantum computing is increasingly practised through programming, yet most educational offerings emphasize algorithmic or framework-level use rather than software engineering concerns such as testing, abstraction, tooling, and lifecycle management. This paper reports on the design and first offering of a cross-listed undergraduate--graduate course that frames quantum computing through a software engineering lens, focusing on early-stage competence relevant to software engineering practice. The course integrates foundational quantum concepts with software engineering perspectives, emphasizing executable artifacts, empirical reasoning, and trade-offs arising from probabilistic behaviour, noise, and evolving toolchains. Evidence is drawn from instructor observations, supplemented by anonymous student feedback, a background survey, and inspection of student work. Instructor observations and inspected work artifacts indicated that students with little prior exposure could engage with quantum software engineering topics after foundational quantum concepts had been introduced using executable artifacts. The contribution is the systematic software engineering framing and sequencing of the course, its mixed-level assessment design, and practice-grounded lessons from an actual offering; the report does not estimate causal learning effects.

cs.SECross-listedarXiv:2602.07589•Feb 10, 2026•0 citations

Teaching quantum computing in college level computer science programs: work in progress

Pradip Peter Dey, Bhaskar Raj Sinha, M. H. S. Amin

As quantum computers are becoming available for experiments, their enormous potential is being recognized among college communities. The goal of introducing quantum computing in college level computer science programs is becoming attractive. However, this goal comes with opportunities and challenges. of the challenges is that quantum computing appears to require substantial background in physics as well as in computer science. However, it is hard to convince students to major in these two fields. Computer Science students with a minor in physics can also be considered. Several alternative curriculum structures are possible. A non-consecutive two-course framework is proposed here. A course on Introduction to Quantum Computing may be offered to sophomore level students. This introductory course may teach fundamental ideas about quantum computing with basic concepts behind BQP (Bounded Error Quantum Polynomial) and related topics. This introductory course may be followed up by some physics courses (on related topics such as quantum mechanics) and some computer science courses. Then, a senior level course on Advanced Quantum Computing may be offered that may include some well-known algorithms (such as Shor's Algorithm for Quantum Factorization and Grover's Algorithm for Quantum Search) and their implementation and practices on some simulators (such as QuIDE from http://www.quide.eu/) or some prototype quantum processors (such as IBM's prototype quantum processors). For advanced level courses, some course materials are available from various sources (such as MIT OpenCourseWare). The greater challenge would be in teaching the introductory course mentioned earlier that motivates students towards investing time and efforts in learning quantum computing and related physics, math and computational topics. The challenges of teaching the introductory course should not be underestimated. Some flexible strategies can be suggested for this course so that the biggest challenges can be overcome. Some initial assessments of the students may help adjusting the introduction strategies with student's preparation. What is recommended is that the instructor should be able to adjust the coverage of topics, rigor and depth of treatment. That is, the introductory course should not be rigidly defined. It should be recognized that the main emphasis of the introductory course is actually instilling motivations and curiosity in student's mind about potentials of quantum computing through adaptive teaching of some selected topics where traditional digital computers do not provide tractable solutions. Ideally a balance could be achieved among aspects of depth of treatment, rigor, inspiration, motivation and coverage of topics. Students should be able to realize that the emerging quantum computing technology would be able to provide elegant solutions to some of the classical intractable problems combining ideas from physics, math and computer science in an innovative way. One size fits all is not a good approach and discussion of issues may help us face the challenges better by pragmatically considering a range of possible alternatives. Resources that are currently available may also need to be reviewed for the purpose of introducing quantum computing adequately.

Journal of computing sciences in colleges•Oct 1, 2018•0 citations

Experience in teaching quantum computing with hands-on programming labs

Federico Galetto, Hiram H. López, Mehdi Rahmati +2 more

As the field of quantum computing rapidly advances, there is a growing demand for skilled professionals adept in quantum computing and programming. Recognizing this need, in this paper, we share our experiences teaching an introductory-level quantum computing course to students at Cleveland State University (CSU). The course integrates dedicated hands-on programming labs, allowing students to verify their experimental results with corresponding examples from the textbook. These labs cover a diverse range of topics, including fundamental elements such as quantum gates and circuits, quantum key distribution protocols, and quantum algorithms. As educators, our goal is to share teaching insights and resources with fellow instructors in the field. This article elucidates the rationale behind the design of each experiment, providing a deeper understanding of quantum computing.

The Journal of Supercomputing•Mar 15, 2024•4 citations
Quantum computing harnesses quantum laws of nature to enable new types of algorithms, not efficiently possible on traditional computers, that may lead to breakthroughs in crucial areas like materials science and chemistry. There is rapidly growing demand for a quantum workforce educated in the basics of quantum computing, in particular in quantum programming. However, there are few offerings for non-specialists and little information on best practices for training computer science and engineering students. In this report we describe our experience teaching an undergraduate course on quantum computing using a practical, software-driven approach. We centered our course around teaching quantum algorithms through hands-on programming, reducing the significance of traditional written assignments and relying instead on self-paced programming exercises ("Quantum Katas''), a variety of programming assignments, and a final project. We observed that the programming sections of the course helped students internalize theoretical material presented during the lectures. In the survey results, students indicated that the programming exercises and the final project contributed the most to their learning process. We describe the motivation for centering the course around quantum programming, discuss major artifacts used in this course, and present our lessons learned and best practices for a future improved course offering. We hope that our experience will help guide instructors who want to adopt a practical approach to teaching quantum computing and will enable more undergraduate programs to offer quantum programming as an elective.
This report describes my experience teaching a graduate-level quantum computing course at Northeastern University in the academic year 2022–23. The course takes a practical, software-driven approach to the course, teaching basic quantum concepts and algorithms through hands-on programming assignments and a software-focused final project. The course guides learners through all stages of the quantum software development process, from solving quantum computing problems and implementing solutions to debugging quantum programs, optimizing the code, and running the code on quantum hardware. This report offers instructors who want to adopt a similar practical approach to teaching quantum computing a comprehensive guide to getting started.
Quantum Computing is an exciting field that draws from information theory, computer science, mathematics, and quantum physics to process information in fundamentally new ways. There is an ongoing race to develop practical/reliable quantum computers and increase the quantum workforce. This needs to be accompanied by the development of quantum computing programs, courses and curricula coupled with the development and adoption of evidence-based materials and pedagogies to support the education of the next generation of quantum information scientists and workforce. At our university, we introduced an introductory course in Quantum Computing to undergraduate students and conducted a case study to investigate the strengths and difficulties of these students in quantum computing after taking the introductory course. Our goal is to contribute to the improvement of quantum computing education while understanding the topics that the students find easy to comprehend and topics that are difficult to comprehend. We conducted a series of interviews to identify these strengths and difficulties. This investigation is essential to help train the next generation of quantum scientists and researchers because it gives information and direction to quantum computing education, and it also helps us to develop research-based teaching and learning materials. We report on the results of these interviews and our initial work on the development of evidence-based materials for teaching an introductory course in Quantum Computing.
Investments in quantum technologies, which are based on the effects of quantum mechanics, have escalated in recent years, with big players such as IBM, Google, and Microsoft engaging in the race for quantum supremacy. Some potential benefits of this cutting-edge technology include developing new drugs and materials through accurate molecule simulation, establishing more secure and reliable communication channels, and finding faster solutions for complex optimization problems. As quantum technologies evolve, however, the demand for new software, interfaces, and end-to-end systems to properly program and explore the advantages of quantum mechanics becomes paramount. This requires engineers, especially software engineers, and computer scientists, to have multidisciplinary knowledge and skills. Unfortunately, introductory quantum computing and technologies courses are mostly available in physics, and most engineering and computer science courses do not have modules on quantum physics, leading to a talent gap in the current job market. Therefore, this paper proposes a short teaching plan for introducing quantum computing to students with a more technology-based background, such as computer science and engineering students. This plan uses active learning methodologies, such as Challege-Based Teaching, to better engage these students and contextualize the many applications of this new technology. The initial teaching plan consists of a 3-hour seminar introducing the main quantum mechanics concepts and the technology applications, a 3-hour introduction to the math fundamentals and quantum logic gates, and a 3-hour handson workshop using the IBM Qiskit platform. Two versions of this plan were executed in two different moments: (1) a one-day event open to undergraduate students from different institutions and backgrounds, and (2) a 3-day internal training course for computer science and information technology management undergraduate students from our higher education institution. Data was collected during both events through online forms and interviews to measure the learning outcomes of the produced material and better understand the public interest in the field. The results identified key elements for better teaching quantum computing for computer scientists and engineers, providing guidelines for developing a more extensive and term-long teaching plan for undergraduate technology courses.
Quantum computing is increasingly practised through programming, yet most educational offerings emphasize algorithmic or framework-level use rather than software engineering concerns such as testing, abstraction, tooling, and lifecycle management. This paper reports on the design and first offering of a cross-listed undergraduate--graduate course that frames quantum computing through a software engineering lens, focusing on early-stage competence relevant to software engineering practice. The course integrates foundational quantum concepts with software engineering perspectives, emphasizing executable artifacts, empirical reasoning, and trade-offs arising from probabilistic behaviour, noise, and evolving toolchains. Evidence is drawn from instructor observations, supplemented by anonymous student feedback, a background survey, and inspection of student work. Instructor observations and inspected work artifacts indicated that students with little prior exposure could engage with quantum software engineering topics after foundational quantum concepts had been introduced using executable artifacts. The contribution is the systematic software engineering framing and sequencing of the course, its mixed-level assessment design, and practice-grounded lessons from an actual offering; the report does not estimate causal learning effects.
As quantum computers are becoming available for experiments, their enormous potential is being recognized among college communities. The goal of introducing quantum computing in college level computer science programs is becoming attractive. However, this goal comes with opportunities and challenges. of the challenges is that quantum computing appears to require substantial background in physics as well as in computer science. However, it is hard to convince students to major in these two fields. Computer Science students with a minor in physics can also be considered. Several alternative curriculum structures are possible. A non-consecutive two-course framework is proposed here. A course on Introduction to Quantum Computing may be offered to sophomore level students. This introductory course may teach fundamental ideas about quantum computing with basic concepts behind BQP (Bounded Error Quantum Polynomial) and related topics. This introductory course may be followed up by some physics courses (on related topics such as quantum mechanics) and some computer science courses. Then, a senior level course on Advanced Quantum Computing may be offered that may include some well-known algorithms (such as Shor's Algorithm for Quantum Factorization and Grover's Algorithm for Quantum Search) and their implementation and practices on some simulators (such as QuIDE from http://www.quide.eu/) or some prototype quantum processors (such as IBM's prototype quantum processors). For advanced level courses, some course materials are available from various sources (such as MIT OpenCourseWare). The greater challenge would be in teaching the introductory course mentioned earlier that motivates students towards investing time and efforts in learning quantum computing and related physics, math and computational topics. The challenges of teaching the introductory course should not be underestimated. Some flexible strategies can be suggested for this course so that the biggest challenges can be overcome. Some initial assessments of the students may help adjusting the introduction strategies with student's preparation. What is recommended is that the instructor should be able to adjust the coverage of topics, rigor and depth of treatment. That is, the introductory course should not be rigidly defined. It should be recognized that the main emphasis of the introductory course is actually instilling motivations and curiosity in student's mind about potentials of quantum computing through adaptive teaching of some selected topics where traditional digital computers do not provide tractable solutions. Ideally a balance could be achieved among aspects of depth of treatment, rigor, inspiration, motivation and coverage of topics. Students should be able to realize that the emerging quantum computing technology would be able to provide elegant solutions to some of the classical intractable problems combining ideas from physics, math and computer science in an innovative way. One size fits all is not a good approach and discussion of issues may help us face the challenges better by pragmatically considering a range of possible alternatives. Resources that are currently available may also need to be reviewed for the purpose of introducing quantum computing adequately.
As the field of quantum computing rapidly advances, there is a growing demand for skilled professionals adept in quantum computing and programming. Recognizing this need, in this paper, we share our experiences teaching an introductory-level quantum computing course to students at Cleveland State University (CSU). The course integrates dedicated hands-on programming labs, allowing students to verify their experimental results with corresponding examples from the textbook. These labs cover a diverse range of topics, including fundamental elements such as quantum gates and circuits, quantum key distribution protocols, and quantum algorithms. As educators, our goal is to share teaching insights and resources with fellow instructors in the field. This article elucidates the rationale behind the design of each experiment, providing a deeper understanding of quantum computing.