madduccino / coding.space

The Coding Space Projects
11 stars 22 forks source link

Maze Project - Proposed Edits #179

Open Wowfunhappy opened 2 years ago

Wowfunhappy commented 2 years ago

I was looking through the "The Maze" untutorial today as part of something else, and I was thinking about my experience teaching the project. It's really fantastic for introducing X and Y coordinates, which seems to be one of the hardest concepts for beginners. Making a character move with the arrow keys also seems to be really exciting for students.

However, I've had a lot of students complain about how small their sprites have to be to fit through the narrow corridors in the starter project. Moving the sprite to the start when the flag is clicked is occasionally a bit of a struggle (it's the first thing that needs coordinates!), but it's kind of glossed over in the untutorial. And, most of my students really struggle to add an additional level at the end, which requires really considering program state in multiple places.

I'd like to propose we update this project to something similar to the below:


1. Remix the Starter Project

Click this link to open the Maze Starter Project: [Link Here]. Press the green "Remix" button at the top to make your own copy.

1

2. Add a Sprite

Delete the existing cat sprite, and add your own sprite. Shrink your sprite to fit inside the walls of your maze.

2

3. Move With the Arrow Keys

Make your sprite move when you press the arrow keys.

3

4. Go to the Start of the Maze

When the flag is clicked, make your sprite teleport to the start of your maze.

4

5. Make the Walls Solid

Make your sprite go back to the start of the maze when it touches a wall.

5

6. Add a Finish Spot

Create a finish spot at the end of your maze. When your sprite touches the finish spot, tell the player they won!

6

Challenge: Add More Levels

Can you add a second level? When your sprite gets to the finish spot in the first level, the backdrop should switch to the second level. (Hint: Add a "level" variable.)

7


Updated Starter Project is here: https://scratch.mit.edu/projects/717806696/

And, here are the original screenshots in case they're needed (some recordings won't look right if the video player isn't set to loop): Jonathan - Proposed Maze Update 2022.07.27 | Assets.zip

Advantages:

Any thoughts?

–Jonathan

Wowfunhappy commented 2 years ago

I'm not entirely sure about the title for step 5. Perhaps instead of "Make the Walls Solid" it's just "Add Code for the Walls"?

The original untutorial doesn't title the steps at all, but I think it's preferable for the kids to have a shorter version of the goal to remember while coding.

Wowfunhappy commented 1 year ago

I realized this morning that there's an option in the LMS to create new untutorials. 🤦‍♂️

I've put my version of The Maze in there... and added some others too.

The Maze: https://coding.space/launchpad/00da041d-f844-4ec9-9795-dc577d3c2e44

Code Your Name: https://coding.space/launchpad/668f3685-714d-491d-b1c8-13ebd3dbe4d9

Robot Fleet: (aka "Cloning Tutorial") https://coding.space/launchpad/7240a8d1-7e86-400e-9d57-055d29233b87

Quiz Show: (original Level 1 project) https://coding.space/launchpad/6ac1c714-0b22-43ad-8420-80b6c6099eb5

Some of the screenshots appear cropped due to https://github.com/madduccino/coding.space/issues/180.

I'd be happy to discuss the rationale for everything, but at a very high level, I'm trying to smooth over some very common foot-guns where most students end up needing teacher assistance.

madduccino commented 1 year ago

@Wowfunhappy Thank you for this!

Maze -I agree with your maze edits and will integrate in the next few days!

Robot Fleet -The main reason the cloning tutorial was created was to advise students to hide their original sprite when making clones so they can avoid writing duplicate code in their projects. I can see how your version makes it more clear what a clone is, however, so I think a merging of the two ideas could make sense. -Step 3 of your version says "After two seconds, make your sprite create a clone of itself, then go to a different position on screen." This makes me think the original sprite is the one that is supposed to go to a different position but the gif makes it seem as if it's the clone that is going. I know that it's the former but wondering if there is a better way to visually represent this.

-Quiz Show is great and was really helpful at our GirlCode event actually. Happy to add it!

Wowfunhappy commented 1 year ago

@madduccino Eek, the Scritch versions of these have evolved a bit since I made those LMS copies, based on experience at Chapin. I need to go back and make those updates to the LMS untutorials as well. I'm traveling tonight but will do that asap.

Step 3 of your version says "After two seconds, make your sprite create a clone of itself, then go to a different position on screen."

Yeah, I'm not sure what I was thinking when I did it that way! The Scritch version of Robot Fleet now says (with updated visuals to match):

After two seconds, make your sprite create a clone of itself, then move ten steps.

And then the following step reads:

When your sprite starts as a clone, have it go to a random position and say "I am a clone".

This still isn't perfect because some students won't read the "then move ten steps" part, but it mostly works.

madduccino commented 1 year ago

No rush, just send me an update when you're ready. Happy TG!

Wowfunhappy commented 1 year ago

@madduccino Thanks, these have all been updated to match the current versions in Scritch.

Let me know if you think Steps 3 & 4 of Robot Fleet are clearer now. It's still not perfect but I think it's better.

Maybe we add hiding the original sprite as the second-to-last step?

madduccino commented 1 year ago

@Wowfunhappy Awesome! I added the hiding of the original sprite as a tip in the last step and what do you think about his instead for Step 3?

After two seconds, make your sprite create a clone of itself. Drag your sprite around with your mouse. How many sprites do you see?

Also can you share links to the original Scratch projects? I'll add those to the description so the example game will pop up.

Wowfunhappy commented 1 year ago

Great, thank you! Here are project links:

Code Your Name: https://scratch.mit.edu/projects/767587660 Quiz Show: https://scratch.mit.edu/projects/777200210 The Maze: https://scratch.mit.edu/projects/778070710 Robot Fleet: https://scratch.mit.edu/projects/777193430

Note that at the moment, these aren't meant to be "answer keys", because the code is not written as I'd expect a student to write it (for example, Quiz Show uses a custom block to ask questions). If that's something you'd like, I'd be happy to do that next week.

madduccino commented 1 year ago

If you can send me the answer key versions, that would be great!