Lesson Summary

Summary

EarSketch teaches computer science through music composition and remixing. No prior knowledge of either computer science or music is needed. Students can express their own unique style. EarSketch also lends itself well to student collaboration as well as a discussion on proprietary ownership.

EarSketch consists of three components:

  1. A free online curriculum that teaches programming concepts using Python while teaching music composition and remixing.
  2. A free online software toolset, which contains a code editor to write and test Python code and a Digital Audio Workstation (DAW) to actually play the music.
  3. A social media website. EarSketch is retiring the social media site before the 2015-2016 school year. Students may collaborate via the social media website this year if teachers desire.  Under the terms of the social media site's use, shared files are donated to the community. Students currently create an account on the site to gain access to cloud file storage for their files.  No other use of the file sharing site is required either by EarSketch or CS Matters lessons.  

 Students create an account to get Cloud storage for their files.

  • This curriculum does not ask students to post anything on this or on any public web site.   
  • The curriculum does provide a place to review advantages and pitfalls of social media sites. Especially note that student projects posted on this site are no longer the property of the student artist and are freely open for anyone to use as their own.
  • No downloads or installs are needed. EarSketch runs inside a web browser with recent versions of Chrome, Firefox, or Safari. (Internet Explorer < 12 is not supported.)
  • Students need ear buds or headphones for these lessons.

Outcomes

  • Students will understand the basics of music including beat, measure, track, and effects.  
  • Students will use the Python programming language to create and remix their own music.  
  • Students will apply Python programming concepts - iteration, user-defined functions, debugging

Optionally from Sections 2 and 3.

  • Students will apply Python programming concepts - list creation, access, modification and traversal
  • Students will use the Python programming language to create and remix their own music including effects and musical forms
  • Students will use the Python programming language to create and remix their own music including randomness and stochastic composition
  • Students will explore sonification -a way to use non-speech audio to convey information, or in other words, turning data into sound.
  • Students use Python to enable the computer to analyze audio.
  • Students will implement recursive Python programs

 Overview

The Lesson is divided into three sections.  

Section 1 is anticipated to take about 5 sessions to complete these EarSketch units.

Section 2 is anticipated to take about 5 sessions to complete these EarSketch units.

Section 3 is optional and is anticipated to also take about 5 sessions to complete these Earsketch units.

Each session will have the following elements.

  1. Getting Started: (5 min)
  2. Guided Activities (5 sessions)
  3. Wrap Up (5 min)

Sources

The Earsketch lessons are all taken from http://earsketch.gatech.edu/category/learning/welcome.

 

 

Learning Objectives

CSP Objectives

Big Idea - Creativity
  • EU 1.1 - Creative development can be an essential process for creating computational artifacts.
    • LO 1.1.1 - Apply a creative development process when creating computational artifacts. [P2]
  • EU 1.2 - Computing enables people to use creative development processes to create computational artifacts for creative expression or to solve a problem.
    • LO 1.2.1 - Create a computational artifact for creative expression. [P2]
    • LO 1.2.2 - Create a computational artifact using computing tools and techniques to solve a problem. [P2]
    • LO 1.2.3 - Create a new computational artifact by combining or modifying existing artifacts. [P2]
    • LO 1.2.4 - Collaborate in the creation of computational artifacts. [P6]
    • LO 1.2.5 - Analyze the correctness, usability, functionality, and suitability of computational artifacts. [P4]
  • EU 1.3 - Computing can extend traditional forms of human expression and experience.
    • LO 1.3.1 - Use computing tools and techniques for creative expression. [P2]
Big Idea - Abstraction
  • EU 2.1 - A variety of abstractions built on binary sequences can be used to represent all digital data.
    • LO 2.1.1 - Describe the variety of abstractions used to represent data. [P3]
  • EU 2.2 - Multiple levels of abstraction are used to write programs or create other computational artifacts.
    • LO 2.2.1 - Develop an abstraction when writing a program or creating other computational artifacts. [P2]
    • LO 2.2.2 - Use multiple levels of abstraction to write programs. [P3]
