Fundamentals Of Binary You Need To Know

Codomo Singapore
Binary made really easy to understand for anyone

Binary at first glance can be very confusing. And why won't it be? A long string of ones and zeros isn't the easiest to decipher. But what if I told you that binary is actually really easy to understand, even for kids?

Importance of Binary

We have all probably heard by now how computer science is a really up-and-coming industry. Even The New York Times mentioned that the College Board had recently stated that coding is one of the 2 most important skills for young people to have today. Of course, it is debatable whether the College Board is right about it being one of the most crucial skills to have. But one thing is for certain, computer science is majorly increasing in demand. Hence, on that note, we need to start exposing more young people to computer science concepts.

However knowing how broad computer science is, it can be really hard to know where to start. That's why I decided to start making concise guides for topics in computer science, starting with binary. You may remember binary as the lines of ones and zeros that show up on a hacker's computer screen in a movie. Well, these ones and zeros are actually really important for a computer because without it, the computer won't be able to do anything.

Although we keep hearing people call computers smart, computers are actually limited by the fact that they can only differentiate between 2 different inputs, they understand true vs false, which is a Boolean logic. We will talk more about this in future guides. They also understand on vs off or one vs zero. Hence, the ones and zeros of the binary are actually what the computer uses to decipher information. Considering the dilemma of only being able to input 2 things into a computer, the binary system is a truly amazing creation.

The Birth of Binary

Every great creation has a story behind it, and even binary has quite an interesting history. I've created a short summary below.

Timeline and history of Binary used by humans

Timeline Made by Potato Pirates

 

 These are only a few of the historical events that brought binary to where it is today. Binary has been there for a very long time, but it wasn't until the 20th century that it finally started being used for computers. The Z1, for example, was the first programmable computer made during 1936-1938 by Konrad Zuse. The best part of this invention is that it was built in his parents' living room. I can't imagine what they were thinking about the gigantic computer in their house at that point in time, but many others like him made history with their different ideas for the first computers.

The Z1 Konrad Zuse - the first programmable computer made during 1936-1938

The Z1 by Konrad Zuse 

 

The Electronic Numerical Integrator And Computer, ENIAC for short, was invented by J. Presper Eckert and John Mauchly during 1943-1946 at the University of Pennsylvania. It was a huge machine, weighing about 50 tons. Luckily, thanks to the advancements in technology, our computers are getting lighter and lighter. Other than the size, the ENIAC was an excellent first computer because it was able to function fully.

The Electronic Numerical Integrator And Computer, ENIAC for short

The ENIAC

 

 

How Does Binary Work?

Now, let's get to the good part. What exactly do these ones and zeros mean, and how do we read them? This short and sweet video will explain to you all the basics of binary, getting you started on the road to becoming a binary genius.

 

 

So now that we know how to convert decimal to binary and how a computer gets these ones and zeros in the first place, the question on our minds is probably how do they form alphabets then? No matter what you do, it's impossible to get an alphabet from summation of numbers. And, you're not wrong.

This is why each alphabet is actually allocated a specific number. So in American Standard Code for Information Interchange (ASCII), for example, an uppercase A is 65, while a lowercase a is 97. Based on the context of the situation, the computer will either display letters or numbers.

Table for conversion from binary to ASCII

Table for conversion from binary to ASCII

 

For example, if I was trying to call someone on my phone, the numbers will not suddenly change to alphabets because the phone knows that in terms of the context, I only want numbers to show up. This is important since some of the binary numbers are the same for numbers and alphabets or other symbols.

Next week, we will explore more on what binary is used for, how to convert it to different systems like the hexadecimal system and it's different applications. Did you know that your images and videos are all made by binary as well? There are a lot of functions for these ones and zeros, so you can look forward to a lot more great content coming your way!

 

Read more →

Fundamentals of Binary You Need to Know - Part 2

Codomo Singapore
How binary is used for data representation and how to convert it to hex, ascii and unicode

 

 

In the previous guide we learnt that binary is a base 2 system and how the idea of it even came about. But have you ever looked at your computer screen and wondered, how does binary even let us type out words or play videos? I know I have.

