Lost? Confused? Don't know where to start with all this quantum computing stuff? Don't panic!
This post is intended to function as a start page/guide to help you navigate your way through the various quantum computing and Q# posts hosted here on the Faculty blog (https://aka.ms/faculty).
Q# is Microsoft’s new quantum-focused language, designed to bring the full developer experience to the quantum sphere. Q# comes with all the features you’d expect from a fully-fledged language (functions, loops, variables…), along with a cross-platform developer environment in Visual Studio/VS Code and even a quantum simulator! See this announcement for details on the latest release, bringing support for Mac and Linux to the QDK 😊
Q# and the QDK are fully platform agnostic – that is to say, they are designed to work with any physical implementation of a quantum computer, not restricted to Microsoft’s topological qubit approach. Quantum programs are orchestrated and run using a classical computer (the driver), leveraging the quantum system (be it simulated or physical) when required to speed things up/do funky quantum stuff – much in the same way that we currently use GPUs to speed up the solution of machine learning problems.
Watch this space for a detailed look at what topological qubits are exactly and why we should care – blog post coming soon 😊 Further information on Q#, topological qubits and the QDK can be found here.
This blog is written by Anita Ramanan and Frances Tibble, both software engineers at Microsoft. The blog is split into two complementary tracks – Frances' posts are focused on getting you up and running quickly with Q# and the QDK, whereas Anita's posts aim to provide deeper background on concepts in quantum computing, plus how these translate to Q#.
The Story So Far
(roughly in suggested reading order)
- A Beginner’s Guide to Quantum Computing and Q# (Frances)
- Introduction to Quantum Computing (Anita)
- Quantum Gates and Circuits: The Crash Course (Anita)
- Quantum Computing Primer: Pure and Mixed States (Anita)
- Quantum Teleportation in Q# (Frances)
- Quantum Computing: Quick Reference Guide (Anita)
The Road Ahead
Like anything quantum, there’s a degree of uncertainty here – future posts may change!
- Getting to Grips with the Quantum Fourier Transform (Anita)
- An Aside: Some Important Science Bits (Anita)
- Gates & the associated maths
- Matrix transformations
- Quantum Computing in the Real World (several posts) (Anita)
- Measurement (Frances)
- Simple Algorithms (Frances)
- Quantum Algorithms – one post per algorithm (Frances and Anita)
- Database Search (Frances)
- Integer Factorisation (Frances)
- To be continued…
- Characterisation and Testing Samples (Frances)
- Hamiltonian Simulation Samples (Frances)
Awesome Sources of Information
Microsoft Quantum Resources
- Microsoft Quantum
- Microsoft Quantum GitHub
- Microsoft Quantum samples on GitHub
- Microsoft Quantum Development Kit
- Microsoft Quantum Blog
- Stay up to date with the Microsoft Quantum newsletter
- Microsoft Quantum on Twitter
- Microsoft Quantum on Facebook
- Achieving Practical Quantum Computing
- Great intro to quantum computing and its potential applications by Microsoft Quantum Architect Dave Wecker.
- Microsoft post-quantum cryptography research
- Quantum Computing for Computer Scientists by Andrew Helwer on YouTube
- This talk discards hand-wavy pop-science metaphors and answers a simple question: from a computer science perspective, how can a quantum computer outperform a classical computer?
- Leonard Susskind’s excellent series of introductory lectures on quantum mechanics (link to the first lecture on YouTube)
- Scott Aaronson's lecture series (and book): Quantum Computing Since Democritus
- A bit on the older side but approaches the basic principles from a refreshingly different perspective. Highly recommended.
- Neilsen & Chuang’s book: Quantum Computation and Quantum Information
- Feynman's famous 1982 paper exploring the concept of quantum computing
- Quantized Majorana Conductance - March 2018
- Terry Rudolph's book (and YouTube lectures): Q is for Quantum
Other Online Resources
- Reddit AMA by Quantum Jim
- Some interesting Q&A!
- Join the London Quantum Computing Meetup!
- Try Q# online without installing the QDK
- Q# Coding Contest Summer 2018
More from Frances & Anita
- Getting started with Q#
- Self-guided tutorial content written by Frances and Anita, aimed at beginners
- Includes introduction to superposition, entanglement, teleportation, testing & simulation, as well as Q# language tips and information.
- TechDaysOnline recording
- Lots of beginner-level content
- Keynote from Dr. Julie Love, Director in the Microsoft Quantum team
- This is the raw recording following the live event - watch this space for the fully edited version!
- Recorded Quantum Computing & Q# 101 session from London Quantum Computing Meetup
About the Authors
|Anita (@whywontitbuild) graduated from University College London in 2014 with an MSci in Natural Sciences: Atomic and Particle Physics and Physical Chemistry (TL;DR: Quantum Mechanics).
Since then, she has been working at Microsoft and is now a Software Engineer focusing on the Internet of Things (particularly as it relates to healthcare), Xamarin, Power BI and now Quantum Computing.
|Frances (@frances_tibble) graduated with a degree in Computing from Imperial College London having completed a final year project with Microsoft Research.
Frances now works as a Software Engineer for Microsoft focusing on Machine Learning and High Scale Data… and as of these blog posts, Quantum Computing.