The entire basis of quantum computing is that some people are just too indecisive about decisions and so instead of the binary option of 0 or 1 given in computing the alternative is to have a value that can be 0, 1 or anything in between. A more advanced way of looking at it is to think of a sphere (called a Bloch sphere to be precise). A normal bit can only exist on the surface of the sphere at the very top and very bottom. The north and south poles of the sphere representing 0 and 1 . A quantum bit, called a qubit, can exist anywhere on the sphere and so has a some value between 0 and 1. Physical manifestations of qubits have to have two variables assigned to them. A photon can be vertically or horizontally polarised for instance. But these two options can superimpose each other and this is what gives the range of value the qubit requires. Nuclear spin works very well and can stay superimposed for days but due to a weak coupling constant the force exerted out of the system is weak and so the orientation of a single nuclei is hard to measure.
This problem seems to have been partly overcome recently however. Scientists have been able to strongly couple photon and atomic qubits. To get a solution to the problem the researchers worked on superconducting aluminium circuits as these act as artificial atoms and their quantum nature allows them to also be qubits. The major problems still remain: Since an ideal qubit is perfectly isolated from its surroundings how can we gather information from it when doing so would have to interfere with it. The primary question is not whether a quantum computer could be constructed in some form but how well will a constructed on work? Optimising an imperfect system is the ultimate goal.