Here are some good news, I have an explanation for this question. We know that computers think in binary so it is useful for us to understand what goes on behind the scenes when we input something into the computer. Which is why in this guide, we will explore how basic mathematical functions are carried out in binary, how to shorten binary code using hexadecimal, how our screens are able to display different colors, as well as binary conversion to ASCII and Unicode.

 

Addition & Subtraction In Binary

Here is a problem someone might face when looking at addition in binary for the first time. Since binary only has the numbers 1 and 0, what do we do when we add 1 with another 1. We can't write 2 right? Also, how do we subtract in binary if we can't have a negative sign? In this video, we will explain how these problems are solved.

 

Multiplication & Hexadecimal

After addition and subtraction, we need to know how to carry out multiplications in binary. It is actually pretty straightforward once you know how it is carried out. But other than mathematical functions, we have an issue with the length of binary code.

While the long strings of 1s and 0s carry crucial information, it takes up a lot of space. Using hexadecimal however, we can shorten the number of bits used by four times! This saves up a lot of space and this video explains how this conversion works.

 

Colors, Images & Videos

Have you ever wondered, how does a video play on the screen? We have all probably guessed by now that there are numerous tiny LEDs that allow different colors to appear on the screen but how do these LEDs show all these different colors?

Images are quite confusing as well. When we ask a computer to store images, there are no words or numbers on the image so how does it even convert it into binary? All these questions are answered in this video. But wait a second, how does this video get stored in terms of binary if it is not just a still image? Don't worry, we will answer that as well.

 

ASCII & Unicode
The world has a total of approximately 6500 spoken languages as of today but so far we have only explored binary representation for numbers. No one communicates in just numbers, we need to have binary representation for the different characters in different languages. Also, how can we forget the most widely spoken language? That's right, I am talking about good old emojis. These can also be represented by binary, the only question remaining is how? The answers to this lies in this video.
Now that we know about binary conversion, as well as how it is used in representing numbers, words, images and videos let's do a little quiz to see if you've mastered the art of binary. Feel free to challenge someone else to see who does better!

Read more →

What Is Computer Science And How To Make Kids Love It

Potato Pirates

Wondering how to start? Try our free assessment tool

As a student, I always wondered whether what I was learning in school was going to matter tomorrow. Will knowing about the deeper meaning behind “The Lord of The Flies” help me in any way in life? I haven’t had the privilege to be stuck on an Island with no adults at any point yet, so I wouldn’t count on it. There are, however, a few things I realized regarding what is going to matter in the future.

I have scoured the web and have some crucial news to share with you. Coding is in.

According to Code.org, more girls and underrepresented minorities are getting into computer science. Not only that, more than 800,000 teachers have taken steps to introduce coding into the classrooms. These numbers are truly inspiring, but you’re probably wondering, what exactly is the benefit of learning to code?         

Why Kids Need To Learn How To Code

Whenever we think about coding, most people picture a scene out of something like ‘Mission Impossible’, with someone hacking into a computer to get ‘Top Secret Data’. I can’t promise any grappling hooks or helicopters but coding is in reality everywhere around us. The apps on our phones, the games that we play, and even the blenders in our kitchens all use programming. Now if you travelled to a foreign country where people spoke a different language, you would try to learn and communicate. So why not look at programming the same way?

Many educators have realized the importance of coding as well and more K-12 schools are starting to offer Introduction to Computer Science modules to their students. There has been a huge 415% jump from 2010 to 2018 of students taking the Advanced Placement Computer Science exam. There has clearly been a spike in interest in learning computer science.

The future regarding employment for computer science majors also looks bright. Recent analysis of employment projections from the Bureau of Labour Statistics also shows that by 2024, 73% of STEM job growth will be in computer occupations. To add on to this already astounding number, a computer science major can earn up to 40% more than the average college graduate according research done by the Hamilton Project. Of course, exploring computer science is not easy. You have to start somewhere and have to know how to start.

Computer Science Fundamentals

Before we start exploring ideas for ways to start teaching coding, we need to at least understand what it is all about. Now we all love videos, they make it easy to understand ideas and visuals are very helpful when learning something complex. Hence, I have made a list of some short videos that explain certain concepts and can help give you a better idea of what these concepts are about.

Variables, Functions, Conditionals, Loops 

