What Programming Do You Need for Quantum Computing?
Python is effectively the standard language for quantum computing, and you will want a quantum SDK such as Qiskit, Cirq or PennyLane. But the real learning curve is not syntax. It is thinking in circuits, and reading probabilistic results instead of one deterministic return value.
This article covers which language and library to pick, the mental shift that trips people up, what else is worth knowing, and how to start without installing anything.
Which language and which SDK
Most quantum software tooling is Python-based, so any Python fluency you already have transfers directly. Three SDKs cover most needs:
- Qiskit (IBM) is the most widely used. It spans everything from low-level control to high-level algorithms and has a large community, which makes it a sensible first choice.
- Cirq (Google) gives fine-grained control over circuits and is popular for research on today's noisy devices.
- PennyLane (Xanadu) is built for quantum machine learning, with automatic differentiation and integration with PyTorch and TensorFlow.
Under the hood, simulators and compilers are often written in C++ or Rust for speed, but you do not need those to start.
The mental shift
The harder adjustment is a new mental model. A quantum program is usually a circuit, a sequence of gates applied to qubits, and its output is probabilistic. You run it many times and read a distribution of results. That shift trips people up more than any syntax does. Here is a complete two-qubit example in Qiskit:
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2)
qc.h(0) # put qubit 0 into superposition
qc.cx(0, 1) # entangle qubit 1 with it
qc.measure([0, 1], [0, 1])
Run this many times and you will see 00 and 11 about half the time each, and almost never 01 or 10. There is no single "return value" to print, and you cannot copy or peek at a qubit halfway through on real hardware, because measuring changes it. Learning to think that way is the actual work.
Skills that help beyond Python
- NumPy and linear algebra in code. Checking a gate as a matrix in a few lines builds intuition fast.
- Statistics. Interpreting shot counts and error bars is part of every experiment.
- Notebooks and plotting. Most tutorials and cloud platforms use Jupyter notebooks.
- For hardware-adjacent roles: C++ or FPGA experience is valued for control systems.
Running on real hardware
Once a circuit works on a simulator, you can send it to a real device. IBM's free Open Plan gives up to 10 minutes of quantum hardware time per rolling 28 days, which is plenty for small experiments. Expect two new steps: transpilation, where your circuit is rewritten to fit the device's gates and connectivity, and noise, where results are close to the ideal answer but not exact.
Start without installing anything
You do not need to install anything to start building the intuition. Working with circuits visually, before touching an SDK's syntax, is an easier on-ramp than starting from code. Build the circuit above in the Circuit Builder, then reproduce it in Python. The math you need is the other half of the picture, and the software engineer pathway puts both into a first-month plan.
Quantum States is Quantum Discord's free introductory course. It builds the circuit and measurement intuition that makes any SDK easier, with a live workshop and interactive simulations.
Explore the Quantum States courseTry real code in the Coding Lab after you have built circuits visually.