Dance Party
Experience: 1st year, 1st quarter
Practice: Developing and Using Abstractions, Creating computational artifacts, Testing and refining computational artifacts, and Communicating about computing
Concept: Control and Algorithms
Length: 40+
Overview and Purpose
Coders use the start on green flag block to create a silly dance party using motion blocks. The purpose of this project is to introduce young coders to adding sprites in code and triggering algorithms with the green flag in ScratchJr.
Preparation (At least one day prior)
Suggested preparation
Ensure all devices are plugged in for charging over night.
(10+ minutes)
Read through each part of this lesson plan and decide which sections the coders you work with might be interested in and capable of engaging with in the amount of time you have with them. If using projects with sound, individual headphones are very helpful.
Resources for learning more
-
- Videos and tips on ScratchJr from our YouTube channel
-
- Videos and tips on facilitating coding classes from our YouTube channel
-
- A document that describes each of the blocks used in ScratchJr
-
- A reference guide that introduces the ScratchJr interface
-
- A reference guide that introduces features in the paint editor
-
- Learn even more tips and hints by the creators of the app
Coding as another language (CAL)
- A set of curriculum units for K-2 using both ScratchJr and KIBO robotics
-
- If you’re using ScratchJr in Scratch, this playlist provides helpful tips and resources
Getting Started (7+ minutes)
Suggested sequence
- Review and demonstration (5+ minutes):
Begin by asking coders to talk with a neighbor for 30 seconds about something they learned last time; assess for general understanding of the practices and concepts from the previous project.
Review how to open Scratch and create a new project. Review using motion and control blocks to make Scratch Cat dance.
Explain to the class that we are going to add some more sprites (characters) to dance with Scratch Cat. Demonstrate pressing the plus sign on the left and finding another sprite; think out loud that you need to click the checkmark after you’ve selected your sprite. Repeat this process again with another sprite, then think out loud that you’ve changed your mind and you’re going to delete a sprite.
Demonstrate deleting a sprite by pressing and holding on a sprite (without wiggling your finger), then pressing the red delete button that appears. Ask the class what the steps are for deleting a sprite to quickly review.
Resources, suggestions, and connections
Practices reinforced:
- Communicating about computing
Video: Project Preview (0:36)
Video: Adding and deleting sprites (1:04)
Video: Lesson pacing (1:48)
Example review discussion questions:
- What’s something new you learned last time you coded?
- Is there a new block or word you learned?
- What’s something you want to know more about?
- What’s something you could add or change to your previous project?
- What’s something that was easy/difficult about your previous project?
Demonstration suggestion: When selecting a sprite, you could give a couple of options and have the class quietly vote with thumbs up or thumbs down.
Note: Younger coders might have difficulty deleting a sprite as they tend to slide their finger once they tap down. This may simply take some practice and patience.
2. Quick review (2+ minutes):
Have coders quickly review with a neighbor how to add in sprites and how to delete a sprite.
After the discussion, coders will begin adding sprites to their project as a class, in small groups, or at their own pace.
Practices reinforced:
- Communicating about computing
Note: Discussions might include full class or small groups, or individual responses to discussion prompts. These discussions which ask coders to predict how a project might work, or think through how to create a project, are important aspects of learning to code. Not only does this process help coders think logically and creatively, but it does so without giving away the answer.
Example discussion questions:
- Where do you press to add another sprite?
- How do you delete a sprite?
- Can you delete a sprite if your finger wiggles while you press and hold?
Project Work (40+ minutes; 1+ classes)
Suggested sequence
3. Adding in sprites (5+ minutes):
Set an amount of time for coders to look through the different sprites and add at least a few sprites into their project. Facilitate by walking around and asking questions and encouraging exploration.
Resources, suggestions, and connections
Facilitation suggestion:
Narrate out loud some of the themes that emerge as you walk around and look at projects. Give some ideas of what kind of dance party coders might create; for example, a dance party in space, a spooky dance party, an old person dance party, etc.
4. Creating our dance party with trigger blocks (30+ minutes):
8+ minute demonstration and discussion
Once coders have at least a couple sprites added, bring everyone back together as a group. Tell the class we’re going to have a three second dance party when you tap your hand on your head, and then everyone is going to freeze when you raise your hands in the air; practice this one or two times.
Ask what event caused them to dance (hand on head) and what event caused them to freeze (hands in the air).
Tell the class we’re going to change the algorithm so that when you put your hand on your head everyone is going to jump three times and then stop; practice this a couple of times.
Select a sprite and demonstrate how to make it jump three times when you press the green flag (using the start on green flag block); practice having the class jump with the sprite.
Ask everyone to think back to when we first danced and recall if everyone had the same dance or if some of the dances were different. Demonstrate how we can switch to another sprite and give them their own code to dance to. Think out loud how you want to make sure to include a start on green flag block; demonstrate pressing the green flag so multiple sprites dance.
22+ minute coding time and 1-on-1 facilitating
Ask coders to create a dance party where sprites use repeat blocks and coders change the parameters in the motion blocks. Facilitate by walking around and asking questions and encouraging coders to make it so each sprite dances in their project when the green flag is pressed.
Standards reinforced:
- 1A-AP-10 Develop programs with sequences and simple loops, to express ideas or address a problem
Practices reinforced:
- Communicating about computing
- Developing and using abstractions
- Testing and refining computational artifacts
- Creating computational artifacts
Concepts reinforced:
- Algorithms
- Control
Video: Trigger blocks (1:28)
5. Where are they dancing? (5+ minutes):
2+ minute demonstration
Bring the class together again and demonstrate how to add a background.
3+ minute coding time and 1-on-1 facilitating
Give them time to add their own backgrounds and continue to work on their dances as long as time allows. Facilitate by walking around and asking questions about where sprites might dance and encouraging exploration of new algorithms.
Practices reinforced:
- Creating computational artifacts
Assessment
Standards reinforced:
- 1A-AP-15 Using correct terminology, describe steps taken and choices made during the iterative process of program development
Practices reinforced:
- Communicating about computing
Although opportunities for assessment in three different forms are embedded throughout each lesson, this page provides resources for assessing both processes and products. If you would like some example questions for assessing this project, see below:
Summative (Assessment of Learning)
The debugging exercises, commenting on code, and projects themselves can all be forms of summative assessment if a criteria is developed for each project or there are “correct” ways of solving, describing, or creating.
For example, ask the following after a project:
- Can coders debug the debugging exercises?
- Did coders create a project similar to the project preview?
- Note: The project preview and sample projects are not representative of what all grade levels should seek to emulate. They are meant to generate ideas, but expectations should be scaled to match the experience levels of the coders you are working with.
- Did coders change the parameters in the motion blocks and can they predict how each sprite will dance?
- Did coders add repeats to their algorithms and can they explain how each sprite will dance?
- Did coders create algorithms to make at least ## sprites dance?
- Choose a number appropriate for the coders you work with and the amount of time available.
Formative (Assessment for Learning)
The 1-on-1 facilitating during each project is a form of formative assessment because the primary role of the facilitator is to ask questions to guide understanding; storyboarding can be another form of formative assessment.
For example, ask the following while coders are working on a project:
- What are three different ways you could change that sprite’s algorithm?
- What happens if we change the order of these blocks?
- What could you add or change to this code and what do you think would happen?
- How might you use code like this in everyday life?
- See the suggested questions throughout the lesson and the assessment examples for more questions.
Ipsative (Assessment as Learning)
The reflection and sharing section at the end of each lesson can be a form of ipsative assessment when coders are encouraged to reflect on both current and prior understandings of concepts and practices.
For example, ask the following after a project:
- How is this project similar or different from previous projects?
- What new code or tools were you able to add to this project that you haven’t used before?
- How can you use what you learned today in future projects?
- What questions do you have about coding that you could explore next time?
- See the reflection questions at the end for more suggestions.