Programming the Multiverse: Part 1 - Introduction

Erica Kastner · March 13, 2024

Welcome to Programming the Multiverse, a blog series introduction to quantum computing for imperative programmers!

If you’re familiar with programming with classical languages, such as Python, Ruby, or Java, and you have seen binary logic gates (NOT, OR, AND) before, this guide is for you!

The goal of this series is to get you familiar with how quantum algorithms work and have some fun with some programming problems. The intention is to introduce topics gently and intuitively, rather than using lots of jargon, diving straight into Bloch Spheres, or showing off fancy equations (we’ll keep them super simple).

What is Quantum Computing?

Anything that uses the term “quantum” means using some of the special properties of subatomic particles like entanglement, superposition, and tunneling. We’ll get into what that means later. But unlike “classical” computers (i.e. the computers you use on a daily basis), quantum computers (QC) use these weird (some would say “spooky!”) quantum behaviors to their advantage.

Classical computers are boring, but reliable

Classical computers are great when you want to perform a scripted task quickly. They excel at CRUD operations - creating, reading, updating, and deleting data.

Quantum computers are weird, and…probably useful for something?

QC has traditionally been a hammer in search of nails, but some uses are slowly emerging. AI and QC seem to be a promising match as well as optimizing logistical problems. Instead of scripting out a process in steps, QC finds optimal paths through forests of data. Whereas classical computers try to Hulk Smash their way into a building, QC tries all the possible secret entrances simultaneously. But quantum computers are also a little flakey at the moment. Today they require strategies to reduce “noise” and multiple runs to get a set of results that give you an “average” answer.

Wait what does the Multiverse have to do with this?

One explanation for how quantum mechanics operates (the “Many Worlds” interpretation) states that every possible thing that can happen is randomly chosen and plays out in an infinite number of parallel universes. You just happen to be traveling down a certain strand of reality. With quantum computing, we get to “harness” this quantum randomness to solve unique problems.

So prepare for a mind-bending ride!

Table of Contents