We have all probably heard of the YouTube channel Crash Course, and understandably so. They have a very informative series on computer science and this video does a great job explaining the different concepts. By using a game as an example, Crash Course has made it easier to understand variables, functions, loops and conditionals through showing what these statements do in terms of the video game.

They explain how a function can be looked at as a procedure and can be used to either return a value or perform an operation without returning any value. Meanwhile, a variable is a value that changes, depending on conditions in the program.

As for loops, the video shows that it works by using a condition and by counting through the number of repeats. Conditionals are explained as statements which perform different computations or actions depending on whether a Boolean condition evaluates to true or false. All-in-all, this video is not just educational, but very entertaining to watch as well. You can also learn these fundamental concepts through a fun and sociable manner with our very own Potato Pirates, the tastiest coding card game! And do stay tuned as the Potato Pirates team is developing more exciting games to cover all the other fundamentals concepts mentioned below.

Binary and Data Representation 

Binary is a key foundation in computer science and this video explains it very well. They use visual aid to show how binary numbers work and make it simpler to understand by using real-life examples. They answer questions such as how does binary represent different numbers and letters, and why it is such an important concept. 

It doesn't end there of course. They go on to share the uses of binary in images, videos and sounds. Isn't it interesting - how does a chain of 1s and 0s even become a picture, let alone a video? Well, after watching this video, these numbers will definitely start to make more sense.

Sorting Algorithms

All the different sorting algorithms can be very confusing but this video by Computerphile is able to make it more digestible by using cards to show how they work. They have a series of videos to explain algorithms such as merge sort, bubble sort and quick sort. For merge sort, they show how each of the two smaller lists are sorted, and then merged together. When merging, the smallest items in the two lists are compared first, and the smaller of the 2 is put into the merged list first. Then the same comparison repeats with the next items in line. This continues till the new merged list is formed. 

As for bubble sort, they show how sets of two cards are swapped in order to arrange the numbers in a line. This continues repeating till all are in order and no changes are made in a pass.

The quick sort algorithm is explained in a different video. They do a great job at explaining how it works considering how confusing quick sort can be to understand. The algorithm involves getting a random number from the line, and then arranging the remaining cards on either side based on whether they are bigger or smaller than the random card that was picked. The whole process then repeats on either side. It's confusing to just read what it is about, isn't it? Hence, the visual explanations in the video are very helpful in understanding what these algorithms are talking about.

Cryptography - Caeser Cipher 

Privacy is a big thing when it comes to computers and in order to protect this privacy, computers use a lot of different algorithms to keep data safe. One of these is the Caesar Cipher. There is some history to the Caesar Cipher and this video shares how and why it was used over the years. They also explain how it works, such is what is the key used for, how is the plain text encrypted and how it can then be decoded.

A.I. - Turing Test

How did the Turing Test come about? What is its purpose? TED Ed is able to explain how the test works and also shares some past cases where some computers passed the test, such as one that took the role of a psychiatrist, which highlighted some weaknesses in the test. It also explores different ways that AI communicate and learn. For example, 'Alice the Chatterbot' follows patterns that are in its program while Google's 'Cleverbot' is a robot that learns from conversing with humans. Overall, it is a very interesting topic and it raises a lot of questions such as what exactly defines intelligence?

Data Compression

Computerphile is able to explain the benefits of compression, and how it works for text and images in this video. A phrase or character that's repeatedly mentioned gets compressed into just storing the positions at which that same phrase/character is repeated. While for pictures, the colors can be stored based on how many of the same colors there are and where they are. They also explain concepts such as lossy and how JPEG works. The video also highlights the shortcomings of data compression. After all, nothing is perfect right?

Related: Fundamentals of Binary You Need to Know

Other Resources: The Beginner's Coding Guide

 

Learning To Code Offline

I know what you’re thinking and yes, it is actually possible. There are tons of games that are fun and engaging that can introduce coding to kids and do so with no screens attached. There is constant worry about children spending too much time in front of their screens, and there are reasons to be. Had I listened to my mother when she scolded me for using my phone for too long, I might have had 20/20 vision today.

These activities are all easy to set up and make learning computer science a whole lot of fun. To help you decide which one to pick, I have also added in which concepts each activity targets.

Read more →