The computer sitting on your desk works by manipulating bits, digits that are binary  that is, that can either represent a zero or one. Everything from numbers and letters to the status of your modem or mouse are all represented by a collection of bits in combinations of ones and zeros. These bits correspond very nicely with the way classical physics represents the world. Electrical switches can be on or off, objects are in one place or they're not, etc. Quantum computers aren't limited by the binary nature of the classical physical world, however  they depend on observing the state of quantum bits or qubits that might represent a one or a zero, might represent a combination of the two or might represent a number expressing that the state of the qubit is somewhere between 1 and 0.
According to quantum physics, a subatomic particle can't be absolutely said to exist: It exhibits a statistical probability to exist in a particular place and time, but there's no way of knowing whether it's there or not until you observe it, at which point all the probabilities collapse down into a definite state. In fact, there are those who say that it both exists and doesn't exist until it's observed, at which time the observer sets a particular observed state into concrete existence. According to some theorists, this means that there must be an infinite number of alternative universes since there's no other way to account for the states that aren't observed by a particular observer, but since we don't have any way of getting at the other universes, they don't really help building a computer.
Researchers at IBM have built quantum computers by using nuclear magnetic resonance (NMR) techniques to measure and manipulate the spin of individual atoms. Radiofrequency energy bursts can begin the "computing" process by changing the energy level of an atom, which might then interact with other atoms in a controlled manner, to establish the patterns of quantum computing that correspond to answers that might be gathered through normal computers.
There are several reasons that researchers are working so hard to develop a practical quantum computer. First, atoms change energy states very quickly  much more quickly than even the fastest computer processors. Next, given the right type of problem, each qubit can take the place of an entire processor  meaning that 1,000 ions of, say, barium, could take the place of a 1,000 processor computer. The key is finding the sort of problem a quantum computer is able to solve.
It's unlikely that you'll ever have a large quantum computer on your desk, because they aren't well suited for tasks like word processing and email. Largescale cryptography, on the other hand, is ideal for quantum computing, as is modeling and indexing very large databases. It is for these largescale applications that scientists continue to work on quantum computers.
Though scientists and engineers have demonstrated a number of smallscale quantum computers, developers face several profound difficulties in building commercially viable quantum computers. The most pressing problem is that it's difficult to hold a single ion in a steady state while you observe its manipulated energy levels and spin directions. Right now, doing so often involves using lasers to cool ions to a point very near absolute zero. That's after you've separated a single atom from a group and herded it into place. So far, the demonstrations have generally involved between two and five atoms. There's also the issue of observing the atom and collapsing the probabilities into a single state  that destroys the "both or between" states that are so valuable. The NMR technique used by IBM is one way to try to observe the effects of the ion's state without directly observing it and therefore collapsing the probabilities.
Scientists at Los Alamos National Labs, IBM, CalTech and Oxford University are among the leaders in the quest to build a quantum computer. Overcoming the difficulties can have huge payoffs for the companies or universities that succeed.
Here are some interesting links:
