Microsoft has introduced a new preview of the Azure Quantum Development Kit (QDK), showcasing significant improvements in performance and accessibility. The updated QDK is primarily written in Rust, enabling it to easily target native binaries for various platforms and run in browsers through WebAssembly.
The Azure Quantum Development Kit (QDK) is an open-source set of tools that enables developers to build quantum computing applications using the Azure Quantum service.
Benefits of the Rust-based Quantum Development Kit
Microsoft says that the shift to Rust, along with Python and JavaScript for specific tasks, has resulted in a kit that is “100x smaller, 100x faster,” and compatible with Windows, Mac, Linux, and web browsers. The new QDK aims to provide a simplified and delightful user experience, from installation to coding, and troubleshooting to submitting jobs to quantum computers.
Addressing Developer Needs and Platform Support
The overhaul addresses several challenges faced by developers using the previous QDK. Many quantum developers, not originally from a .NET background, found the exposure to the .NET ecosystem and its associated learning curve to be a hurdle. The new QDK minimizes platform-specific dependencies, thereby solving compatibility issues with evolving platforms like Apple Silicon and Windows on ARM64. Additionally, the kit's enhanced performance means that programs that previously took minutes to compile can now do so in milliseconds. The new QDK also supports VS Code for the Web, allowing developers to run the IDE in a browser without any local installation, enhancing accessibility and user experience.
Engineering Velocity and Reliability
Microsoft emphasizes the importance of engineering velocity and reliability in the development of the new QDK. The previous QDK spanned multiple repositories, languages, runtimes, and distribution channels, which slowed down the development process and increased maintenance efforts. The new QDK consolidates all code into one repository, simplifying the build infrastructure and reducing build times from hours to approximately 10 minutes on every commit to the main branch. This streamlined approach aims to ensure the product remains focused, intuitive, and less complex for further development.