Please pardon our progress while we refine the look and functionality of our new ALEX site! You can still access the old ALEX site at alex.asc.edu. If you would like to share feedback or have a question for the ALEX Team, you can use the contact form here, or email us directly at administrator@alex.state.al.us.

### Overview

This lesson extends the drawing skills to include width and height and introduces the concept of random number generation. The class learns to draw with versions of the ellipse() and rect() that include width and height parameters and to use the background() block to fill the screen with color. At the end of the progression, the class is introduced to the randomNumber() block and uses the new blocks to draw a randomized rainbow snake.

Note: You will need to create a free account on code.org before you can view this resource.

## UP:DLCS18.6.2

• process
• function

### Knowledge

Students know:
• that often people seek to simplify processes; rather than listing all of the steps needed to take a shower, one simply uses the function "shower".

### Skills

Students are able to:
• combine or join steps such as algorithms to create a function.

### Understanding

Students understand that:
it is simpler and less confusing to identify processes rather than steps.

## UP:DLCS18.6.6

### Vocabulary

• computational thinking

### Knowledge

Students know:
• how to define the problem.
• how to plan solutions.
• how to implement a plan.
• how to reflect on the results and process.
• how to iterate through the process again.

### Skills

Students are able to:
• identify the steps involved with formulating problems and solutions in a way that can be represented or carried with or without a computer.

### Understanding

Students understand that:
• computational thinking is formulating problems and solutions in a way that can be represented or carried out with or without a computer.

## UP:DLCS18.6.R6

### Knowledge

Students know:
• feedback is important in a design process.

### Skills

Students are able to:
• create a multimedia artifact.
• critique the work of others.
• revise their work based on feedback received.

### Understanding

Students understand that:
• much like the writing process, design of a multimedia artifact nets the best results when creators have the opportunity to be given feedback and revise as needed.

## UP:DLCS18.7.5

### Vocabulary

• computational thinking

### Knowledge

Students know:
• smaller tasks are easier to solve than complex problems.
• that trends in data can also speed up the problem-solving process.

### Skills

Students are able to:
• abstract portions of the problem and focus on smaller tasks to aid in solving a complex problem.

### Understanding

Students understand that:
• complex problems can be overwhelming.
• by decomposing the complex problem into simpler problems, a solution is easier to reach.

## UP:DLCS18.7.R5

• curate

### Knowledge

Students know:
• how to find valid sources and cite those sources to answer a given research topic.

### Skills

Students are able to:
• locate valid digital resources to answer given research questions.

### Understanding

Students understand that:
• a great deal of information is available.
• it is important to validate the information and to cite the source of the information.

## UP:DLCS18.8.2

### Vocabulary

• function
• abstraction

### Knowledge

Students know:
• abstraction is the process of removing unessential details (color, size, etc.
• ).

### Skills

Students are able to:
• recognize when abstraction has been employed in a program or function.

### Understanding

Students understand that:
• because code can be so complex, it is often in a programmer's best interest to simplify tasks to include only essential elements.

## UP:DLCS18.8.3

• algorithm
• sequence
• selection
• iteration

### Knowledge

Students know:
• how to use a programming language to create algorithms that make use of sequencing, selections, or iterations.

### Skills

Students are able to:
• create programs to make use of sequencing, selections, or iterations.

### Understanding

Students understand that:
• each programming language has a unique way of making use of sequencing, selections, and iterations in algorithms.

## UP:DLCS18.8.R6

### Knowledge

Students know:
• feedback is important in a design process.

### Skills

Students are able to:
• create a multimedia artifact.
• critique the work of others.
• revise their work based on feedback received.

### Understanding

Students understand that:
• much like the writing process, design of a multimedia artifact nets the best results when creators have the opportunity to be given feedback and revise as needed.

### CR Resource Type

Lesson/Unit Plan

### Resource Provider

Code.org
Accessibility