Skip to content

Instantly share code, notes, and snippets.

@Hamms
Created April 8, 2021 19:56
Show Gist options
  • Save Hamms/67e9def2ad434f88bf7a00388c703997 to your computer and use it in GitHub Desktop.
Save Hamms/67e9def2ad434f88bf7a00388c703997 to your computer and use it in GitHub Desktop.
{
"`4`": [
"csp9-2021.script_json",
"csp7-2021.script_json"
],
"`\\\"four\\\"`": [
"csp9-2021.script_json"
],
"` that include width and height parameters. They also learn to use the [`": [
"csd3-2021.script_json"
],
"`\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"267a9bc0-eca4-43ff-9a91-64c0b389089c\",\n \"lesson_activity.key\": \"7e77a0b3-3a58-4d8d-9efa-b796c1496bde\"\n }\n },\n {\n \"key\": \"97278350-36a0-4119-8163-a2cc0d7defa8\",\n \"position\": 2,\n \"properties\": {\n \"description\": \"**Prompt:** The [`": [
"csd3-2021.script_json"
],
"` and `": [
"csd3-2021.script_json",
"csp4-2021.script_json",
"csp3-2021.script_json"
],
"`) is pretty generous in determining truthiness. For example, each of the following is considered `": [
"csd3-2021.script_json"
],
"` in JavaScript when using the `": [
"csd3-2021.script_json"
],
"` operator, but would be `": [
"csd3-2021.script_json"
],
"` using the `": [
"csd3-2021.script_json"
],
"` operator:\\r\\n\\r\\n 1 == true;\\r\\n \\\"1\\\" == true;\\r\\n 5 == \\\"5\\\";\\r\\n null == undefined;\\r\\n \\\"\\\" == false;\\r\\n\\r\\nWe use the `": [
"csd3-2021.script_json"
],
"` operator)\\r\\n\"\n }\n ]\n },\n \"seeding_key\": {\n \"activity_section.key\": \"e75e9f3a-9c00-4437-8c5d-9c0ee1073019\",\n \"lesson_activity.key\": \"f664c4cd-edcd-4afe-b5e6-5e2902ae866f\"\n }\n },\n {\n \"key\": \"02bcc907-1476-4a48-90ea-a56c5c91e6d4\",\n \"position\": 2,\n \"properties\": {\n \"description\": \"**Transition:** Send students to Code Studio.\",\n \"name\": \"Conditionals\\r\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"02bcc907-1476-4a48-90ea-a56c5c91e6d4\",\n \"lesson_activity.key\": \"f664c4cd-edcd-4afe-b5e6-5e2902ae866f\"\n }\n },\n {\n \"key\": \"970064bc-3023-4f10-9359-91868ff9c77d\",\n \"position\": 3,\n \"properties\": {\n \"progression_name\": \"Prediction\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"970064bc-3023-4f10-9359-91868ff9c77d\",\n \"lesson_activity.key\": \"f664c4cd-edcd-4afe-b5e6-5e2902ae866f\"\n }\n },\n {\n \"key\": \"230cf2d8-bf75-4b73-aa29-4e468f203e78\",\n \"position\": 4,\n \"properties\": {\n \"progression_name\": \"Video: Booleans\",\n \"tips\": [\n {\n \"type\": \"discussionGoal\",\n \"markdown\": \"**Goals:**\\n\\n**Key Vocabulary:**\\n\\n- **Boolean Expression** - in programming, an expression that evaluates to True or False.\\n\\nStudents should be able to explain that a Boolean expression is something that is either true or false, similar to a yes or no question. The more formal way to say this is that Boolean expressions evaluate to either true or false. That means that when the computer processes a Boolean expression, it checks to see whether the expression describes a situation that is true or false, and then uses the value of either true or false wherever the expression is found.\\n\\nSome examples of Boolean expressions that evaluate to true are `": [
"csd3-2021.script_json"
],
"`, but press students to think of expressions that might be better represented by variables, such as `": [
"csd3-2021.script_json"
],
"` or `": [
"csd3-2021.script_json"
],
"`.\\n\\nSome examples of Boolean expressions that evaluate to false are `": [
"csd3-2021.script_json"
],
"`, `": [
"csd3-2021.script_json",
"csp4-2021.script_json",
"csd6-2021.script_json",
"csp5-2021.script_json"
],
"`, and `": [
"csd3-2021.script_json",
"csp5-2021.script_json"
],
"` block, and when an `": [
"csd3-2021.script_json"
],
"``": [
"csp10-2021.script_json",
"csp7-2021.script_json",
"csp8-2021.script_json",
"csp4-2021.script_json",
"csa1-pilot.script_json"
],
"`\\r\\nserr cvmmn va gur pnsrgrevn\\r\\n`": [
"csp10-2021.script_json"
],
"`tiers`": [
"csp7-2021.script_json"
],
"`3`": [
"csp7-2021.script_json"
],
"`flavor`": [
"csp7-2021.script_json"
],
"`lemon`": [
"csp7-2021.script_json"
],
"`chocolate`": [
"csp7-2021.script_json"
],
"`flavorCost`": [
"csp7-2021.script_json"
],
"`total`": [
"csp7-2021.script_json"
],
"`cakeCalculator`": [
"csp7-2021.script_json"
],
"`cakeCost`": [
"csp7-2021.script_json"
],
"`updateScreen`": [
"csp7-2021.script_json"
],
"`myNumber`": [
"csp7-2021.script_json"
],
"`mystery`": [
"csp7-2021.script_json"
],
"`findSmallest()`": [
"csp7-2021.script_json"
],
"`circle-circle-circle`": [
"csp1-2021.script_json"
],
"`circle-square-circle`": [
"csp1-2021.script_json"
],
"`000000.01`": [
"csp1-2021.script_json"
],
"`0.25`": [
"csp1-2021.script_json"
],
"`000000.10`": [
"csp1-2021.script_json"
],
"`0.50`": [
"csp1-2021.script_json"
],
"`000000.11`": [
"csp1-2021.script_json"
],
"`01000001`": [
"csp1-2021.script_json"
],
"`<!DOCTYPE html>`": [
"csd2-2021.script_json"
],
"`<html>`": [
"csd2-2021.script_json"
],
"`<head>`": [
"csd2-2021.script_json"
],
"`<body>`": [
"csd2-2021.script_json"
],
"`<p>`": [
"csd2-2021.script_json"
],
"`<h1>`": [
"csd2-2021.script_json"
],
"`\\n// The images used in this app came from:\\n// [1] bird image - http://name-of-site.com/path/to/image.jpg\\n// [2] flower image - http://site.com/path/to/flower.jpg\\n`": [
"csp8-2021.script_json"
],
"`get treasure`": [
"coursea-2021.script_json",
"pre-express-2021.script_json",
"courseb-2021.script_json"
],
"`pick corn`": [
"coursea-2021.script_json",
"pre-express-2021.script_json",
"courseb-2021.script_json"
],
"`repeat`": [
"coursea-2021.script_json",
"coursec-2021.script_json",
"coursef-2021.script_json",
"pre-express-2021.script_json",
"coursed-2021.script_json",
"express-2021.script_json",
"coursee-2021.script_json",
"courseb-2021.script_json"
],
"`collect`": [
"coursea-2021.script_json",
"coursec-2021.script_json",
"express-2021.script_json"
],
"`E →`": [
"coursea-2021.script_json",
"courseb-2021.script_json"
],
"`W ←`": [
"coursea-2021.script_json",
"courseb-2021.script_json"
],
"`when`": [
"coursea-2021.script_json",
"coursec-2021.script_json",
"courseb-2021.script_json"
],
"`Remix`": [
"coursea-2021.script_json",
"coursec-2021.script_json",
"pre-express-2021.script_json",
"courseb-2021.script_json"
],
"`\\r\\nvar score\\r\\nscore <- 3\\r\\nscore <- score + 1\\r\\nscore <- \\\"The score is: \\\" + score\\r\\n`": [
"csp4-2021.script_json"
],
"`var`": [
"csp4-2021.script_json"
],
"`temp`": [
"csp4-2021.script_json"
],
"`tempF`": [
"csp4-2021.script_json"
],
"`70`": [
"csp4-2021.script_json"
],
"`TempF`": [
"csp4-2021.script_json"
],
"` is clicked.\\n* When the down button is clicked, the `": [
"csp4-2021.script_json"
],
"` variable decreases by one.\\n* Then the `": [
"csp4-2021.script_json"
],
"` variable is updated with the current value of `": [
"csp4-2021.script_json"
],
"` joined with the letter `": [
"csp4-2021.script_json"
],
"`.\\n* The text on the screen is set to dispay the value stored in the variable `": [
"csp4-2021.script_json"
],
"`\\n* A sound is played.\\n\\n**Lines 14-21**\\n\\n* On line 16, an [`": [
"csp4-2021.script_json"
],
"` is clicked.\\n* When the up button is clicked, the `": [
"csp4-2021.script_json"
],
"` variable is increased by one.\\n* Then the `": [
"csp4-2021.script_json"
],
"`\\n* A sound is played\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"2ad0ae81-d9f5-43b4-972b-5a707a4f4d07\",\n \"lesson_activity.key\": \"c4eb36e1-32dc-4590-8ad2-5121bb841814\"\n }\n },\n {\n \"key\": \"25028e71-71dc-44ef-a17b-09ea33205f3b\",\n \"position\": 4,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Display:** Display the slide showing students how to add a watcher in the debugging panel to track the value a variable stores. \\r\\n\\r\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Modify:** have groups return to their original seats. Give them a couple of minutes to work on modifying the app to change the degrees by two when the up and down arrows are clicked.\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"25028e71-71dc-44ef-a17b-09ea33205f3b\",\n \"lesson_activity.key\": \"c4eb36e1-32dc-4590-8ad2-5121bb841814\"\n }\n },\n {\n \"key\": \"ac5c4280-580d-43e9-9210-675bf64c19c4\",\n \"position\": 5,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Level 3:** This program is an updated version of the Thermostat app. This time students should continue to work in partners but do not need to work with other groups. They will need to:\\n\\n* Run the app: Let students run the app for a few minutes.\\n* Discuss Changes: Talk through how the app is different than the first version. \\n* Find the `": [
"csp4-2021.script_json"
],
"` command: Discuss with a partner how this command might work. Try deleting `": [
"csp4-2021.script_json"
],
"` to the end of the string stored in `": [
"csp4-2021.script_json"
],
"`.\\n\\n**Discussion Goal:**[`": [
"csp4-2021.script_json"
],
"`. In our app, the name written in the `": [
"csp4-2021.script_json"
],
"` element is concatenated with \\\"Hi\\\" and then stored in the variable `": [
"csp4-2021.script_json"
],
"` to using full apps with user interfaces.\\n* Level 5 introduces `": [
"csp4-2021.script_json"
],
"`, the new line character\\n* Students continue to be encouraged to discuss what they are learning with a neighbor\\n* Levels 6 and 7 introduce the use of the counter pattern with numbers and strings. Students may need to consult the Help and Tips tab for support.\",\n \"progression_name\": \"Variables and Operators\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"0aa444f3-dc71-4156-bd82-4dd9384a344f\",\n \"lesson_activity.key\": \"b3c72085-c8f0-4971-beef-af3066cee04a\"\n }\n },\n {\n \"key\": \"1adf5772-0b76-42e4-85c2-2bbff867d6b3\",\n \"position\": 6,\n \"properties\": {\n \"description\": \"**Regroup:** Bring the class back together to watch the Scope Practice Video.\\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Display:** Scope Practice video. This video is located on the slides and on Level 9. You may opt to have students watch it alone or as a class. \\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Do This:** Discuss debugging scope issues with the next three slides before directing students back to Code Studio.\",\n \"tips\": [\n {\n \"type\": \"teachingTip\",\n \"markdown\": \" <i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Reviewing a Map Level:** Level 9 is a Map Level, which contains a review of variable scope. It is highly recommended that you watch the video in Level 9 prior to the lesson. Slides are available for this lesson if you would like to optinally review as a class.\\r\\n\"\n }\n ]\n },\n \"seeding_key\": {\n \"activity_section.key\": \"1adf5772-0b76-42e4-85c2-2bbff867d6b3\",\n \"lesson_activity.key\": \"b3c72085-c8f0-4971-beef-af3066cee04a\"\n }\n },\n {\n \"key\": \"a732bd47-4ca3-4bed-abc9-8c322ee19f10\",\n \"position\": 7,\n \"properties\": {\n \"name\": \"Debugging Scope Issues\",\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Levels 8-9 Debugging Scope Issues:** These levels identify a common bug that can come up when working with variables. While students should be aware of this bug, they don't quite have the background they'd need to fully understand it. For now support students in following the three main takeaways.\\n\\n* Create variables once\\n* Create variables at the top of your program\\n* Don't create variables inside [`": [
"csp4-2021.script_json"
],
"`) when you write your Boolean expression.*\\n\\n**Optional Warmup Discussion:** This discussion is optional and helpful further synthesize key points from the previous lesson. If you are able to quickly move to the main activity and believe your class does not need this revew consider skipping this discussion.\\n\\nHave partners share their responses at their tables. Then discuss answers briefly as a class.\\n\",\n \"name\": \"Preview the Lesson\\r\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"84400ab9-232d-46ee-8fc1-3a0e959f3042\",\n \"lesson_activity.key\": \"bd1cdef5-5320-4a28-9ebf-f1f2cfc1eeb9\"\n }\n },\n {\n \"key\": \"85ebbbf7-a9fa-4f3a-bdfe-04cbf8202068\",\n \"position\": 2,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> In everyday conversation it is common to switch between using the words \\\"when\\\" and \\\"if\\\". Here's some examples of what this looks like\\r\\n\\r\\n* \\\"When the user clicks the button...\\\"\\r\\n* \\\"If the user clicks the button...\\\"\\r\\n* \\\"When the user has more than 100 points...\\\"\\r\\n* \\\"If the user has more than 100 points...\\\"\\r\\n\\r\\nToday we want to be careful about how we use these words. To make things simple, we're going to use the following rules.\\r\\n\\r\\n* \\\"when\\\": Means there is an [`": [
"csp4-2021.script_json"
],
"` command: Have students find the command\\n* Draw a flowchart: Students should draw a flow chart for the if-else-if command in their journals\\n* **Modify**: Modify the program to make the lemon even smaller when the player has more than 15 points.\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"e83e4d07-ebb9-43c3-b3bf-015145b74669\",\n \"lesson_activity.key\": \"1ec03cdc-1d8b-4e43-9274-9c5b8a2c4b61\"\n }\n },\n {\n \"key\": \"8367ad15-2c44-4b8a-bc16-64c889c0a4d2\",\n \"position\": 10,\n \"properties\": {\n \"progression_name\": \"If-Else Statements\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"8367ad15-2c44-4b8a-bc16-64c889c0a4d2\",\n \"lesson_activity.key\": \"1ec03cdc-1d8b-4e43-9274-9c5b8a2c4b61\"\n }\n },\n {\n \"key\": \"084f73ba-22aa-4103-9788-a1b4f5b8dc21\",\n \"position\": 11,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Level 6 - Video - Conditionals: If-Else Statements** As a class watch the video on if-else statements.\",\n \"name\": \"Investigation 3: Logical Operators AND OR\",\n \"duration\": \"10\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"084f73ba-22aa-4103-9788-a1b4f5b8dc21\",\n \"lesson_activity.key\": \"1ec03cdc-1d8b-4e43-9274-9c5b8a2c4b61\"\n }\n },\n {\n \"key\": \"1ef6e1bb-0e0b-4bd5-ab5e-fab53c0531dc\",\n \"position\": 12,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Level 7 - Lemon Squeeze App Pt 3:** This program is a final version of the Lemon Squeeze app. Again students should work with partners.\",\n \"tips\": [\n {\n \"type\": \"teachingTip\",\n \"markdown\": \"**Running the Third Investigtaion:** In this final investigation students are primarily working independently to design their flowchart and modify the code. While you should quickly have students share out what they noticed about how the app changed, spend most of your time circulating answering questions students have as they modify the programs or draw their flowcharts.\\r\\n\\r\\n\"\n }\n ]\n },\n \"seeding_key\": {\n \"activity_section.key\": \"1ef6e1bb-0e0b-4bd5-ab5e-fab53c0531dc\",\n \"lesson_activity.key\": \"1ec03cdc-1d8b-4e43-9274-9c5b8a2c4b61\"\n }\n },\n {\n \"key\": \"a6736a90-d098-4845-8208-3e224564035b\",\n \"position\": 13,\n \"properties\": {\n \"description\": \"* Play the Game: Have students play the game\\n* Discuss Changes: Talk through how the game plays differently now\\n* Find the `": [
"csp4-2021.script_json"
],
"` command which prints commands in the debug console. Here are a few things to keep an eye out for\\n\\n* Levels 1-2 ask students to write Boolean expressions using comparison operators. Students may need to quickly review the comparison operators `": [
"csp4-2021.script_json"
],
"`\\n* Level 3 asks students to write Boolean expressions with logical operators `": [
"csp4-2021.script_json"
],
"`\\n\",\n \"tips\": [\n {\n \"type\": \"teachingTip\",\n \"markdown\": \"**Providing Support:** Circulate around the room through the lesson encouraging students to use the strategies introduced at the beginning of the lesson. Students have a number of supports at their fingertips, so a big part of your role is helping build their independence in using those resources.\\n\\n\"\n }\n ]\n },\n \"seeding_key\": {\n \"activity_section.key\": \"16a5b3f0-d429-4ea4-b26b-b7c6a2c886c7\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"d7ef6672-b54b-47ed-a39e-e8cb5f2e2585\",\n \"position\": 4,\n \"properties\": {\n \"progression_name\": \"Boolean expressions\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"d7ef6672-b54b-47ed-a39e-e8cb5f2e2585\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"f16d7af3-fdb1-4ee9-b0f0-16d952bdcb67\",\n \"position\": 5,\n \"properties\": {\n \"description\": \"\\n**Levels 4-8:** These levels practice if-statements while working with a star color-changing app. \\n\\n* Levels 4-5 involve setting up an if-statement that becomes an if-else statement. \\n* In Level 6 students follow a pattern to create a lengthy if-else-if statement.\\n* For Level 7, make sure students slow down the running of the code to understand what's happening. It's suggested that students use the slider to slow down the code.\\n* Level 8 demonstrates that Boolean expressions can be written as conditional statements, and vice versa \"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"f16d7af3-fdb1-4ee9-b0f0-16d952bdcb67\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"3756dbe6-18db-4a5e-88d6-4ace93459934\",\n \"position\": 6,\n \"properties\": {\n \"progression_name\": \"If-Statements\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"3756dbe6-18db-4a5e-88d6-4ace93459934\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"4e185d29-baf7-4623-923a-c3a3277af161\",\n \"position\": 7,\n \"properties\": {\n \"description\": \"\\n\\n\\n**Levels 9-10:** The levels return to the \\\"Can I Adopt a Cat?\\\" flowchart from the Conditionals Explore activity. Students will use the flowchart to work out the logic of the if-statements in a their program. \\n\\n* A new block appears in these levels: [`": [
"csp4-2021.script_json"
],
"`. Students should regularly test their apps to see if their Boolean expressions are working properly.\\n\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"4e185d29-baf7-4623-923a-c3a3277af161\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"3c465c18-0d35-4fe7-8d48-b86e44a1186f\",\n \"position\": 8,\n \"properties\": {\n \"progression_name\": \"Logical Operators\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"3c465c18-0d35-4fe7-8d48-b86e44a1186f\",\n \"lesson_activity.key\": \"6b744b8c-502a-4fc0-ace6-aa6f2bcc4033\"\n }\n },\n {\n \"key\": \"762801f0-e7bb-4f82-8dc0-62212048a567\",\n \"position\": 9,\n \"properties\": {\n \"description\": \"**Extension Opportunities:**\\n\\n* Level 3: Students can add more variables and create complex Boolean expressions. One challenge might be to assign a String to a variable and compare that string to another. \\n* Level 9: There are multiple solutions. If students build their if-statement using only `": [
"csp4-2021.script_json"
],
"` encourage them to figure out how to build it using only `": [
"csp4-2021.script_json"
],
"` to be displayed?\\r\\n\\r\\n`": [
"csp4-2021.script_json"
],
"`Run`": [
"coursef-2021.script_json",
"coursed-2021.script_json",
"express-2021.script_json"
],
"`for`": [
"coursef-2021.script_json",
"express-2021.script_json"
],
"`patrolling`": [
"coursef-2021.script_json",
"express-2021.script_json"
],
"`jittering`": [
"coursef-2021.script_json",
"express-2021.script_json"
],
"`spinning right/left`": [
"coursef-2021.script_json",
"express-2021.script_json"
],
"`while`": [
"coursef-2021.script_json",
"coursed-2021.script_json",
"express-2021.script_json",
"csa1-pilot.script_json",
"coursee-2021.script_json"
],
"`GET ....`": [
"csp2-2021.script_json"
],
"`, analogously to [`": [
"csd6-2021.script_json"
],
"` block works much like [`": [
"csd6-2021.script_json"
],
"`, are also introduced.\",\n \"student_overview\": \"This lesson introduces students to the getProperty block, which allows them to access the properties of different elements with code. They first practice using the block to determine what the user has input in various user interface elements. Students later use getProperty and setProperty together with the counter pattern to make elements move across the screen. A new screen element, the slider, and a new event trigger, onChange, are also introduced.\",\n \"purpose\": \"So far, students have only used the button press event to gather information from the App Lab screen. Using [`": [
"csd6-2021.script_json"
],
"` block to iterate over an array of notes provides a conceptual foundation for working with `": [
"csd6-2021.script_json"
],
"` loops in the next lesson.\",\n \"creative_commons_license\": \"Creative Commons BY-NC-SA\",\n \"assessment_opportunities\": \"1. **Create and modify an array**\\n\\n\\tCode Studio: see rubric on bubble 7\\n\\n2. **Use the buzzer to produce sequences of notes**\\n\\n\\tCode Studio: see rubric on bubble 11\\n\\n3. **Recognize an array as a list of elements that can be operated on sequentially.**\\n\\n\\tWrap up: Students should recognize that the `": [
"csd6-2021.script_json"
],
"` block operates on each element of the notes array in sequence.\"\n },\n \"seeding_key\": {\n \"lesson.key\": \"Making Music\",\n \"lesson_group.key\": \"csd6_2\",\n \"script.name\": \"csd6-2021\"\n }\n },\n {\n \"key\": \"Arrays and For Loops\",\n \"name\": \"Arrays and For Loops\",\n \"absolute_position\": 12,\n \"lockable\": false,\n \"has_lesson_plan\": true,\n \"relative_position\": 12,\n \"properties\": {\n \"overview\": \"Using a _for loop_ to iterate over all of the elements in an array is a really useful construct in most programming languages. In this lesson, students learn the basics of how a _for loop_ can be used to repeat code, and then combine it with what they've already learned about arrays to write programs that process all elements in an array. Students use for loops to go through each element in a list one at a time without having to write code for each element. Towards the end of the lesson students will apply this with the `": [
"csd6-2021.script_json"
],
"`, or `": [
"csd6-2021.script_json"
],
"` block to do something to every element. Think back to the other arrays you have seen. How might doing something to every element in an array be useful there?\",\n \"tips\": [\n {\n \"type\": \"assessmentOpportunity\",\n \"markdown\": \"Students should reconize that the `": [
"csd6-2021.script_json"
],
"`, and you chose whether to get the pitch or the roll. Why do you think the creators make the program work that way, rather than having two blocks, one for the pitch and one for the roll?\",\n \"tips\": [\n {\n \"type\": \"discussionGoal\",\n \"markdown\": \"**Goal:** Students should eventually see that parameters give a program flexibility. Sometimes, multiple commands are similar enough that it makes sense to combine them into one, but with a parameter to distinguish between their differences. Sometimes, such as the case of [`": [
"csd6-2021.script_json"
],
"`if`": [
"coursed-2021.script_json",
"csa1-pilot.script_json"
],
"`if / else`": [
"coursed-2021.script_json",
"express-2021.script_json",
"coursee-2021.script_json"
],
"`until`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`fill 1`": [
"coursed-2021.script_json"
],
"`move ___`": [
"coursed-2021.script_json"
],
"`make a new`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`setup`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`do once`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`bears do once`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`cats do once`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`when pressed`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`after measures`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`do forever`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`after 4 measures`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`after 6 measures`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`set`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`set size`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`set tint to (color)`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`change`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`randomize`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`every 2 measures`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`if at flower / else`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`get nectar`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`make honey`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`while there is a pile / do`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`remove 1`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`move forward`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`turn right`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`turn left`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`repeat until`": [
"coursed-2021.script_json",
"express-2021.script_json"
],
"`move forward by 100 pixels`": [
"express-2021.script_json"
],
"`turn right by 90 degrees`": [
"express-2021.script_json"
],
"`when run`": [
"express-2021.script_json",
"courseb-2021.script_json"
],
"`if/else`": [
"express-2021.script_json"
],
"`while path ahead`": [
"express-2021.script_json"
],
"`mystery behavior`": [
"express-2021.script_json"
],
"`Painter`": [
"csa1-pilot.script_json"
],
"`isOnPaint()`": [
"csa1-pilot.script_json"
],
"`isOnBucket()`": [
"csa1-pilot.script_json"
],
"`canMove()`": [
"csa1-pilot.script_json"
],
"`if-else`": [
"csa1-pilot.script_json"
],
"`!`": [
"csa1-pilot.script_json"
],
"`takePaint()`": [
"csa1-pilot.script_json"
],
"`paint(String color)`": [
"csa1-pilot.script_json"
],
"`scrapePaint()`": [
"csa1-pilot.script_json"
],
"`true`": [
"csa1-pilot.script_json"
],
"`false`": [
"csa1-pilot.script_json"
],
"`if( )`": [
"csa1-pilot.script_json"
],
"`hasPaint()`": [
"csa1-pilot.script_json"
],
"`facingNorth()`": [
"csa1-pilot.script_json"
],
"`facingEast()`": [
"csa1-pilot.script_json"
],
"`facingWest()`": [
"csa1-pilot.script_json"
],
"`facingSouth()`": [
"csa1-pilot.script_json"
],
"`if-else statements`": [
"csa1-pilot.script_json"
],
"`else`": [
"csa1-pilot.script_json"
],
"`print`": [
"coursee-2021.script_json"
],
"`var myNumbers = [32, 64, 33, 0, 15, 26, 3]`": [
"csp5-2021.script_json"
],
"`list.length-1`": [
"csp5-2021.script_json"
],
"`list.length`": [
"csp5-2021.script_json"
],
"`string.length`": [
"csp5-2021.script_json"
],
"`string.substring()`": [
"csp5-2021.script_json"
],
"`myList[1]`": [
"csp5-2021.script_json"
],
"` `": [
"csp5-2021.script_json"
],
"` command seem to do?\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"839ce746-43d9-403c-b12a-35b4a5beddee\",\n \"lesson_activity.key\": \"786b1b6e-0ae9-4a64-a7cc-c974ba017716\"\n }\n },\n {\n \"key\": \"7323e31f-c285-4b2e-a5a2-0feef2bf2bc9\",\n \"position\": 5,\n \"properties\": {\n \"progression_name\": \"Coin Flipper App\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"7323e31f-c285-4b2e-a5a2-0feef2bf2bc9\",\n \"lesson_activity.key\": \"786b1b6e-0ae9-4a64-a7cc-c974ba017716\"\n }\n },\n {\n \"key\": \"7afade0d-fee2-441b-9ba3-a3f6c3119f69\",\n \"position\": 6,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> \\n **Discuss:** *How does a loop help when running similar simulations?*\\n\\n**Discussion Goal:** A loop lets us repeat code quickly to determine an answer to a question. \\n\\nInside the loop we can use random number generation to get a variety of possible answers, similar to what would happen in the real world. \\n\\n\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"7afade0d-fee2-441b-9ba3-a3f6c3119f69\",\n \"lesson_activity.key\": \"786b1b6e-0ae9-4a64-a7cc-c974ba017716\"\n }\n },\n {\n \"key\": \"78f562b5-b41e-4efe-86ef-0fee66b3ab09\",\n \"position\": 7,\n \"properties\": {\n \"description\": \"Now let's investigate an app that uses loops in a different way. This time loops are used to update elements on the screen.\",\n \"remarks\": true\n },\n \"seeding_key\": {\n \"activity_section.key\": \"78f562b5-b41e-4efe-86ef-0fee66b3ab09\",\n \"lesson_activity.key\": \"786b1b6e-0ae9-4a64-a7cc-c974ba017716\"\n }\n },\n {\n \"key\": \"152bfd79-ab84-4edd-b002-2997fd4a40b2\",\n \"position\": 8,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> \\n **Level 3 - Font Tester App:** Students navigate to Level 3 and run the app before discussing the following: \",\n \"progression_name\": \"Font Tester App\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"152bfd79-ab84-4edd-b002-2997fd4a40b2\",\n \"lesson_activity.key\": \"786b1b6e-0ae9-4a64-a7cc-c974ba017716\"\n }\n },\n {\n \"key\": \"c862e5d9-df4a-4504-94b6-dd974574b589\",\n \"position\": 9,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Discuss:** *Find the four different for loops in the program. What do they each do? Also take a look at the names of the screen elements in Design Mode. Then navigate back to the code. How is `": [
"csp5-2021.script_json"
],
"` used? How does it evaluate with each round of the loop?*\\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Do This:** \\n\\n* What happens if you change the text box variable names? \\n* Try changing them from `": [
"csp5-2021.script_json"
],
"`, etc. to `": [
"csp5-2021.script_json"
],
"`, etc.\\n* Navigate back to the code. What do you need to change in the code for the program to still work?\\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Do This:**\\n\\n* What happens if you change the Boolean expression `": [
"csp5-2021.script_json"
],
"` in the for loops?\\n* Change all the Boolean expressions to one of the options below, run the program, and discuss. Then move to the next option and repeat:\\n\\t* `": [
"csp5-2021.script_json"
],
"`\\n\\t* `": [
"csp5-2021.script_json"
],
"` levels in which students practice using while loops.\\n\\n* Level 1: Students use a while loop to print the numbers 0-99\\n* Level 2: Students use a while loop to print a message 100 times\\n* Level 3: Students use a while loop to fill an array and print the results\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"d61747a8-fdb0-4175-9302-5d8378b9cbf2\",\n \"lesson_activity.key\": \"c71c3389-b880-4bae-ac9a-1ec525b74e41\"\n }\n },\n {\n \"key\": \"abae5b3f-a185-424f-87ee-07544b1c3de2\",\n \"position\": 6,\n \"properties\": {\n \"progression_name\": \"While Loop Practice\"\n },\n \"seeding_key\": {\n \"activity_section.key\": \"abae5b3f-a185-424f-87ee-07544b1c3de2\",\n \"lesson_activity.key\": \"c71c3389-b880-4bae-ac9a-1ec525b74e41\"\n }\n },\n {\n \"key\": \"844366dd-f65f-44b3-bd19-c16bd22f7836\",\n \"position\": 7,\n \"properties\": {\n \"description\": \"\\n**Levels 4-6 For Loop Practice:** Simple `": [
"csp5-2021.script_json"
],
"` around the items which are separated by commas.\\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Modify:** Students choose a new dataset to import to the project. Then students modify the code to print out a column of data from the chosen dataset. Point out to students that when they pull out a column, they are creating a list.\",\n \"name\": \"Data Tab Investigation\",\n \"progression_name\": \"Data Tab Investigation\",\n \"tips\": [\n {\n \"type\": \"teachingTip\",\n \"markdown\": \"Note that in the next investigation, students will combine their knowledge of traversals and the “Data” Tab to make more robust apps that don’t require students to type long lists in their code themselves.\"\n }\n ]\n },\n \"seeding_key\": {\n \"activity_section.key\": \"127a1baa-2374-416e-b6b2-30666e542983\",\n \"lesson_activity.key\": \"ed41f7ef-2dee-487c-ad9b-9c53517bba57\"\n }\n },\n {\n \"key\": \"e74ac992-2f41-4d45-978c-3af21c648b91\",\n \"position\": 3,\n \"properties\": {\n \"description\": \"<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Level 3:** Instruct students to run the app and then carefully read it. There is a lot of information in the comments in this app. Students work through all of the questions on the screen.\\n\\n<i class=\\\"fa fa-list-alt\\\" aria-hidden=\\\"true\\\"></i> **Discuss:** Go through the questions one by one and answer as a class. Afterwards, go line by line with the class explaining how the app works. \\n\\n* **The goal:** The goal of this investigation is to give students an opportunity to make sense of how traversals and the datasets can be used together to create a working app. It is important to note that the algorithms in this app have some of the same qualities as the algorithm students will need to develop for the Create PT. \\n \\n* **What to look for:** This project defines several different functions. Help guide students particularly to how the lists are filled. Students should see a `": [
"csp5-2021.script_json"
],
"` function. This function calls the `": [
"csp5-2021.script_json"
],
"` function. `": [
"csp5-2021.script_json"
],
"` is where the lists are being filled. Use the questions listed in CodeStudio to help students make sense of this code. In particular, spend a little extra time discussing the question “How are these lists filled?”. This is an opportunity to go through the `": [
"csp5-2021.script_json"
],
"` function line by line to understand how the function works.\",\n \"tips\": [\n {\n \"type\": \"teachingTip\",\n \"markdown\": \"Traversals can be tricky! In this case, we are filtering a list by information that is in another list. \\n\\nThere are three lists to start: `": [
"csp5-2021.script_json"
],
"`. We want to sort out the dogs so that when the user picks a size from the dropdown, only dogs of that size show up in the display. \\n\\nTo do this, we traverse using a filter pattern. Using a loop to go through each item in the `": [
"csp5-2021.script_json"
],
"` prints text in the Debug Console\\n* [`": [
"csp3-2021.script_json"
],
"` needs one input while [`": [
"csp3-2021.script_json"
],
"` will play a sound you pick from the Sound Library\\n* Lines that start with `": [
"csp3-2021.script_json"
],
"` are called comments and don't actually run. They just help you understand your code.\\n\\n**Level 5:** Run this level in the same way. Have students complete all three prompts and then bring the class together after a few minutes for a discussion.\\n\\n**Discuss:** *Have students share the results of their discussion and anything else they noticed. Here are good points to draw out.*\\n\\n* Random number chooses a new random number each time, between the high and low value given\\n* [`": [
"csp3-2021.script_json"
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment