# Programming

## How to Make a Video Game

Icon:

Video games are fun to play, but have you ever wondered how to make one? Carmelo, a grad student in the MIT Media Lab, shows how anyone can start learning how to create video games by talking to machines through programming languages.

Start making at Scratch | MIT!

## Early Programming: Crash Course Computer Science #10

Icon:

Since Joseph Marie Jacquard’s textile loom in 1801, there has been a demonstrated need to give our machines instructions. In the last few episodes, our instructions were already in our computer’s memory, but we need to talk about how they got there - this is the heart of programming. Today, we’re going to look at the history of programming.

## Yet Another Tree Problem - PEG + CAT | PBS KIDS ScratchJr

Icon:

Join Peg+ Cat in this fun problem-solving adventure! Peg is stuck on the top of a tree, and Cat is trying hard to help her climb down. What solution do you think they will come up with?

## Computer Programmer

Icon:

Check out how humans work to make our computers, tablets and robots seem smart through coding and computer languages.

## Programming Basics: Statements & Functions: Crash Course Computer Science #12

Icon:

Today, Carrie Anne is going to start our overview of the fundamental building blocks of programming languages. We’ll start by creating small programs for our very own video game to show how statements and functions work. We aren’t going to code in a specific language, but we’ll show you how conditional statements like IF and ELSE statements, WHILE loops, and FOR loops control the flow of programs in nearly all languages, and then we’ll finish by packaging up these instructions into functions that can be called by our game to perform more and more complex actions.

## What is Programming? | Ready Jet Go!

Icon:

How do people talk to computers? In this clip from Ready Jet Go!, Jet and his friends learn about computer programming from Dr. Rafferty. They demonstrate how it works by using colored playing blocks to signify different computer commands.

## Shwetak Patel, Computer Scientist | MacArthur Fellows Program

Icon:

In this interview, 2011 MacArthur Fellow Shwetak Patel discusses how he used his skills in computer science to develop devices that can detect and measure household energy consumption with the goal of saving energy and improving daily life. Patel's innovative approach uses existing household infrastructure and only requires the addition of a small number of wirelessly connected sensors. Patel devises simple, low-cost solutions that are easy to deploy, and is helping to make the buildings we live in more responsive to our needs. This resource is part of the MacArthur Fellows Program Collection.

## Operating Systems: Crash Course Computer Science #18

Icon:

So, as you may have noticed from last episode, computers keep getting faster and faster, and by the start of the 1950s they had gotten so fast that it often took longer to manually load programs via punch cards than to actually run them! The solution was the operating system (or OS), which is just a program with special privileges that allows it to run and manage other programs. So today, we’re going to trace the development of operating systems from the Multics and Atlas Supervisor to Unix and MS-DOS, and take at look at how these systems heavily influenced popular OSes like Linux, Windows, MacOS, and Android that we use today.

## Tutorial Clips: Creature Powers | PBS KIDS ScratchJr

Icon:

This collection of tutorial videos highlight the various programming blocks used in Creature Powers: Lesson Plan | PBS KIDS ScratchJr. Use this media gallery as a reference as you follow the lesson plan, or when you are creating your own.

## Is Code the Most Important Language in the World? | Off Book

Icon:

The ability to code allows people to mold interactions between humans and computers. Coders have become the gatekeepers of how our culture uses technology. Because of this, many people now preach that everyone should learn how to code, saying that knowledge of programming languages is akin to reading and writing. But is it reasonable to assume that everyone will learn how to code?