Big Idea - Algorithms
  • EU 4.1 - Algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages.
    • LO 4.1.1 - Develop an algorithm for implementation in a program. [P2]
    • LO 4.1.2 - Express an algorithm in a language. [P5]
Big Idea - Programming
  • EU 5.1 - Programs can be developed for creative expression, to satisfy personal curiosity, to create new knowledge, or to solve problems (to help people, organizations, or society).
    • LO 5.1.1 - Develop a program for creative expression, to satisfy personal curiosity, or to create new knowledge. [P2]
    • LO 5.1.3 - Collaborate to develop a program. [P6]
  • EU 5.3 - Programming is facilitated by appropriate abstractions.
    • LO 5.3.1 - Use abstraction to manage complexity in programs. [P3]
  • EU 5.4 - Programs are developed, maintained, and used by people for different purposes.
    • LO 5.4.1 - Evaluate the correctness of a program. [P4]
  • EU 5.5 - Programming uses mathematical and logical concepts.
    • LO 5.5.1 - Employ appropriate mathematical and logical concepts in programming. [P1]
Big Idea - Impact
  • EU 7.2 - Computing enables innovation in nearly every field.
    • LO 7.2.1 - Explain how computing has impacted innovations in other fields. [P1]
  • EU 7.3 - Computing has global effects — both beneficial and harmful — on people and society.
    • LO 7.3.1 - Analyze the beneficial and harmful effects of computing. [P4]

Math Common Core Practice:

  • MP1: Make sense of problems and persevere in solving them.
  • MP2: Reason abstractly and quantitatively.
  • MP5: Use appropriate tools strategically.
  • MP6: Attend to precision.
  • MP7: Look for and make use of structure.
  • MP8: Look for and express regularity in repeated reasoning.

Common Core Math:

  • F-IF.1-3: Understand the concept of a function and use function notation
  • F-BF.1-2: Build a function that models a relationship between two quantities
  • F-LE.5: Interpret expressions for functions in terms of the situation they model

Common Core ELA:

  • RST 12.3 - Precisely follow a complex multistep procedure
  • RST 12.4 - Determine the meaning of symbols, key terms, and other domain-specific words and phrases
  • RST 12.7 - Integrate and evaluate multiple sources of information presented in diverse formats and media
  • RST 12.9 - Synthesize information from a range of sources
  • WHST 12.2 - Write informative/explanatory texts, including the narration of historical events, scientific procedures/experiments, or technical processes
  • WHST 12.4 - Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience
  • WHST 12.6 - Use technology, including the Internet, to produce, publish, and update writing products

NGSS Practices:

  • 2. Developing and using models
  • 3. Planning and carrying out investigations
  • 4. Analyzing and interpreting data
  • 5. Using mathematics and computational thinking

NGSS Content:

  • HS-ETS1-2. Design a solution to a complex real-world problem by breaking it down into smaller, more manageable problems that can be solved through engineering.

Essential Questions

  • How can a creative development process affect the creation of computational artifacts?
  • How can computing and the use of computational tools foster creative expression?
  • How can computing extend traditional forms of human expression and experience?
  • How are vastly different kinds of data, physical phenomena, and mathematical concepts represented on a computer?
  • How does abstraction help us in writing programs, creating computational artifacts and solving problems?
  • How are programs used for creative expression, to satisfy personal curiosity or to create new knowledge?
  • How does abstraction make the development of computer programs possible?
  • How do people develop and test computer programs?
  • Which mathematical and logical concepts are fundamental to computer programming?
  • How does computing enable innovation?
  • What are some potential beneficial and harmful effects of computing?
  • How do economic, social, and cultural contexts influence innovation and the use of computing?

Teacher Resources

Student computer usage for this lesson is: required

Students will need earbuds or headphones for these lessons.

EarSketch consists of three components:

The software toolset component includes the EarSketch code editor and digital audio workstation environment to write code and make music. It runs inside a web browser with the latest versions of Chrome, FireFox, or Safari. Internet Explorer is not supported and the digital audio workstation will not load. You must use a browser that supports Web Audio.  (Internet Explorer 12 plans to include support for Web Audio.)

