# Quantum Computing: The Real Game Changer

Quantum computing is becoming one of the most talked about new technology even though it does not fully exist yet.
Technology has advanced significantly in recent years, our mobile phones have become more powerful than the computer NASA used to put man on the moon and it gets better by the day.

In the nearest future, quantum computers would change our world drastically.
So why should I even study about it today? My answer is simple, it’s going to be a big game changer in the world of computing as we know it, Microsoft's research lab predicts that quantum computers would begin to replace our classical computers in the next 10 –15 years. By classical computers I mean electronic devices like our laptops, phones, etc.

1. What is a quantum computer?
2. What areas would quantum computers affect what we do?
3. Do quantum computers exist today?
4. What are the available tools for Quantum Computing today?

I would avoid using some big physics terminologies in this article and try to explain in simple terms, so let’s get to it.

### What is a quantum computer?

Quantum computing is computing using quantum-mechanical phenomena, such as superposition and entanglement. Wikipedia

That definition confused me as well, so let me try to write it my own words.

To define a quantum computer, let us first understand what classical computers are. At the very fundamental level, all quantum computers use a transistor, a transistor can be in one of two states; the `on` or `off` state, in computer terms we’ll say 1 or 0, this information of the state is what we call a bit( the smallest unit of information inside a computer). For a classical computer to function we have to combine different bits (existing in either an on or off state) and transistors together. An increase in the number of bits in a computer means an increase in the information that computer can process. Lots of transistors are put together to form what we call computer chips, these make up the building blocks of classical computers as we know it today.

Quantum computers do not make use of `bit` as we saw above, the fundamental unit of a quantum computer is known as `qubit` which is a short form for quantum bit. Follow me closely now, while a `bit` can only exist in an `on` or `off` state, a `qubit` can exist in one of the state namely: `on`, `off`, or both `on & off`. In essence, a qubit can represent and process more than one state simultaneously, this makes it faster and more efficient.

The Maze Analogy credits to Chuck Bates

Let us consider traversing a maze using the concept of a quantum and classical computer.

When solving the maze puzzle using a classical computer, the computer restarts to process information all over again when it hits a dead end, this is because the `bit` can only exist in one state at a given time. The image below shows how a classical computer would solve the maze puzzle.

A quantum computer, on the other hand, would solve the maze following all possible paths at the same time, this is because the `qubit` can exist in both the on and off state at the same time.

The `qubit` scales quite well, the processing power of 64`bit` on the classical would only require 4 `qubit` on the quantum side, it scales so high that 300 `qubit` would give about 2 X 10⁹⁰ `bit`.

### What areas would quantum computers affect what we do?

Quantum computers would affect a lot of what we know in the world of computing today, I would just state a few. The scope of this article won’t really go deep into how this would happen.

Machine Learning: Quantum Machine Learning (QML) would implement more complex algorithms like data classification, pattern recognition, sorting, recognition, etc. The job of detective organisations like the FBI, CIA would be a lot easier as quantum computers would give enormous computing power to help get needed info, this is just one use case.

Security & Cryptography: A public and private key are linked mathematically that a public key can be produced easily using a private key, but the reverse becomes so difficult so much that it turned out to be a security feature. This allows encrypted communication over the internet, it is predicted that a quantum computer would be able to reverse this action such that with a public key a private key can be produced since it can scan for combinations much faster.
Before you rush to close all your online accounts, do note that there are research going on to fix this major proposed breach, it is known as `post quantum cryptography.` This would help secure our apps in the future.

Stock Markets / Forex Trading: I foresee the first set of folks using quantum computers in the stock market making a lot of money, this is because they’ll have access to more accurate information with little room for errors with the power that comes with quantum computers.

Block Chain: Some say that quantum computers would be an end to the blockchain technology. I honestly think there is a possibility of this happening, I might not be able to talk much about it here. Shaan Ray attempts to answer these questions in his medium post here, you might also want to check out this amazing post on hackernoon.

Artificial Intelligence: If you think AI is powerful with a classical computing brain, just imagine its possibilities with a quantum brain.

The list is endless, we could go on and on how it would affect, medicine, science and research, the financial market, software development, cloud computing, etc.

### Do quantum computers exist today?

Yes, they do, but they are not fully optimised for personal use, there are some companies using them today mostly for research purposes. A startup like Rigetti uses quantum computing to power its cloud services.
Big names like Google, IBM and Microsoft are not left out, in-fact, Google owns a 72-qubit quantum machine (the largest in the world as at the time of this writing.
But I must say most of the work done with quantum computers are in its research phase and these companies are pumping in funding to make this work out in an industry scale, the world is waiting to see who makes the first big breakthrough with this technology.

### What are the available tools for Quantum Computing today?

There are different tools one can use to get started with quantum computing today. Regetti has an online community of physicists and developers that collaborate to develop quantum programs and applications, the slack channel is an amazing place and I’ve met really bright minds there. View details of the Regetti community here.

One of the most interesting tools available today is the Microsoft Quantum Software Development kit, this is freely available and has three components; The Q# programming language, Quantum simulator and Tutorials, examples & katas.
Q# was specifically built for quantum computing and it is been managed by Microsoft, it works well on visual studio.
The Quantum simulator can run on your local machine or on Azure cloud, it allows developers to test, run and debug quantum algorithms, it can be downloaded here.

Microsoft’s tutorials and examples are opensource on GitHub here.