Developers
September 22, 2020

Quantum Computing: What It Is and Why It Matters For Developers

Quantum computing promises to usher in a new era of computing.

Amazon Web Services (AWS) made headlines with its Amazon Bracket, a fledgling service that puts early-stage quantum computing in the hands of customers. AWS joins Microsoft and IBM in offering quantum computing.

For many customers and developers, however, quantum computing is still something of a mystery. What is it? What are the purported benefits? How can developers take advantage of this new trend?

What Is Quantum Computing?

Traditional computers rely on bits that have a binary state. Their state is either 0 or 1. In contrast, quantum bits (qubits) more closely follow the rules of quantum mechanics, including supposition. As a result, a qubit can hold both values simultaneously.

The second factor that dictates how qubits work is the concept of entanglement. Entanglement links two quantum particles or qubits. Changing the state of one of them automatically changes the state of the other. As the MIT Technology Review states:

”Nobody really knows quite how or why entanglement works. It even baffled Einstein, who famously described it as ‘spooky action at a distance.’ But it’s key to the power of quantum computers. In a conventional computer, doubling the number of bits doubles its processing power. But thanks to entanglement, adding extra qubits to a quantum machine produces an exponential increase in its number-crunching ability.

”Quantum computers harness entangled qubits in a kind of quantum daisy chain to work their magic. The machines’ ability to speed up calculations using specially designed quantum algorithms is why there’s so much buzz about their potential.”

The Implications of Quantum Computing

That exponential increase in processing power promises to upend and revolutionize a number of major industries.

For example, a 4096-bit RSA encryption key is considered to be almost mathematically impossible to break using brute-force methods. Quantum computing, however, could change that. Once quantum computers become powerful enough, they could theoretically break 4096-bit encryption as easily and quickly as a traditional computer uses it.

The implications of that kind of power are staggering. Computer experts are predicting that virtually every kind of existing encryption will be rendered obsolete or, at the very least, severely weakened.

Beyond encryption, quantum computing is poised to revolutionize a number of fields, especially those that require vast computing resources. As Microsoft states:

”Where current computers would require billions of years to solve the world’s most challenging problems, a quantum computer would find a solution in minutes, hours, or days. Quantum computing will enable researchers to develop new catalysts and materials, improve medicines, accelerate advances in artificial intelligence, and answer fundamental questions about the origins of our universe.”

Quantum Computing and Software Development

For software developers, quantum computing represents a significant opportunity. It’s clear it represents the future of computing and, as with any major shift, programmers who learn how to use it and develop for it will be at a decided advantage.

There are a number of software development kits (SDK) from several organizations, all designed to help developers get up and running. Google, IBM, Microsoft, and Rigetti are working on, or have already released, open-source SDKs to aid in quantum development.

There are several languages being used for quantum programming. These languages are divided into imperative and functional languages.

One of the main ones is QCL (Quantum Computer Language). QCL is widely considered the most advanced imperative quantum language. The language is reminiscent of C, making it relatively easy for experienced C developers to make the transition.

Another popular option is Q# (Q Sharp). Q# was developed by Microsoft and is designed to be used with its Quantum Development Kit. This can be a good option for developers who work with .Net or are otherwise heavily entrenched in Microsoft’s ecosystem.

QFC, QPL and QML are popular quantum functional languages. Another option, Quipper, is an embedded, scalable language that uses Haskell as its host language. As a result, it is designed to be compatible with the relevant Haskell libraries.

The Future of Quantum Computing

Without a doubt, quantum computing represents the next era of modern computing. As quantum computers advance and become more powerful, they will be able to accomplish tasks never before possible.

What’s more, quantum computing will completely change many fields, such as AI, cryptography, medicine, physics and more. As a result, software developers that specialize in quantum software development will be increasingly in demand.

Even now, as AWS, Google, IBM, Microsoft, and others continue to make early quantum computing available to customers, many companies will be looking to take advantage of the new technology and acquire an early lead. This creates a unique opportunity for developers willing to take the plunge and start learning the available languages and SDKs.

While no one knows for sure when quantum computing will advance to the point of reaching its potential, one thing is clear: Developers who embrace quantum development will be at the forefront of computer science and have a bright future ahead.

TagsQuantum ComputingDevelopersSoftware Development
Matt Milano
Technical Writer
Matt is a tech journalist and writer with a background in web and software development.

Related Articles