Teachers should review the first two modules of the student curriculum to learn the components of EarSketch: Unit 1 (Getting Started) and Unit 2 (Effects and Beats).

Next, teachers should access the teacher curriculum, which is designed to help computer science teachers with little or no music knowledge begin teaching EarSketch in their classrooms. It presents music concepts, rhythms, pattern and variety, and effects as they relate to music programming in EarSketch. 

Finally, teachers should complete the student curriculum to get an idea of what students will be learning and doing.

Lesson Plan

Section 1 Introduction to EarSketch

Session 1

Getting Started (5 min)

Journal Prompt: What are possible advantages there are to creating and mixing music on a computer?

Responses should be collected from each student and used to create word cloud. Project the following four benefits to programming music and ask, "Are any of these missing?"

  1. You can automate repetitive, tedious tasks.
  2. You can experiment with music more easily.
  3. You can roll die. (Introducing randomization into music.)
  4. You can turn data into music. (What happens if you interpret data in a musical way?)

Students should select one of these four points and record throughts and observations as to their meanings.

Guided Activities (40 min)

Direct students to Unit 1: Getting Started with EarSketch (http://earsketch.gatech.edu/uncategorized/unit-1).

Within the first unit, they should explore the section 1.1. Introduction to the DAW (Digital Audio Workstations) (http://earsketch.gatech.edu/uncategorized/unit-1#chap11). Students should research the following definitions and procedures, then share them with a partner.

Definitions

  1. DAW
  2. measure
  3. track

Procedures

  1. How does one play (run) an EarSketch script?
  2. How does one isolate and play just one track in an EarSketch script?

Once students have completed this task, demonstrate the following sections for them:

  1. 1.3. Anatomy of an EarSketch Project (http://earsketch.gatech.edu/uncategorized/unit-1#chap131). Especially important is the process of creating, opening, running, editing, and saving EarSketch python scripts both on the EarSketch cloud as well as in the classroom.
  2. 1.4. Intro to Music Programming in EarSketch (http://earsketch.gatech.edu/uncategorized/unit-1#chap140). Especially important is the structure of an EarSketch script, the use of constants and variables, and the purpose and usage of fitMedia().

It is important that students know how to use the curriculum and the online development environment as the subsequent sessions will have students working independently with these tools.

Wrap Up (5 min)

Students should reflect on the questions and thoughts they recorded at the beginning of class. They should reflect on the following:

  1. Which questions have been answered?
  2. Which questions remain?
  3. What new questions arose?

Assignment

Assignment 1.1

This assignment can be found within the curriculum resources at Unit 6 > Lesson 1 > EarSketch Units > Unit 1.

 

Session 2

Getting Started (5 min)

Journal: Students should open their Assigment 1.1 (homework from the previous section) and discuss with their elbow partners what they learned while completing it. They should record in their journals two insightful observations made either in the previous session or during the completion of the assignment. Any questions remaining after these discussions should be posted up by students.

Guided Activities (40 min)

Direct students to Unit 2: Effects and Beats (http://earsketch.gatech.edu/uncategorized/unit-2).

Beats & Effects (25 min)

Within the second unit, they should go through each of the following sections and complete the exercises, making the appropriate modifications to the EarSketch script introduced and modified in Unit 1:

  1. 2.1 Intro to Effects (http://earsketch.gatech.edu/uncategorized/unit-2#chap21).
  2. 2.2 Intro to Beats (http://earsketch.gatech.edu/uncategorized/unit-2#chap22).

Once these exercises are completed, students should provide written responses to the following questions:

  1. What is an effect?
  2. How does one use setEffect()?
  3. TASK: Describe beats, meter, and rhythm.
  4. How can strings be used to create custom beat patterns?

Pair Programming (15 min)

Students should work in pairs to complete Quiz 2.1.

Wrap Up (5 min)

Spend some time identifying and responding to issues students might have run into.

Assignment

Students with registered accounts on EarSketch can save and name files in the cloud which simplifies file managment.  Distribute and assign Assignment 2.2.   

 

Session 3

Getting Started (5 min)

Collect: Assignments 1.1 and 2.2

Journal: Students should discuss with their elbow partners the first two assignments, reflecting on the lessons learned and identifying any questions that are lingering. Unresolved questions should be posted on the board.

Guided Activities (40 min)

Some time should be used here to respond to questions students posted at the beginning of the session. If questions are regarding upcoming material, answer these during the next activity.

Unit 3 Exercises & Prompts (25 min)

Direct students to Unit 3: For Loops, User-Defined Functions, Debugging (http://earsketch.gatech.edu/category/unit-3).

Students should individually complete the exercises presented at the end of the following sections:

  1. 3.1 For Loops (http://earsketch.gatech.edu/category/unit-3#chap41).
  2. 3.4 Debugging (http://earsketch.gatech.edu/category/unit-3#chap33).

The Python encountered in these sections should be review. Students should write responses (individually) to the following:

  1. What values are assigned to the variable i by the following Python statement: for i in range(1,10)
  2. What is a fill?
  3. What boolean or logical operators are available in Python?
  4. How can a variable be made to simultaneously hold two values?
  5. TASK: Describe two strategies for debugging programs.

Pair Programming (15 min)

Students should get into pairs and complete Quiz 3.1.

Wrap Up (5 min)

Collect the quiz. Students should share responses to the 5 prompts from earlier in the session. Remind students that they will review Assignment 3.1 at the start of the next class just as they did today for Assignment 2.2.  In the next class, students will collaborate to create the Section 1 project based on EarSketch units 1 - 3.

Assignment

Students should complete Assignment 3.1 for the next session.

 

Session 4

Getting Started (5 min)

Journal: Students should discuss with elbow partners the lessons they learned from session 3 (including the assignment and quiz). Any unresolved questions should be posted to the board.

Guided Activities (40 min)

Before continuing, any questions regarding last session's formative quiz or assignment 3.1 should be answered.

Students should work together to complete the project for units 1 through 3. This project can be found under Unit 6 Resources > Lesson 01 - Earsketch > Projects > Project Unit 1-3_1.docx. The final product should be one working program per group.

Wrap Up (5 min)

Students should reflect on what they liked about cooperating with one another and on what they want to improve in preparation for the upcoming "Create" performance tasks.

Assignment

Students should prepare for the section 1 exam using the assignments, quizzes and EarSketch units 1-3 as resources.

 

Session 5 (Section 1 Assessment)

Getting Started (5 min)

Students should upload their collaborative projects from session 4, including the .wav output of the music they created.

Guided Activities (40 min)

Students will take the section 1 test (units 1-3). The test to be administered can be found at the following location: Unit 6 Resources > Lesson 01 - Earsketch > Section Tests > Unit 1-3 Test.docx.

Time permitting, discuss the current music sharing sight and the ethical issues surrounding public sites. If students require more time to complete their collaborative projects, some could be given here as well.

Wrap Up (5 min)

Going foward, host a version of March Musical Madness. Hold a single elimination tournament to select the class musical section 1 champion.  If going on to sections two and three, consider doing just one round of the contest.  Each week allow pairs to enter their best product either from something newly created or modified.

 

Section 2 Dynamic Music Generation (Optional)

Session 6

Getting Started (5 mins)

Students should brainstorm lessons learned from the first section. Since they will be working in pairs throughout this entire section (excluding the project and the exam), this is a good time to also discuss standards for collaboration and cooperation. Partners and work groups should be specified here.

Notes gathered during this section, along with the EarSketch API documentation, will be allowed for the section 2 exam. This means that students should take good notes and save them in order to increase their scores on the test.

Guided Activities (40 mins)

Unit 4 (25 mins)

Direct students to Unit 4: Lists, Effects in More Detail, Musical Form (http://earsketch.gatech.edu/category/unit-4).

Working in pairs, they should tackle the sections in this unit. 

Formative Assessment (15 mins)

Working in pairs, students should complete Quiz 4. This quiz can be found under resources at the following location:  Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 4.

Wrap Up (5 mins)

Students should identify questions or concerns and share those that they think are most important, supplementing their notes with important comments.

Assignment

Select two assignments from the following list (these assignments can be found under the following: Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 4).

  1. Assignment 4.1 
  2. Assignment 4.2
  3. Assignment 4.3
  4. Assignment 4.4
  5. Assignment 4.5

 

Session 7

Getting Started (5 mins)

Assess student progress from the previous session. Student working groups should identify questions or concerns. It is crucial that major concerns are addressed as soon as possible.

Guided Activites (40 min)

EarSketch API & Unit 5 (25 min)

Introduce the students to the EarSketch API (http://earsketch.gatech.edu/category/learning/reference/earsketch-api). Important is to impart the usefulness of this document - how might somebody take advantage of an API to accomplish a certain task?

After the API has been properly introduced, direct students to Unit 5: Randomness (http://earsketch.gatech.edu/category/unit-5). Working in their groups, students should work through this EarSketch unit.

Formative Assessment (15 min)

Working in pairs, students should complete Quiz 5.1. This quiz can be found under resources at the following location:  Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 5.

Warp Up (5 min)

Students should identify questions or concerns and share those that they think are most important, supplementing their notes with important comments.

Assignment

Select and assign one of the following to assignments (these assignments can be found under the following: Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 5):

  1. Assignment 5.1
  2. Assignment 5.2

 

Session 8

Getting Started (5 mins)

Assess student progress from the previous session. Student working groups should identify questions or concerns, making sure to share all concerns pertaining covered material before the following session.

Guided Activities (40 mins)

Unit 5 (25 min)

Direct students to Unit 6: Sonification (http://earsketch.gatech.edu/category/unit-6).

Working in pairs, they should tackle the sections in this unit. 

Formative Assessment (15 min)

Working in pairs, students should complete Quiz 6.1. This quiz can be found under resources at the following location:  Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 6.

Warp Up (5 min)

Students should identify questions or concerns and share those that they think are most important, supplementing their notes with important comments.

Assignment

Assignment 6.1

This assignment can be found within the curriculum resources at Unit 6 Resources > Lesson 01 - EarSketch > EarSketch Units > Unit 6.

 

Session 9

Getting Started (5 mins)

Assess student progress from the previous session. Student working groups should identify questions or concerns, making sure to share all concerns pertaining covered material before the following session.

Guided Activites (45 mins)

Have your students select and complete (in pairs) one of the following two projects. These projects can be found under Unit 6 Resources > Lesson 01 - EarSketch > Projects:

  1. Project Unit 4-6_1.docx
  2. Project Unit 4-6_2.docx

Assignment

Students should consolidate their notes and prepare for the section 2 exam next session. REMINDER: It is an open note exam.

 

Session 10

Getting Started (5 mins)

Journal: Have students reflect on the ethical concerns raised by digital media innovations such as EarSketch. In their journals, they should write down a specific ethical issue associated with the use of EarSketch. They should also point out one additional piece of online technology that raises digital media related ethical concerns.

Guided Activity (40 mins)

Distribute and administer the section 2 exam. This exam can be found at the following location: Unit 6 Resources > Lesson 01 - EarSketch > Section Tests > Unit 4-6 Test.docx.

Wrap Up (5 mins)

Host a version of March Musical Madness. Hold a single elimination tournament to select the class musical section 2 champion. If going on to section three, consider doing just one round of the contest. Each week allow pairs to enter their best product. It can be derived from the in-class work or be a completely new, out-of-class creation.

 

Section 3 Teaching Computers to Listen (Optional)

Section 3 is optional and is anticipated to also take about 5 sessions to complete these EarSketch units.  Students should be working very independently during this unit in prepartion for the Create Task.

11 EarSketch Unit 7: Teaching Computers [1 session]

12 EarSketch Unit 9: Recursion [1 session]

13 Project 3 [2 sessions]

14 Summative Assessment

Session 11:

Getting Started

 

Guided Activities

Unit 7: Teaching Computers

 

Formative Assessment

Quiz 7.1.docx

Assignment:

7.1

Wrap Up:

In pairs. then study groups students identify questions or concerns and share those they think are most important and supplement their notes with important comments.

 

Session 12:

Getting Started

Assess student progress from Session 11.  Groups identify questions or concerns and share any items of concern before day 2 of this section.

 

Guided Activities

Unit 9: Recursion

Formative Assessment

Quiz 9.1

Assignment:

9.1

Wrap Up:

In pairs. then study groups students identify questions or concerns and share those they think are most important and supplement their notes with important comments.

 

 

Session 13 and 14:

Getting Started

Assess student progress from Session 12.  Groups identify questions or concerns and share any items of concern before days 3 and 4 of this section. 

 

Guided Activities

Project Unit 7-9_1.docx

Project Unit 7-9_2.docx

 

Assignment:

Prepare for Section 3 exam.

Wrap Up:

In pairs. then study groups students identify questions or concerns and share those they think are most important and supplement their notes with important comments.

 

 Session 15:

Guided Activities

Unit 7-9 Test.docx

Wrap Up:

Host a version of March Musical Madness.  Hold a single elimination tournament to select the class musical Section 2 champion.  If going on to three consider doing just one round of the contest.  Each week allow pairs to enter their best product either from somethnnewly created or modified.

Assignment:

None

 


Evidence of Learning

Formative Assessment

Section 1:  

Quiz 1.4-1, 1.4.2, 2.1-1, 2.1.2, 3.1, 3,2 and 3.3

 

Section 1:  

Quiz 4, 5.1 and 6.1

 

Section 1:  

Quiz 7.1 and 9.1

 


Summative Assessment

Section 1:  

Project Unit 1-3_1 and Unit 1-3 Test 

 

Section 2:

Project Unit 4-6_1 and Unit 4-6 Test

 

Section 3:

Project Unit 7-9_1 and Unit 7-9 Test 

Lesson Summary

Summary

In this lesson, students will be formally introduced to data visualization using Bokeh: an interactive data visualization library in Python. They will go through a guided tour of how to use this library, and then will complete a fun activity that involves gathering data from their classmates for the purposes of visualization.  

Outcomes

Students will learn why data visualization is important.

Students will be able to meaningfully visualize data they collect. 

Overview

Session 1 (Line/Bar Graphs):

  • Warm-up - Data acquisition (5 Minutes)
  • Guided Tour - iPython notebook / Powerpoint - (15 minutes)
  • Activity - Plotting data (30 minutes)
  • Wrap-up - Exit slip (5 minutes)

Session 2 (High-level charts):

  • Warm-up - Data acquisition (5 Minutes)
  • Guided Tour - iPython notebook / Powerpoint (15 minutes)
  • Activity - Plotting with high-level charts (30 minutes)
  • Wrap-up - Exit slip (5 minutes)

Learning Objectives

CSP Objectives

Big Idea - Programming
  • EU 5.1 - Programs can be developed for creative expression, to satisfy personal curiosity, to create new knowledge, or to solve problems (to help people, organizations, or society).
    • LO 5.1.1 - Develop a program for creative expression, to satisfy personal curiosity, or to create new knowledge. [P2]
    • LO 5.1.2 - Develop a correct program to solve problems. [P2]
  • EU 5.3 - Programming is facilitated by appropriate abstractions.
    • LO 5.3.1 - Use abstraction to manage complexity in programs. [P3]

Teacher Resources

Student computer usage for this lesson is: required

  • Power Point presentations: "session1.pptx," "session2.pptx"
  • iPython notebooks: "BokehTutorialLesson1_a.ipynb"

Lesson Plan

Session 1

Warm-up (5 minutes)

Come up with 4-5 questions that make sense when visualized with a line graph or bar graph, such as:

  • When do you usually do your homework? 
  • What time do you wake up in the morning on a weekday?
  • What time do you wake up in the morning on the weekend?
  • etc.

Enlist the help of your students in coming up with the questions. Present all questions at the start of this lesson, and solicit answers to each question from each student. These answers will be used later in the lesson, so make sure to collect them in a table-like format such as ".csv"

It is reccommended that you create a Google Form to collect answers to these questions with. You could then ask your entire school to fill out the survey, and have even more data to visualize! 

Guided Tour (15 Minutes)

Use the existing iPython Notebook to introduce Bokeh. Explain data visualization. Have the students follow along as you show them how Bokeh line plotting works, have them attempt the exercise at the end of the notebook. 

Activity (30 Minutes)

Using the data that was collected at the beginning of class, determine the best way to plot the information collected at the beginning of class. Then, plot it! See if you can come up with cool trends by plotting data on the same chart, etc.

Exit Ticket (5 minutes)

Simple exit slip, ask the students what data visualization is, why it is important, how to construct a line graph in Bokeh, etc.

 

Session 2

Warm-up (5 minutes)

Gather data in a similar fashion as the last session. Ask questions of your class / school that make for interesting visualizations. 

Guided Tour (15 Minutes)

Use the powerpoint provided to briefly discuss the high-level charts available in Bokeh.

Activity (30 Minutes)

Have the students use any of the high-level charts to plot the data that was collected in the warm-up.

Exit Ticket (5 minutes)

Ask a simple question about any of the plotting mechanisms covered.  


Lesson Summary

Summary 

Continuing the focus on data analysis from Unit Five, students will use the browser-based Dataquest learning environment (http://www.dataquest.io) and supplementary materials to explore more ways in which Python can be used to analyze data. For the first week, students will explore Dataquest through the browser-based "missions" on the website. Each lesson begins with a warm-up/journal entry, and students then spend the rest of the time working through the missions at their own pace.  For the second part of the lesson, students will design and implement their own data analysis project in order to prepare them to complete a data-focused Create Performance task.

Outcomes

  • Students will understand how to design a data analysis project
  • Students will have the tools to analyze data in Python
  • Students will have practice reading and understanding datasets

Overview

Week One: Learning Dataquest

  1. Warm-Ups (5 - 10 min)
  2. Independent Study (40 - 45 min)

Week Two: Data Analysis Project

  1. Students Plan and Implement Data Analysis Program

 

Learning Objectives

CSP Objectives

Big Idea - Creativity
  • EU 1.1 - Creative development can be an essential process for creating computational artifacts.
    • LO 1.1.1 - Apply a creative development process when creating computational artifacts. [P2]
  • EU 1.2 - Computing enables people to use creative development processes to create computational artifacts for creative expression or to solve a problem.
    • LO 1.2.2 - Create a computational artifact using computing tools and techniques to solve a problem. [P2]
    • LO 1.2.4 - Collaborate in the creation of computational artifacts. [P6]
Big Idea - Abstraction
  • EU 2.2 - Multiple levels of abstraction are used to write programs or create other computational artifacts.
    • LO 2.2.1 - Develop an abstraction when writing a program or creating other computational artifacts. [P2]
Big Idea - Data
  • EU 3.1 - People use computer programs to process information to gain insight and knowledge.
    • LO 3.1.1 - Find patterns and test hypotheses about digitally processed information to gain insight and knowledge. [P4]
    • LO 3.1.2 - Collaborate when processing information to gain insight and knowledge. [P6]
    • LO 3.1.3 - Explain the insight and knowledge gained from digitally processed data by using appropriate visualizations, notations, and precise language. [P5]
  • EU 3.2 - Computing facilitates exploration and the discovery of connections in information.
    • LO 3.2.1 - Extract information from data to discover and explain connections or trends. [P1]
    • LO 3.2.2 - . Determine how large data sets impact the use of computational processes to discover information and knowledge. [P3]
Big Idea - Algorithms
  • EU 4.1 - Algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages.
    • LO 4.1.1 - Develop an algorithm for implementation in a program. [P2]
    • LO 4.1.2 - Express an algorithm in a language. [P5]
Big Idea - Programming
  • EU 5.1 - Programs can be developed for creative expression, to satisfy personal curiosity, to create new knowledge, or to solve problems (to help people, organizations, or society).
    • LO 5.1.2 - Develop a correct program to solve problems. [P2]
    • LO 5.1.3 - Collaborate to develop a program. [P6]
  • EU 5.5 - Programming uses mathematical and logical concepts.
    • LO 5.5.1 - Employ appropriate mathematical and logical concepts in programming. [P1]

Teacher Resources

DataQuest.io website: https://www.dataquest.io/learn

Week One Materials: Unit 6 Resources -> DataQuest.io -> Week One Lesson Materials -> Mission #

Week Two Materials:

Datasets: Unit 6 Resources -> Dataquest.io - > Week Two Project Datasets and Materials -> Datasets

Sample Project: Unit 6 Resources -> Dataquest.io - > Week Two Project Datasets and Materials -> Sample Project

Project Rubric: Unit 6 Resources -> Dataquest.io - > Week Two Project Datasets and Materials -> "Data Analysis Project Rubric"

(Quizzes for Week One and Week Two are in the corresponding teacher-only resource folders)

 

 

Lesson Plan

Week One: Learning Dataquest

Note: all worksheets and quizzes can be found in the teacher-only resource folder, Unit Six -> DataQuest.io -> Week One Lesson Materials -> Mission #

Directions for working in Dataquest.io

  1. Each student will first need to create an account on Dataquest.io. This is free, and will help them to keep track of their progress.
  2. Each mission comes with a worksheet with required sections to complete. Students are encouraged to fill out as much as possible. The non-required sections are introductions to basic coding tools. Some students may want to do these if they need a refresher on the concepts. 
    • Note: As of now, sections cannot be skipped on the website. This limitation may change in the future.
  3. Once they have completed the worksheet for the mission, students will use the notes on their worksheets to complete:
    1. concept quiz to test their understanding of the data science concepts.
    2. coding quiz to test their understanding of the Python concepts.

Quizzes should be done in class, and should take a minimum of 10-20 minutes to complete. It is advisable to not give a quiz out in the last ten minutes of class. If there are only a few minutes left, the student can use the time to add to their notes.

If a student fails one of the quizzes, they may be given the chance to go back and add to their worksheet before attempting the quiz again. (Multiple versions of all coding quizzes are available.)

There are a total of four Missions for the Introduction to Python track. Students are only required to do the first three. The fourth Mission has worksheets/quizzes for those students who get to it, and can be counted as extra credit/normal grade at the teacher’s discretion. Two additional optional missions are available: one on data visualization, and one on working with statistics.

Warm Ups (5 - 10 min)

Day 1

Show the first two minutes of the introductory video in Mission 1 on the Dataquest.io website. Students will discuss their reactions and thoughts about Data Science.

Day 2

Pull up d3js.org on the projector. This is the webpage for a data visualization library in Javascript that has many great examples of ways to make connections from data. You can explore by clicking on one of the tiles on the front page. Explore the D3 front page with the class and discuss reactions.

Day 3

This warm-up time is used for class discussion on progress through the missions. You can use this time to gauge the students' comfort with Python concepts by having students vote with their heads down. If enough students are having trouble, you may want to have a separate review session during the class.

Day 4

This warm-up time can be used for reviewing a Python concept (such as Dictionaries) or looking at a current news article involving data analysis (any article about a topic of interest to the students that uses statistics would be appropriate). Students should think-pair-share on additional ways in which data could be used.

Day 5

Students should do a show of hands to see where everyone is in the missions. The class should have a general discussion about progress.

 

Week Two: Data Analysis Project

Note: All materials for this section can be found in Unit 6 Resources -> Dataquest.io - > Week Two Project Datasets and Materials

Directions: 

For this week, students will be pairing up to create and implement a data analysis program of their own design.

  • Teachers start out the first day by presenting the PowerPoint "Project Introduction," which goes through the steps to creating a data analysis project. Teachers then review the "Data Analysis Project Directions" document.
  • The class splits up into groups of two (with up to one group of three) and each group chooses a dataset to work with. It is preferable if each group chooses a different dataset.

For the rest of the week, students should work on their projects in their groups. At the end, teachers can optionally have them present their PowerPoints to the class, exchange presentations in pairs, or merely turn everything in.


Evidence of Learning

Formative Assessment

  • Week One quizzes
  • Check for understanding at the beginning of each day of week one.

Summative Assessment

Week two project.