Learn About Quantum Computing with Microsoft’s Quantum Katas Project
Microsoft is making it easier to learn the basics of quantum computing programming with its new Quantum Katas Project, which created online tutorials to teach users about how to program using the related Q# programming language.
The open-source project, which is hosted on GitHub, is designed to let participants explore the elements and concepts of quantum computing. A code kata provides practice and repetition when learning to write software code.
“For those who want to explore quantum computing and learn the Q# programming language at their own pace, we have created the Quantum Katas – an open-source project containing a series of programming exercises that provide immediate feedback as you progress,” a Microsoft blog on the topic states. “Coding katas are great tools for learning a programming language. They rely on several simple learning principles: active learning, incremental complexity growth and feedback.”
Quantum computing is all about the idea of using the laws of quantum mechanics to process information in new ways, according to The University of Waterloo Institute for Quantum Computing. Instead of using long strings of “bits” that are zeroes or ones in traditional computers, a quantum computer uses quantum bits called qubits that encode the zero and the one into two different quantum states, according to the Institute. By using such methods, a quantum computer can process a vast number of calculations simultaneously.
“Certain difficult tasks that have long been thought impossible (or intractable) for classical computers will be achieved quickly and efficiently by a quantum computer,” says the Microsoft Quantum team.
The Microsoft Quantum Katas consist of self-paced tutorials that will help teach elements of quantum computing and Q# programming at the same time through task sequences that progress from easy to challenging.
“Each task requires you to fill in some code; the first task might require just one line, and the last one might require a sizable fragment of code,” the blog reads. “A testing framework validates your solutions, providing real-time feedback.”
There are four Quantum Katas thus far:
- Basic quantum computing gates: Tasks which focus on main single-qubit and multi-qubit gates used in quantum computing.
- Superposition: Tasks which focus on preparing a certain superposition state on one or multiple qubits.
- Measurements:. Tasks which focus on distinguishing quantum states using measurements.
- Deutsch-Jozsa algorithm: Tasks which focus on writing quantum oracles which implement classical functions, and the Bernstein–Vazirani and Deutsch–Jozsa algorithms.
To experiment with Quantum Katas, users must install the Quantum Development Kit, which is available for Windows 10, macOS and for Linux. Users can follow the install guide for the Quantum Development Kit to configure its installation.
Charles King, principal analyst with Pund-IT, told Channel Futures that the new Quantum Katas Project is a worthwhile pursuit for IT professionals and for channel partners.
“The IT industry has a well-earned reputation for innovation, but truly new and unique technologies are relatively rare,” said King. “So, when one does emerge, like quantum computing, building a commercial market around it requires getting developers and their communities up to speed. That’s basically what Microsoft’s quantum tutorials, or katas, are all about, as are similar efforts, like IBM’s Q Experience.”
King said he sees the open-source project as intriguing and entirely necessary.
“In the case of quantum computing, it isn’t simply a matter of teaching developers new programming languages but helping them to think about projects and problem solving in new ways.”
Microsoft’s decision to provide access to the #Q programming language and tutorials through GitHub isn’t surprising, he said, since Microsoft acquired the popular code repository in June.
“That also allows the company to continue burnishing its pro-open source image and keep people from reflecting too much on Microsoft’s less-friendly stance during the Steve Ballmer era.”