Back
DevelopersSeptember 22, 2020
Quantum Computing: What It Is and Why It Matters For Developers
Quantum computing promises to usher in a new era of computing.

Amazon Web Services (AWS) made headlines with its Amazon Bracket, a fledgling service that puts early-stage quantum computing in the hands of customers. AWS joins Microsoft and IBM in offering quantum computing.

For many customers and developers, however, quantum computing is still something of a mystery. What is it? What are the purported benefits? How can developers take advantage of this new trend?

What Is Quantum Computing?

Traditional computers rely on bits that have a binary state. Their state is either 0 or 1. In contrast, quantum bits (qubits) more closely follow the rules of quantum mechanics, including supposition. As a result, a qubit can hold both values simultaneously.

The second factor that dictates how qubits work is the concept of entanglement. Entanglement links two quantum particles or qubits. Changing the state of one of them automatically changes the state of the other. As the MIT Technology Review states:

”Nobody really knows quite how or why entanglement works. It even baffled Einstein, who famously described it as ‘spooky action at a distance.’ But it’s key to the power of quantum computers. In a conventional computer, doubling the number of bits doubles its processing power. But thanks to entanglement, adding extra qubits to a quantum machine produces an exponential increase in its number-crunching ability.

”Quantum computers harness entangled qubits in a kind of quantum daisy chain to work their magic. The machines’ ability to speed up calculations using specially designed quantum algorithms is why there’s so much buzz about their potential.”

The Implications of Quantum Computing

That exponential increase in processing power promises to upend and revolutionize a number of major industries.

For example, a 4096-bit RSA encryption key is considered to be almost mathematically impossible to break using brute-force methods. Quantum computing, however, could change that. Once quantum computers become powerful enough, they could theoretically break 4096-bit encryption as easily and quickly as a traditional computer uses it.

The implications of that kind of power are staggering. Computer experts are predicting that virtually every kind of existing encryption will be rendered obsolete or, at the very least, severely weakened.

Beyond encryption, quantum computing is poised to revolutionize a number of fields, especially those that require vast computing resources. As Microsoft states:

”Where current computers would require billions of years to solve the world’s most challenging problems, a quantum computer would find a solution in minutes, hours, or days. Quantum computing will enable researchers to develop new catalysts and materials, improve medicines, accelerate advances in artificial intelligence, and answer fundamental questions about the origins of our universe.”

Quantum Computing and Software Development

For software developers, quantum computing represents a significant opportunity. It’s clear it represents the future of computing and, as with any major shift, programmers who learn how to use it and develop for it will be at a decided advantage.

There are a number of software development kits (SDK) from several organizations, all designed to help developers get up and running. Google, IBM, Microsoft, and Rigetti are working on, or have already released, open-source SDKs to aid in quantum development.

There are several languages being used for quantum programming. These languages are divided into imperative and functional languages.

One of the main ones is QCL (Quantum Computer Language). QCL is widely considered the most advanced imperative quantum language. The language is reminiscent of C, making it relatively easy for experienced C developers to make the transition.

Another popular option is Q# (Q Sharp). Q# was developed by Microsoft and is designed to be used with its Quantum Development Kit. This can be a good option for developers who work with .Net or are otherwise heavily entrenched in Microsoft’s ecosystem.

QFC, QPL and QML are popular quantum functional languages. Another option, Quipper, is an embedded, scalable language that uses Haskell as its host language. As a result, it is designed to be compatible with the relevant Haskell libraries.

The Future of Quantum Computing

Without a doubt, quantum computing represents the next era of modern computing. As quantum computers advance and become more powerful, they will be able to accomplish tasks never before possible.

What’s more, quantum computing will completely change many fields, such as AI, cryptography, medicine, physics and more. As a result, software developers that specialize in quantum software development will be increasingly in demand.

Even now, as AWS, Google, IBM, Microsoft, and others continue to make early quantum computing available to customers, many companies will be looking to take advantage of the new technology and acquire an early lead. This creates a unique opportunity for developers willing to take the plunge and start learning the available languages and SDKs.

While no one knows for sure when quantum computing will advance to the point of reaching its potential, one thing is clear: Developers who embrace quantum development will be at the forefront of computer science and have a bright future ahead.

Quantum Computing
Developers
Software Development
About the author
Matt Milano -Technical Writer
Matt is a tech journalist and writer with a background in web and software development.