Empowering young scholars, providing authentic learning experiences via design, and making CS education accessible to all
Search This Blog
Saturday, January 14, 2017
Constructing Colonial Technologies in Minecraft Pi
Yesterday I wrapped up my first Minecraft Pi programming unit with a class of 5th graders. I was looking for a group of students to try "hacking Minecraft" with on our Raspberry Pis, and their classroom teacher wanted to take last year's Minecraft Colony project and kick it up a notch-- we found a match!
The first day that I met with the 5th graders we started with a Scratch project. The students had already been introduced to coding via Code.org lessons and some had dabbled in Scratch. I wanted to spend our first lesson building off their background knowledge to teach a couple of programming concepts that we'd use in our Minecraft projects.
Using a hyperdoc as their guide, students were challenged to create animations about fractions in Scratch.
In the process, we discussed coding and mathematical topics we needed for our Minecraft project including loops, coordinates & number lines, algebraic thinking, wait/sleep time, and events to name a few.
Using resources from the Raspberry Pi website and my experience at Picademy, I put together an introductory lesson for the 5th graders on "hacking Minecraft" (an evolving work in progress).
Students learned how to teleport, post a message, set a block, and set a rectangular prism of blocks using Python.
Over the course of two class periods, students worked in small groups and learned about the Raspberry Pi computer, inputs/outputs, variables, x/y/z coordinates, loops and conditions.
Students' final task was to use what they'd learned in their history units and in our coding lessons to construct and describe a colonial technology in Minecraft.
Then, students were required to sketch out a building on grid paper, with dimensions, that they wanted to construct, either independently or with partners.
Next, students had to plan out the code that they would use to construct their first colonial building.
Once the students' plans were approved, they got together with their project group to start coding.
After programming their first building, they moved on to constructing a technology that they thought was important to colonial America. Students had to decide the best (most effective) way to construct their technologies using Python.
Some of their ideas included:
Setting a cuboid and then cutting out parts of the cube to shape their technology
Programming their character to drop blocks behind them and then moving their character around to quickly construct the shapes they needed
Another team set blocks manually to create their colonial tool, but successfully programmed a message to appear and describe their technology
What students learned:
How to debug, edit and revise their work
3-dimensional coordinate planes and how to move along the plane
Basic algebra concepts
What variables are, and their role in writing code
Events, Arguments, Conditions, Loops
Grit and persevering through challenging work
Basic Python commands
How to draw on information from multiple sources and how to read and comprehend informational/technical text
What I learned:
10 year-olds CAN program in Python-- they were amazing!
Groups of more than 3 students per Pi was too many. I like students programming in teams, but more than 3 students per group and it's hard for the kids to find something for everyone to do (I'd already experienced this issue with a younger set of students, and it was confirmed with this older group).
30 kids was a lot to try to teach coding and physical computing to all at once. I think my threshold is about 24 students. More than that for these lessons, and I could use a co-teacher.
No comments:
Post a Comment