Lesson 1: Programming for Entertainment

Overview

Students are asked to consider the "problems" of boredom and self expression, and to reflect on how they approach those problems in their own lives. From there, students will explore how Computer Science in general, and programming specifically, plays a role in either a specific form of entertainment or as a vehicle for self expression.

Purpose

This lesson is intended to kick off this programming unit in a way that engages students of all backgrounds and interests. Though the end point of this unit asks students to develop a game, you should avoid starting out with a strong emphasis on video games. Instead, we attempt to broaden students' perspective about how programming is relevant to a form of entertainment or self expression that is personally engaging. This will provide an anchor for students to come back to throughout the unit as they consider the potential applications of the various programming skills that they learn.

Assessment Opportunities

  1. Identify how computer science is used in a field of entertainment

    In the activity guide, look at the "Interesting Fact or Use" section of the second page, make sure students have identified a use of computer science in their chosen fields.

Agenda

Warm Up (10 min)

Activity (45 min)

Wrap Up (5 min)

View on Code Studio

Objectives

Students will be able to:

  • Identify how computer science is used in a field of entertainment

Preparation

  • Review the research resources linked in Code Studio
  • Print a copy of the activity guide for each group of three students

Links

Heads Up! Please make a copy of any documents you plan to share with students.

For the Teachers

For the Students

Teaching Guide

Warm Up (10 min)

The Entertainment Problem

Remarks

Why do we seek out entertainment? Whether it's movies, music, art, games, or any number of other forms of entertainment, what problem does entertainment solve for us?

Discussion Goal

The goal here is to get students to reflect more critically on why people seek out entertainment. Students are likely to come up with "boredom" as a common answer, but push them to think more deeply about what their chosen form of entertainment actually does for them - what problem does it solve. Potential answers include:

  • Escape from difficult reality
  • Connection with others
  • Learning or experiencing new things
  • Sparking creativity

Discuss: What is your favorite form of entertainment, and what problem does it solve for you?

Activity (45 min)

CS in Entertainment

Prompt: Select a few of the forms of entertainment that students identified in the warm up and ask them whether (and how) Computer Science plays a role in that field.

Group: Place students in groups of three. Consider allowing students to group based on common interest as each group will be exploring a field of entertainment together.

Distribute: Give each group a copy of the activity guide.

CS in Entertainment

During this activity student groups will do some light research into the role that CS and programming play in various fields of entertainment. The primary goal of this activity is to broaden students' perspective about how programming can be used to make fun or entertaining things. Some of the fields that students could research (such as art, animation, and games) can be directly connected to programs they will write later in this unit, while others may serve more as an inspiration for how the skills that they learn here may be applied in different domains.

Entertainment Exploration

  • Introduce the topics: In the activity guide we've listed a number of potential fields for research. These specific fields were chosen to go along with resources that are provided on Code Studio, but you can allow students to look into other fields if they wish.
  • Explain the exploration task: The goal of this exploration is twofold:
    • First, develop a deeper understanding of how programming is used in your chosen field. How is computer technology changing this field, what are some of the problems that people are trying to solve with technology?
    • Second, identify some interesting applications of CS or facts to share. What are some cool things that people are doing in this field that make use of CS?

Teaching Tip

Because many of these sites change their content daily, we have not shared them directly with students. We suggest that you check these links the morning before class to ensure that everything is still appropriate to be shared in school

  • Share selected research links: On Code Studio, inside the blue teacher box, we have compiled a handful of useful sites to help students kick off their research. Share the links that you feel are most helpful and appropriate for your class.

Interesting Information

Once groups have learned a bit about how CS is used in their chosen field, they can complete the second page of this activity guide, which asks them to do the following:

  • What Problem Does It Solve?: "Problem" in this context can be fairly broad. It might be simplifying an otherwise laborious or complex task, doing things that wouldn't otherwise be possible, or any number of things that make this form of entertainment more accessible to end users.
  • How is it an Improvement?: This could be tightly coupled with the answer to the previous question. Push students to consider how their form of entertainment was created before programming was prevalent.
  • An Interesting Fact or Use: Share something fun or interesting about how CS is used in this field.
  • An Open Question: It's likely that students come away with more questions than answers after just some quick research. Encourage them to reflect on what they don't yet know, and what questions they'd still like answered.

Share: Give groups a minute each to share their findings.

Wrap Up (5 min)

Looking Forward

Teaching Tip

While some of these examples are pulled directly from lessons that students will complete later in the unit, a few of them use commands or techniques that aren't explicitly covered in the course. You can view the source for all of these programs in order to support students who may want to incorporate some of these techniques later on.

Display: Show either as a whole class, or let students explore independently, the example programs at the end of this lesson's Code Studio progression. These programs are designed to show a variety of different kinds of programs that it's possible to make in Game Lab.

Journal: Based on what you saw today, both in your research and the example apps, what kinds of programs are you most interested in learning to create?

View on Code Studio

Here are a few sites to get students started. These sites are generally appropriate for school, but the content with them changes frequently, so we strongly suggest that you check each site for inappropriate content before sharing it with students.

Inside the Magic - insidethemagic.net

Overview

This site is focused on news about Disney, but you might be surprised by the large role that CS plays in all of their different forms of entertainment. Because this isn't a CS focused site, you'll need to use the search function to find relevant articles.

Relevant fields

  • Film/TV
  • Animation
  • Robotics/Animatronics
  • Games

Critical Path Videos - criticalpathproject.com/explore/playlists/

Overview

Videos featuring a range of people working in diverse areas of the game industry, talking about what they do.

Relevant Fields

  • Games
  • Animation
  • Art

Music Think Tank - musicthinktank.com

Overview

Music Think Tank is a blog targeted at people working in the music industry. It's not a CS specific site, but searching for "computer science" or "programming" will reveal some interesting articles.

Relevant Fields

  • Music

Creative Coding Podcast - creativecodingpodcast.com

Overview

While this podcast doesn't feature much in the way of formal professional programming (as in, people who do this for a living), it is a great resource to see the varied ways in which amateurs are making entertainment with code.

Relevant Fields

  • All
View on Code Studio

Starting Your Search

To find out more about how computer science and programming play a role in entertainment, you'll need to do some research. Try searching for "Computer science and ______" and trying out different types of entertainment such as film, television, music, games, animation, fashion, etc.

View on Code Studio

Student Instructions

Stamp Pad

Click "Run" to start the program, then use the stamp pad to draw pictures with simple colors and animal stamps.

View on Code Studio

Student Instructions

Animated Comics

Combining images, text, and some subtle animation can make for really interesting comics or graphic stories. Click "Run" to see an example.

View on Code Studio

Student Instructions

Alien Jumper

Press "Run" to play the game on the left. You can make the alien jump with the space bar, and move it to the left and right with the arrow keys. You score by collecting stars, and if you score high enough, the background will change.

View on Code Studio

Student Instructions

Hungry Bunny

The bunny is hungry, and it's looking for mushrooms and carrots for dinner.

To win, you'll need to find a dinner bowl, then collect at least ten carrots and five mushrooms.

Make sure to avoid the bugs. Ladybugs and snails will eat your food, and bees will sting you, making you drop everything!

Use the space bar to jump. You can squash ladybugs and snails by jumping on them.

Click "Run" to start the program.

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

IC - Impacts of Computing
  • 2-IC-21 - Discuss issues of bias and accessibility in the design of existing technologies.