logoalt Hacker News

goatking12/09/202412 repliesview on HN

How can I, a regular software engineer, learn about quantum computing without having to learn quantum theory?

> Worth spending a little time doing some long tail strategizing I’d say

any tips for starters?


Replies

billti12/09/2024

If you're a software engineer, then the Quantum Katas might fit your learning style. The exercises use Q#, which is quantum specific programming language.

https://quantum.microsoft.com/en-us/tools/quantum-katas

The first few lessons do cover complex numbers and linear algebra, so skip ahead if you want to get straight to the 'quantum' coding, but there's really no escaping the math if you really want to learn quantum.

Disclaimer: I work in the Azure Quantum team on our Quantum Development Kit (https://github.com/microsoft/qsharp) - including Q#, the Katas, and our VS Code extension. Happy to answer any other questions on it.

show 1 reply
potsandpans12/09/2024

Start here: https://youtu.be/F_Riqjdh2oM

You don't need to know quantum theory necessarily, but you will need to know some maths. Specifically linear algebra.

There are a few youtube courses on linear algebra

For a casual set of video: - https://youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFit...

For a more formal approach:

- https://youtube.com/playlist?list=PL49CF3715CB9EF31D

And the corresponding open courseware

- https://ocw.mit.edu/courses/18-06-linear-algebra-spring-2010...

Linear algebra done right comes highly recommended

- https://linear.axler.net/

show 2 replies
kvathupo12/09/2024

The bar for entry is surprisingly low, you just need to brush up on intro abstract algebra. I recommend the following:

1. Kaye, LaFlamme, and Mosca - An Introduction to Quantum Computing

2. Nielsen and Chuang - Quantum Computation and Quantum Information (The Standard reference source)

3. Andrew Childs's notes here [1]. Closest to the state-of-the-art, at least circa ~3 years ago.

[1] - https://www.cs.umd.edu/~amchilds/qa/

currymj12/09/2024

specifically avoid resources written by and for physicists.

the model of quantum mechanics, if you can afford to ignore any real-world physical system and just deal with abstract |0>, |1> qubits, is relatively easy. (this is really funny given how incredibly difficult actual quantum physics can be.)

you have to learn basic linear algebra with complex numbers (can safely ignore anything really gnarly).

then you learn how to express Boolean circuits in terms of different matrix multiplications, to capture classical computation in this model. This should be pretty easy if you have a software engineer's grasp of Boolean logic.

Then you can learn basic ideas about entanglement, and a few of the weird quantum tricks that make algorithms like Shor and Grover search work. Shor's algorithm may be a little mathematically tough.

realistically you probably will never need to know how to program a quantum computer even if they become practical and successful. applications are powerful but very limited.

"What You Shouldn't Know About Quantum Computers" is a good non-mathematical read.

https://arxiv.org/abs/2405.15838

zitterbewegung12/09/2024

I recommend this book I studied it in Undergrad and I never took a quantum theory course. https://www.amazon.com/Quantum-Computing-Computer-Scientists...

show 1 reply
ajb12/09/2024

The simplest algorithm to understand is probably Grover's algorithm. Knowing that shows you how to get an sqrt(N) speedup on many classical algorithms. Then have a look at shor's algorithm which is the classic factoring algorithm.

I would not worry about hardware at first. But if you are interested and like physics, the simplest to understand are linear optical quantum circuits. These use components which may be familiar from high school or undergraduate physics. The catch is that the space (and component count) is exponential in the number of qubits, hence the need for more exotic designs.

cevi12/09/2024

I always recommend Watrous's lecture notes: https://cs.uwaterloo.ca/~watrous/QC-notes/QC-notes.pdf

I prefer his explanation to most other explanations because he starts, right away, with an analogy to ordinary probabilities. It's easy to understand how linear algebra is related to probability (a random combination of two outcomes is described by linearly combining them), so the fact that we represent random states by vectors is not surprising at all. His explanation of the Dirac bra-ket notation is also extremely well executed. My only quibble is that he doesn't introduce density matrices (which in my mind are the correct way to understand quantum states) until halfway through the notes.

jvanderbot12/09/2024

There is a course mentioned in the article, but I'm not clear on how "theory" it is.

https://coursera.org/learn/quantum-error-correction

sshb12/09/2024

Might be worth checking out: https://quantum.country/

tsimionescu12/10/2024

If you want to learn about what theoretical quantum computers might be able to do faster than classical ones and what they might not, you can try to read about quantum complexity theory, or some of what Scott Aaronson puts out on his blog if you don't want to go that in depth.

But the key thing to know about quantum computing is that it is all about the mathematical properties of quantum physics, such as the way complex probabilities work.

neoden12/09/2024

These lessons might be of help: https://youtu.be/3-c4xJa7Flk?si=krrpXMKh3X5ktrzT

carabiner12/09/2024

First learn about eigenvalues.