top of page
AdobeStock_1564688377.jpg

The Making of a Song

EarSketch Remix Lab for the 2020 Ciara Remix Competition
Module 3 of 3

This 50-minute module will introduce students to the EarSketch Platform and provides an understanding of what it means to create a “remix” song using the EarSketch Platform.

 

By the end of this module, students should be able to create sections and structure their songs using functions and add special sound effects.

Jump to section:

Objectives

  • Identify sections of a song and differentiate between the chorus, verses and transitions in a song.

  • Compose a song using the common A-B-A song form using contrast between sections.

  • Understand how custom functions make a more efficient code by comparing examples of code with and without functions.

  • Create sections of the song using functions.

  • Learn how to code each function so it plays each sound clip for the desired measures.

  • Add special sound effects (volume, distortion, delays, fades) into the song to integrate additional variation

  • Learn additional tools in EarSketch to create music that is dynamic and interactive with the listener.

  • Review and debug their code to prepare their song for final submission.

AdobeStock_961791516.jpg

Computer Science Standards

CSP Standards

  • 5.3 Programming is facilitated by appropriate abstractions

  • 5.3.1 Use abstraction to manage complexity in programs. [P3]

  • 5.3.1A Procedures are reusable programming abstractions.

  • 5.3.1B A function is a named grouping of programming instructions.

  • 5.3.1C Procedures reduce the complexity of writing and maintaining programs.

  • 5.4.1 Evaluate the correctness of a program. [P4]

  • 5.4.1D Longer code blocks are harder to reason about than shorter code blocks in a program.

  • 5.4.1E Locating and correcting errors in a program is called debugging the program.

  • 5.4.1F Knowledge of what a program is supposed to do is required in order to find most program errors.

 

AP CSP Essential Knowledge

  • EK 5.3.1A Procedures are reusable programming abstractions

  • EK 5.3.1B A procedure is a named grouping of programming instructions.

  • EK 5.3.1C Procedures reduce the complexity of writing and maintaining programs

  • EK 5.3.1D Procedures have names and may have parameters and return values.

  • EK 5.3.1F Parameters generalize a solution by allowing a procedure to be used instead of duplicated code.

  • EK 5.3.1G Parameters provide different values as input to procedures when they are called in a program

  • EK 5.3.1L Using lists and procedures as abstractions in programming can  result in programs that are easier to develop and maintain.

  • EK 5.4.1B Duplicated code can make it harder to reason about a program

  • EK 5.4.1D Longer code segments are harder to reason about than shorter code segments in a program.

AdobeStock_961791516.jpg
AdobeStock_1564688377.jpg

Curriculum Materials

None currently available

bottom of page