**We Start with Richard Feynman**

Partially
because there is no better place to start and because Feynman was the
first to propose the concept of quantum computing. In a keynote speech
in the early 80’s, Feynman asked “Can physics be simulated using a
quantum computer?”, which sort of marks the birth of quantum computing.
If you feel a little intimidated by the subject, Feynman claimed to have
above average intelligence, but not genius level. Feynman himself
reported a 125 IQ, which wouldn’t even get him into MENSA, but Feynman
also worked on the Manhattan project, won a Nobel Prize in physics,
taught theoretical physics at Cal Tech, wrote one of my favorite
autobiographies and famously proved in a live demonstration to
Congress, that O-rings were responsible for the Challenger explosion…so
maybe IQ tests aren’t so great…anyways…

**Classic vs Quantum Computers**

What’s
the main difference between quantum and classic computers. Classic
computers are binary, which means data is represented by a series of 0s
and 1s, or “bits.” To test combinations or simulations, a classic
computer needs to represent these combinations one at a time, using the
0/1 method. A quantum computer changes everything, in that it can
simultaneously be different states and represent everything between 0
and 1. People use coin analogies to explain this: A computer stores
information in 0s or 1s (heads or tails), but a quantum computer is more
like a coin that is spinning, depending where the coin is spinning, it
could be 51% tails, 49% heads, or 83% heads or 17% tails. Having two or
more “states” is called quantum superposition the number of states is
measured in “qubits”, which is represented by 2^N superstates.

**I am lost already**

If you are, a quantum computer essentially can do exponentially more calculations than a regular computer.

While
the game “Minesweeper” may not benefit from it, fields like chemistry,
physics and finance can all benefit greatly. A simple example is
according to research done by Morgan Stanley “To sort a billion numbers,
a quantum computer would require 3.5 million fewer computing steps than
a traditional computer and would find the solution in only 31,623
steps.” If you are a cloud database provider, this is especially
interesting application. A more sophisticated example is a biotechnology
company called Biogen, partnered with a quantum computing company
1Qbit, and is applying quantum computing to predict new drug’s positive
and negative effects. The company is “comparing” new molecules to
current molecules to get a better idea of how these new molecules will
perform in the body. Current computing has a limit to the size and
complexity of the moleculce you can compare, but the hope is quantum
computing can blow away these barriers.

**To the cloud?**

In
order to actually use a quantum computer and store data in molecules,
the system needs to be cooled. By cooled, I mean it needs to be colder than space,
as in less than one degree Kelvin…and you thought the kelvin system was
going away. If molecules aren’t cooled, the system becomes chaotic, and
particles smash around everywhere, which is no place to store data.
Since we don’t be getting quantum laptops any time soon, quantum
computing in the near term needs to be delivered over the cloud, and
companies have already started setting up the infrastructure. IBM and
Rigetti, another quantum company, allow users to tap into their basic
quantum computers and have Python support so you don’t have to learn
another programming language. The quantum machines themselves are
enormous and look like something out of a Jules Verne novel…

**Ohh! I know Python, let me try**

The biggest problem these companies face is getting people familiar with quantum computing. This is not a situation where you already have an algorithm and then throw it onto a quantum computer and it magically speeds up. You must tailor your algorithm to fit the needs on the quantum machine. There is actually a field called quantum machine learning, which includes tailoring traditional algorithms to use a quantum computer and developing new methods entirely. Research has been done to port classical algorithms on to quantum systems, and Aram Harrow, Avinatan Hassidim, and Seth Lloyd were the first to propose a way to theoretically solve linear equations on a quantum computer, which was then done by a different team 5 years later. Solving a linear equation is actually an *easy* algorithm to implement and if the easiest algorithm to implement takes significant amount of thinking to do on a quantum computer, then…

I won’t sugarcoat how freaking complicated quantum machine learning is, but it’s FREAKING complicated. I tried to read some papers, have really complicated math shoved in my face and then quickly gave up. I then poked around on the IBM quantum experience Github page and looked at some of their code for implementing quantum machine learning. It’s daunting. There is a program to simulate *protons teleporting* and the optimization example is over a thousand lines long. I mean, look, I am getting married tomorrow, maybe once that’s over I’ll be able to figure it out.

*Yea, right…*