They’re easily one of the most important inventions of all time. **In just about 100 years, they went from a quirky novelty to an essential part of everyday life.**

Yup… we’re talking about **computers**. We can’t live without ‘em, and they’re all over the place. But have you ever stopped to investigate how they actually work?

Before we go further, we’ll mention that this is a broad topic… so there’s a lot to learn! **There are many types of computers** – we’re most familiar with personal computers, like laptops, but the term “computer” can be applied to all sorts of things. For example, your smartphone is a computer… but so is the microchip that monitors your car’s engine.

Since this topic is so complex, we’re going to break it into two parts. **Today we’re focusing on what computers are, plus how we humans are able to communicate with them.** Next time we’ll dive into the components that make computers work – but first, we’ll cover the basics. Let’s dive in!

## First off, what is a computer?

In its most simple form, **a computer is an “input/output device”.**

That means pretty much any device that can receive an input, then produce an output, can be considered a computer.

**The most basic example – and not coincidentally, the first kind of computer – is a calculator.** When you input “1+1”, it gives you the output: “2”. There’s a lot more going on under the hood, of course, but for now this is all you need to know.

This simple functionality has endless uses. It’s the basis for **automation** – which allows us to produce more things, faster, and more efficiently.

So! As we mentioned, there are now tons of different types of computers. They all accept inputs, and automatically spit back outputs.

**The next question is: how do they actually do that?** Well, they use

**“programs”**. Programs are essentially a set of instructions. These instructions tell the computer how to handle inputs, and what type of output to deliver.

But wait – **how can you give a machine instructions?!** You need to communicate with them somehow… right? That’s correct – and the language we use to talk to computers is called **binary**.

## What is binary?

You may have heard of binary – it’s essentially **a way to represent (and communicate) data using only 1s and 0s.**

That means it’s a **“base 2” system**. This is different from our normal **“base 10” system**, which has 10 total digits (1,2,3,4,5,6,7,8,9,0).

To better understand this, let’s use an example. In our normal base 10 system, we represent the number 15 as “15” (obviously). We get that because we only have 10 digits to work with, so we have to “start over” every time we reach 10, adding a “1” to the beginning of the number (in other words, we “carry the one” on every tenth digit).

But in binary, we only have “1” or “0”. That means we “carry the one” on every *second* digit, instead of every tenth.

*(Psst… confused yet?! Don’t worry. We’ll keep going, but you can skip ahead to the next section if you want. You don’t really need to understand this completely, but it helps to know.)*

Just like in our base 10 system, **the number 1 in binary is “1”, and zero is “0”.** Easy enough, right?

However, **the number 2 is “10”.** Why? Since we don’t have any other digits to count with, we have to “carry the one” right away.

So now we have “10”, which represents “2”. Cool right? Now, to get “3”, we simply add “1” to the number. This is easy: 10+1=11.

So that means **the number 3 is “11”**.

To get 4, we add one more. In base 10, this would be “12”. However, since the number 2 doesn’t exist in binary, we have to “carry the one” and add a new digit (like we did when we went from “1” to “10” for 2). This resets the counting (just like in base 10… for example, 19+1 = 20, not 29).

That means **the number 4 in binary is “100”.** (Pronounced “one zero zero” to avoid confusion with the base 10 number).

From here, just keep adding and carrying the ones! **Here are all the numbers from 5-14 in binary:**

- 5 = 101
- 6 = 110
- 7 = 111
- 8 = 1000
- 9 = 1001
- 10 = 1010
- 11 = 1011
- 12 = 1100
- 13 = 1101
- 14 = 1110

So, can you guess what the number 15 is in binary?

Yup, you got it – it’s “1111”. (Okay, maybe you didn’t guess it – but don’t worry, we didn’t get it either.)

These are just the basics. Binary has many uses – and of course, it also represents other characters, like letters.

## Why is binary so important?

Binary is important because** it’s the language computers speak naturally.**

You see, **each “1” or “0” in binary actually represents an electrical signal** – which you can think of like an **on/off switch**. When one computer wants to communicate the number “15” to another, it will send 4 signals that represent “on” – which the other computer will interpret as “1111”.

From there, it just needs to translate it back into English. How it does that depends on the program it’s using.

Now, **computers are able to send on/off signals extremely fast.** They can communicate millions of these signals in milliseconds – allowing for massive amounts of data to be transmitted and understood.

So! Now you know that computers speak a funky language called binary. And, if you’re normal, you’re probably also totally confused. **How the heck can people remember all those 1s and 0s? Isn’t that a ton of work?!**

Yes! It would be a ton of work to write computer programs in binary. Which is why we don’t do that any more…

## Programming languages: Like Google Translate for binary!

We’ve been using binary since the very beginning, and it’s still at the basis of modern computing. However, **these days we have “programming languages”.**

Programming languages offer humans a way to speak to machines using more familiar language. These programming languages, like HTML or JavaScript, take large blocks of binary and simplify them with English terms. (After all, it would take a loooooong time if we had to write millions of 1s and 0s every time we wanted to create a new program.)

There are tons of different programming languages. They’re used for many purposes. Some build apps, others build websites, some instruct machines to perform their work, etc.

**It’s all based on logic, so you don’t actually need to know binary to write a program – but you should know logic (and the programming language) really well!**

Alright, now we know what a computer is, plus the language they speak. This should give you a fundamental understanding of how computers work. **In Part 2, we’ll cover the actual pieces inside your average computer** – plus how they all work together to create magic on our screens!

**If you have any questions about this topic (or have a topic you’d like to learn more about), please leave us a comment below.** Thanks for reading, and we’ll see you next week!