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!

Note: You can skip to the table of contents here

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 physical 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, but useful

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 plays out in an infinite number of parallel universes branching out from the present. You just happen to be traveling down a certain branch of reality. With quantum computing, in a sense it’s like getting to define the possible set of multiverses that emerge from the present.

So prepare for a mind-bending ride!

Table of Contents

Sources

If you’re interested in learning more on your own, I highly suggest these sources that provided a lot of inspiration and information for this series: