Replies to some questions that I am frequently asked.

The short answer is yes. Quantum computers have performed meaningful computations, but not yet ones that give useful advantage, i.e. ones where using classical computation is outperformed. Some examples are calculating the ground state energy of molecules [1] [2] [3], MAXCUT optimization [4], or classification tasks [5] [6]. While these do give accurate answers for non-trival problems by running on real quantum hardware, the instances sizes are still very small.

When asking about milestones for quantum computer performance, clear terminology is important. I wrote a short, useful taxonomy in this post. Recently, an example of quantum supremacy was demonstrated, which means that some computation was performed that would be intractable to perform classically and that - in the computational complexity sense - we believe it to be hard for a classical computer and easy for a quantum one. I'd hesitate to say that this was a useful calcuation, though it may have application to generating certifiable random numbers. I co-wrote a short blog post about what the supremacy calculation does that covers the main idea using some short Python snippets.

When it comes to performing a valuable computation, we recently released some work on the required resources for derivative pricing [7] and there are there are other examples in chemistry [8] [9] and prime factorization [10]. Note that there is much left to discover in applying quantum computers.

Current estimates indicate that we need scaled up, error corrected quantum computers. We need numbers of qubits and error rates that are orders of magnitude better than those available today. For more details, I recommend this DEFCON talk from Craig Gidney. It discusses rough cost estimates for factoring and is accessible to general programmers.

I'd recommend this review "Quantum computing at the quantum advantage threshold: a down-to-business review.".

Check out this excellent accessible post from Chris Ferrie.

There's been more then a few surprising creative uses already. There are folks looking at generating music [1] [2] [3]. There is also a growing field of quantum gaming. James Wooten has an excellent summary history of quantum computer games (with mention of a mobile game that Jo and I made at the one of the worlds first quantum computer hackathons). There's also a board game, mobile game, and quantum chess.

There's lots of ways! Quantum technology is a new field and growing fast. Fortunately, the amount of available educational material is growing rapidly. You can find many links to educational materials here. A comprehensive book list for a self study "quantum native" course is available here. There are also great open source textbooks/codebooks for quantum programming that are a great way to learn interactively.

- Qiskit Textbook
- Pennylane Codebook
- Learn Quantum Computing with Python and Q# textbook [actual physical textbook]

*High school*: Check out these resources from Unitary Fund. My advice is to work on projects in addition to taking courses. That way you develop a portfolio that shows your developing capabilities. Open source software projects are great places to start since they have a low barrier to entry. See if you can close some issues on open source projects.*Undergrad [Quantum Engineering]*: Look for internships/research labs where you can be a builder and not just a course taker. See above for open open source project suggestions. It is no longer the case that you have to get a PhD in order to contribute to the cutting edge in quantum tech. Particularly the engineering disciplines of quantum software engineering, control systems engineering, electrical and mech eng, don't require a PhD. Sometimes you'll get to the cutting edge faster by joining a startup or industrial lab rather than an academic one. A list of companies in the space is hosted here.*Undergrad [Research]*: That said, there are some areas of quantum technology that are more research than engineering. They include developing new quantum algorithms, error-correction schemes, or qubit/gate types. In these fields, a PhD can be very helpful. A PhD teaches you how to do independent original research whose outputs are publications. In the open research areas of quantum computing, these skills are critical and a PhD is often the best way to get them. A PhD does come with high opportunity costs in time and money. If you are unsure, then taking a couple of years to do engineering in industry around quantum tech can give you a better sense of whether you really need research skills. It will also help you determine what group you'd like to work with in a PhD. Here are a few example undergraduate programs that offer research experience: [IQC Waterloo] [LANL] [UMD]*Incoming PhD*: When considering where to do a PhD, candidates often consider first the school, then the department, and then the advisor. This is precisely the opposite order of importance. Your PhD supervisor does not only teach you skills, but they also act as your career guide and primary mentor for years. It is worth taking the time to determine your supervisor as an individual if you can.*Current PhD*: Many companies and research labs offer internships during the summer. These are a great way to expand into new subfields and to experience different working cultures.**If you've a background in algorithms and are interested in quantum applications in finance then let me know. My group at Goldman takes PhD interns. You can reach me @wjzeng on twitter.**

For a general course on quantum algorithms I'd recommend these lecture notes from Ronald de Wolf and these recent lecture notes on quantum algorithms for scientific computing by Lin Lin. For specifically noisy intermediate scale quantum computing algorithms, which are typically more heuristic and less about computational complexity, there is a recent review article.