Intro to CS curriculum intro and first lesson (#421)
This commit is contained in:
committed by
Peli de Halleux
parent
bc786c1ea5
commit
90f5242dd1
49
docs/courses/csintro/making/design-thinking.md
Normal file
49
docs/courses/csintro/making/design-thinking.md
Normal file
@ -0,0 +1,49 @@
|
||||
# Unplugged: Design Thinking
|
||||
|
||||

|
||||
|
||||
**Objective:** To introduce a process of design that starts with talking to one another. Whatever you build with code should serve a purpose or fill a need. Sometimes what you build will make the world more beautiful, or help somebody else. Our design process, based on a process called design thinking, can give students a specific framework for thinking purposefully about design.
|
||||
|
||||
**Overview:** In this activity, students will interview each other about their ideal pet. They should take notes.
|
||||
The first step in coding by design involves understanding someone else’s need. Then, you can create prototypes that get you closer and closer to the best solution.
|
||||
|
||||
**Materials:** Pairs of students, something to take notes on
|
||||
|
||||
**Getting started:**
|
||||
Pair students up with each other. One is Student A, the other is Student B. The goal of this activity is to gather information from their partner that will help them to design a Micro:bit pet for their partner.
|
||||
|
||||
**5 minutes:** Student A interviews Student B. The goal is to find out what Student B considers to be their ideal pet. Student A should mostly listen, and ask questions to keep Student B talking for the entire time. Here are some questions to start with:
|
||||
|
||||
* Do you have a pet? What is it?
|
||||
* What do you like about your pet? What do you dislike?
|
||||
* Is there anything you wish your pet could do? Why?
|
||||
* Tell me about your ideal pet.
|
||||
|
||||
**5 minutes:** Student B interviews Student A, as above.
|
||||
|
||||
The goal is to find out more about your partner by asking questions. Try to ask “Why?” as much as possible. Your partner will tell you about his or her ideal pet, but you are really finding out more about your partner’s likes and dislikes. When we design, we create real things for real people. So we need to start with understanding them first.
|
||||
|
||||
**5 minutes:** Student A and Student B review their notes, and circle anything that seems as if it will be important to understanding how to create the ideal pet for their partner. Circle ideas, advice, anything that could be helpful when they start building. Then, they should use what they have discovered about their partner to fill in the blanks:
|
||||
|
||||
"My partner needs a `__________________` because `__________________`."
|
||||
|
||||
This definition statement should draw some conclusions about their partner's need based on the conversation they have had with that person.
|
||||
|
||||
**5 minutes:** Student A and Student B sketch at least 5 ideas of pets that would meet their partner's needs. Stick figures and diagrams are okay. At this point, quantity is more important than quality. Students shouldn't limit themselves to real animals; unicorns and mashups are totally fine!
|
||||
|
||||
Make sure students keep their notes and sketches! They will use them in the project for this lesson.
|
||||
|
||||
## Examples
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
|
69
docs/courses/csintro/making/install-a-program.md
Normal file
69
docs/courses/csintro/making/install-a-program.md
Normal file
@ -0,0 +1,69 @@
|
||||
# Activity: Installing a program
|
||||
|
||||
**micro:bit activity:** Installing a Microsoft MakeCode Program on the micro:bit
|
||||
|
||||
**Objective:** Learn how to download programs from the MakeCode tool.
|
||||
|
||||
**Overview:** Students will create a simple program in Microsoft MakeCode and download it to their micro:bit using a USB cable.
|
||||
|
||||
For this activity, students will each need a micro:bit, a micro-USB cable, a computer, and a battery pack.
|
||||
|
||||

|
||||
|
||||
Download this file to your computer (right-click, Save As):
|
||||
|
||||
[**MicroPet program**](/static/courses/csintro/making/microbit-micropet.hex)
|
||||
|
||||
Open a browser window to [makecode.com](http://makecode.com), and select the micro:bit code editor
|
||||
|
||||

|
||||
|
||||
From the top left corner of the screen, select the **Projects** Menu, and click on **Import File**. Select the file that you saved on your computer in the previous step.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
The program should look like the following in MakeCode.
|
||||
It shows a repeating series of faces:
|
||||
|
||||
```blocks
|
||||
basic.forever(() => {
|
||||
basic.showIcon(IconNames.Happy)
|
||||
basic.pause(5000)
|
||||
basic.showIcon(IconNames.Sad)
|
||||
basic.pause(5000)
|
||||
})
|
||||
```
|
||||
|
||||
See the [**MicroPet**](https://makecode.microbit.org/_38yJ1PAkuKPV) project online.
|
||||
https://makecode.microbit.org/_38yJ1PAkuKPV
|
||||
## Tour of Microsoft MakeCode
|
||||
|
||||
* **Simulator** - on the left side of the screen, you will see a virtual micro:bit that will show what your program will look like running on a micro:bit. This is helpful for debugging, and instant feedback on program execution.
|
||||
* **Toolbox** - in the middle of the screen, there are a number of different categories, each containing a number of blocks that can be dragged into the programming workspace on the right.
|
||||
* **Workspace** - on the right side of the screen is the Programming Workspace where you will create your program. Programs are constructed by snapping blocks together in this area.
|
||||
|
||||

|
||||
|
||||
The color of the blocks identifies their category. All of the blocks that make up the program above come from the **Basic** Toolbox category, which is light blue.
|
||||
|
||||
## Downloading a MakeCode program to the micro:bit
|
||||
|
||||
To download the file to your micro:bit, you must connect it to your computer’s USB port using a micro-USB cable. The micro:bit will draw power from your computer through the USB connection, or you can connect an optional battery pack so it can function even after it is unplugged from the computer. Once plugged in, the micro:bit shows up on your computer like a USB flash drive.
|
||||
|
||||

|
||||
|
||||
Click the purple Download button in the lower left of the MakeCode screen. This will download the file to your computer, to the location where your browser is set to save downloads.
|
||||
|
||||

|
||||
|
||||
To move the program to your micro:bit, drag the downloaded "microbit-xxxx.hex" file to the MICROBIT drive, as if you were copying a file to a flash drive. The program will copy over, and it will begin running on the micro:bit immediately.
|
||||
|
||||

|
||||
|
||||
The micro:bit will hold one program at a time. It is not necessary to delete files off the micro:bit before you copy another onto the micro:bit; a new file will just replace the old one.
|
||||
|
||||
For the next project, your students should attach the battery pack (it takes 2 AAA batteries) to the micro:bit using the white connector. That way they can build it into their design without having to connect it to the computer.
|
||||
|
||||

|
51
docs/courses/csintro/making/making-with-microbit.md
Normal file
51
docs/courses/csintro/making/making-with-microbit.md
Normal file
@ -0,0 +1,51 @@
|
||||
# Making with micro:bit
|
||||
|
||||
This Lesson introduces the micro:bit as a piece of hardware that has a specific size and weight, and
|
||||
generally must be supported and incorporated as an essential component of a tangible artifact. Focus
|
||||
on incorporating the physical micro:bit into a basic making activity.
|
||||
|
||||

|
||||
|
||||
## Lesson Objectives
|
||||
Students will...
|
||||
|
||||
* Exercise creativity and resourcefulness by coming up with ideas for using simple household materials to accommodate the micro:bit’s size and weight in many different ways.
|
||||
* Test and iterate using different materials and sizes in order to create an optimal design to house the micro:bit and battery pack
|
||||
* Learn how to download programs and move them to the micro:bit file to run on the micro:bit.
|
||||
* Use the design thinking process to develop an understanding for a problem or user need.
|
||||
* Apply their understanding in a creative way by making a “micro:pet” creature.
|
||||
|
||||
## Lesson Plan Structure
|
||||
|
||||
* Introduction: The micro:bit is for making
|
||||
* Unplugged Activity: Design Thinking
|
||||
* micro:bit Activity: MakeCode download
|
||||
* Project: Micro:pet
|
||||
* Project Mods
|
||||
* Assessment: Rubric
|
||||
* Standards: listed
|
||||
|
||||
## Introduction
|
||||
|
||||
The micro:bit is a great way to teach the basics of programming and computer science. The Microsoft MakeCode block-based coding environment is a powerful and intuitive way to make the micro:bit react to all sorts of input, and you can introduce fundamental concepts such as iteration, conditional statements, and variables using MakeCode.
|
||||
|
||||
Students often focus primarily on the 5x5 LED screen for providing output. Although this is the most directly accessible way to see a reaction to some kind of input, there are many more creative possibilities when you encourage your students to see the micro:bit as a “brain” that can control physical, tangible creations.
|
||||
|
||||
These creations don’t have to be complex or highly technical. It’s great to have students building with common household supplies. Because the micro:bit is so lightweight, and supports so many sensors, it can be incorporated easily into a physical design as long as students plan ahead for its size and weight. One of the first questions you might ask students is “Where does the micro:bit fit in your creation?”
|
||||
|
||||
In this first lesson’s project, we focus on making something creative that features the micro:bit as its “face”. We purposely start this course with a lesson on Making and the physical nature of the micro:bit, because it is important to set the tone for the whole course that this is a class about making, building, crafting and construction. It helps if you have an art room available where kids can work, or arts and crafts supplies in your classroom that kids can use to build.
|
||||
|
||||
Some common making supplies to gather:
|
||||
|
||||
* pizza boxes
|
||||
* scrap cardboard
|
||||
* colored construction paper
|
||||
* colored duct tape
|
||||
* scissors
|
||||
* pipe cleaners
|
||||
* stickers
|
||||
* feathers
|
||||
* string
|
||||
* markers
|
||||
|
||||

|
69
docs/courses/csintro/making/micropet.md
Normal file
69
docs/courses/csintro/making/micropet.md
Normal file
@ -0,0 +1,69 @@
|
||||
# Project: Micro:pet
|
||||
|
||||
## Project
|
||||
|
||||
This project is an opportunity for students to create a micro:pet for the partner they interviewed in the Unplugged activity. They should review their notes and try to summarize what their partner finds appealing in a pet. Then, they should use whatever materials are available to create a prototype of a pet their partner would like.
|
||||
|
||||
We often ask students to sketch a few designs on paper first, then consult with their partner to see which aspects of those designs they find most appealing. The purpose of prototyping is to gather more feedback to help you in your final design (“I like this part from Idea A, and I like this part from Idea B…”)
|
||||
|
||||
Build a micro:pet that:
|
||||
* Matches your partner’s needs
|
||||
* Supports the micro:bit and its battery pack
|
||||
* Allows you to easily access the micro:bit to turn it on and off
|
||||
|
||||
Your design should use whatever materials are available to support the micro:bit so that its face is showing. You can be creative and decide how to mount the board, and how to decorate your critter.
|
||||
|
||||
Think about the following questions when you construct it:
|
||||
* Will it be an animal? A plant? A robot? A bug?
|
||||
* Will it have any moving parts?
|
||||
* If it moves, how can you hold the micro:bit securely?
|
||||
|
||||
Some photos of sample micro:pets below!
|
||||
|
||||
## Ideas for Mods
|
||||
|
||||
* Find a way to make part of the animal move.
|
||||
* Give your animal a natural habitat.
|
||||
* Create a way to carry your animal.
|
||||
* Create an animal that reacts when you pet it or move it (find a way to detect when the micro:bit is moved or when its position changes in a certain way.)
|
||||
|
||||
## Reflection
|
||||
Have students write a reflection of about 150–300 words, addressing the following points:
|
||||
* Summarize the feedback you got from your partner on your idea. How would you revise your design, if you were to go back and create another version?
|
||||
* What was it like to have someone designing a pet for you? Was it a pet you would have enjoyed? Why or why not? What advice did you give them that might help them redesign?
|
||||
* What was it like to interview your partner? What was it like to be listened to?
|
||||
* What was something that was surprising to you about the process of designing the micro:pet?
|
||||
* Describe a difficult point in the process of designing the micro:pet, and explain how you resolved it.
|
||||
|
||||
## Rubric
|
||||
For creative projects such as these, we normally don’t use a qualitative rubric to grade the creativity or the match with their partner’s needs. We just check to make sure that the micro:pet meets the required specifications:
|
||||
* Program properly downloaded to micro:bit
|
||||
* Micro:bit supported so the face is showing
|
||||
* Micro:bit can be turned on and off without taking critter apart
|
||||
* Turned in notes on interview process
|
||||
* Written reflection (prompt is above)
|
||||
|
||||
## Micro:Pet Examples
|
||||
|
||||

|
||||
Dog
|
||||
|
||||
https://youtu.be/2ZCDB-a_uRY
|
||||
micro:pet Fish Tank
|
||||
|
||||
|
||||

|
||||
Pink Piggy
|
||||
|
||||

|
||||
Ladybug
|
||||
|
||||

|
||||
Caterpillar
|
||||
|
||||

|
||||
Fox
|
||||
|
||||

|
||||
Robot
|
||||
|
6
docs/courses/csintro/making/standards.md
Normal file
6
docs/courses/csintro/making/standards.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Standards
|
||||
|
||||
## CSTA K-12 Computer Science Standards
|
||||
|
||||
* 2-A-2-1 Solicit and integrate peer feedback as appropriate to develop or refine a program.
|
||||
* 2-A-6-10 Use an iterative design process (e.g., define the problem, generate ideas, build, test, and improve solutions) to solve problems, both independently and collaboratively.
|
Reference in New Issue
Block a user