The Best Resources for Learning about Quantum Computing
I have been a hobbyist data-scientist since I took my first economics class and wanted to go deeper into the quantitative side of the discipline. Consequently, the potential for quantum computing to speed up the training of complex deep learning models has me more excited than I’ve ever been about a new technology. I think that understanding how quantum computers work and how to write quantum algorithms will become an incredibly important skill in a future society, so I decided to aggregate all the resources necessary to go from only a basic knowledge of computer science to being able to hold your own in a conversation about Quantum Computing.
I created sections for each type of resource, generally increasing in rigorousness of the material. I also created a GitHub repository for these resources that I hope can serve as a living document and grow as the field matures and a clearer pedagogy emerges.
Podcasts
These podcasts are very simple and high-level discussions about quantum computing. If you don’t have the faintest idea what quantum computing is or why it’s exciting, this is a great place to start.
This discussion between Chad Rigetti and Chris Dixon on the A16Z Podcast is a great primer on the basics of quantum computing and why this moment in history is particularly exciting.
This follow-up podcast, also from A16Z features a discussion between Jeff Cordova, Vijay Pande, and Sonal Chokshi takes the previous podcast a few layers deeper, discussing how this technology will actually roll out via cloud-hosted APIs and how quantum algorithms are different than classical ones.
This podcast from The Digital Life looks at the industry from a bit broader viewpoint, since they aren’t invested in any one particular company to my knowledge. They explain exactly what Google and D-Wave are working on and how it fits into the broader context of advancements in quantum computing.
Medium Articles:
Medium articles, like this one, are typically easy to parse and still tend to keep things light, this is a good way to go one layer deeper without getting too technical.
Angus Hervey wrote a great post for Future Crunch that disambiguates some of the hype in the media from what experts in the field like Scott Aaronson have been arguing.
The ever-optimistic futurist Peter Diamandis wrote a brief overview of the space last year that still provides a decent summary of what Quantum Computing is, what it’s applications are, and who’s working on it.
Another resource from A16z, this time from Frank Chen, provides a good primer on the subject.
Chad Rigetti is a major thought-leader in the space since he runs the leading Quantum Computing startup in Silicon Valley. This announcement was exciting because offering a full-stack programming and execution environment means that academics, researchers, hackers, and other interested parties have a new tool for exploring quantum computing.
Popular Articles / Media Coverage:
Searching Google / HackerNews often yields good results for top articles to get up to speed on a topic, here are some of the top articles about Quantum Computing.
- Scott Aaronson’s talk on Quantum Computing at the White House.
- Quantum computing for the determined by Michael Nielsen
- The CIA and Jeff Bezos Bet on Quantum Computing — MIT Technology Review
- Quantum Computing: A beginner’s notes and overview of IBM’s Quantum Experience — Kevin Casey
- Scott Aaronson on Google’s new quantum-computing paper — MIT News
- Is There Anything Beyond Quantum Computing? — Scott Aaronson
- The quantum computing era is coming… fast — John Naughton
- Quantum Computing Might Be Here Sooner Than You Think — Bloomberg
- Google’s New Chip Is a Stepping Stone to Quantum Computing Supremacy
Videos:
If video is your preferred medium for introducing yourself to new concepts, I highly recommend the following 3 videos. None are too technical.
Kurzgesagt is a cool group of creators, supported mostly by Patreon, that create animated videos to explain scientific concepts. I love projects like these because they do a great job of bringing science to the masses, which makes everyone better off.
This 30-minute mini-documentary provides an overview of quantum mechanics and computing and then features a great interview with Michelle Simmons, who is leading a team of researchers at The University of New South Wales’ Centre for Quantum Computation & Communication Technology.
Last but not least is Frank Chen’s excellent “Scouts Report” on quantum computing from the venture capital perspective.
Academic Papers:
Once you have a handle on the basics of quantum computing and why it’s important, diving into academic papers can be a good next step. Here are some of the most cited papers in the field:
Books:
Going one layer deeper, these three books are commonly used in courses on quantum computing and are recognized as key in the field.
This is a relatively light book that will teach you the basics of theoretical computer science, quantum mechanics and other topics in a fun and intuitive way, without going into much detail in terms of proofs, definitions and so on.
This is considered the standard textbook in the field. “You don’t really know quantum computation until you read this book from cover to cover.”
This book is roughly at an intermediate level between the two books above; but it’s recommended that the other two come first.
Online Resources:
Quantum Computing Playground
If you want to take a hacker approach, you can actually go and play with quantum algorithms directly in the quantum playground.
Quirk: Quantum Circuit Simulator
Shortly after publishing this post, Craig Gidney, emailed me to add this quantum circuit simulator to the list. I haven’t had too much time to play with it yet, but it looks like a great resource so .
Quantum Information Software Kit (QISKit) on GitHub
IBM Research has open sourced a Python software development kit (SDK) for working with OpenQASM and the IBM Q experience (QX). The basic concept of this quantum program is an array of quantum circuits. The program workflow consists of three stages: Build, Compile, and Run. Build allows you to make different quantum circuits that represent the problem you are solving; Compile allows you to rewrite them to run on different backends (simulators/real chips of different quantum volumes, sizes, fidelity, etc); and Run launches the jobs. After the jobs have been run, the data is collected. There are methods for putting this data together, depending on the program. This either gives you the answer you wanted or allows you to make a better program for the next instance. Another open-source software framework for quantum computing is ProjectQ, which can be found here: http://projectq.ch/
John Preskill’s Quantum Computation Lecture Notes
These lecture notes from CalTech professor John Preskill are a great deep dive into quantum computing. His site in general is a great trove of information I highly recommend digging through.
Quantum Mechanics and Quantum Computation Course at BerkeleyX
Although it’s not available at the time of this writing, Berkeley has an open courseware class, distributed through edX, that focuses on quantum computing. It’s a 9 week course in total and requires about 5 to 12 hours per week. The course covers the following:
- How to understand the fundamental principles of quantum mechanics using the concepts of qubits (or quantum bits) and quantum gates
- The basics of quantum algorithms such as the quantum fourier transform, period finding, Shor’s quantum algorithm for factoring integers, and the prospects for quantum algorithms for NP-complete problems
- The ideas behind the experimental realization of quantum computers
Adding to this list:
I hope to keep this updated with the latest resources as they become available. If you have something you would like to see added, please email me at john@johncoogan.com or comment on this point with a link. You can also submit pull requests against this GitHub repo: https://github.com/JohnCoogan/learnquantum
Thanks for reading! Feel free to hit the recommend button below if you found this piece interesting!
You can connect with me on Twitter: www.twitter.com/johncoogan