Next year, Lego Mindstorms coding will be no more; to be replaced by a scratch-like coding environment. My students are about to finish the First Lego League season and will be looking for the next challenge to work on. Now is a good time to transition them to a block-based coding environment. As the new Mindstorms is not available, I am going with MakeCode.
I have already made RoboCup Rescue Line resources available as PDF or OneNote. I have just finished whipping something up for RoboCup Soccer. It comes with the caveat that I have not beta-tested it with students and my logic may be all over the place. Also, the MakeCode API does not have blocks for the HiTechnic sensors, so LEGO Infared and Gyro sensors are used instead. This has resulted in significantly different solution algorithms. The resource is available as PDF or OneNote.
I have blogged previously about my love of all things MakeCode and one of my favourites is coding in Minecraft. Recently, I have remixed the lessons from Minecraft Education Edition to fit them to my context.
The Digital Technologies Syllabus emphasizes designing algorithms, testing, evaluating and refining them. I find block-based coding environments very effective for this. I also developed this workshop for years 5-6, so text-based coding is not stressed particularly.
The limitations of Scratch, also, only serves to emphasize the validity of text-based coding as the destination. For example, Scratch does not have For loops, so Repeat Until loops need to be utilized; and then there is no > than or = to facility. This workshop is all about turtle graphics, but there is no fill block or function; necessitating turtle python or processing.
Logo (for those old enough to remember) was my first introduction to programming and it really got me hooked; so I’m hoping it does the same for my students.
I also purchased a Makelangelo Art Robot as one way to output their designs. I also plan on 3D printing, Laser and CNC Etching and Machine Embroidery with Inkstitch. Maybe I will get back with the results.
For younger students, we use BBC Micro:bit to introduce them to programming and connecting the physical inputs and outputs needed with embedded systems. We do this mainly based on the learning resources we have access to, which generally target younger students. Otherwise, the BBC Micro:bit is very comparable to the Circuit Playground Express.
The Circuit Playground Express (CPX)
The reason we use the CPX for years 9-10 is because Adafruit provides such good support via MakeCode , CircuitPython and their own learning system. Their projects are also a little more advanced and challenging.
From Blocks to Text
The Parrot Mambo drone can be coded via the Tynker App (iOS, Android) or via Swift Playground. If you choose Tynker, then you may need to enroll students (at cost) into their stunt pilot course. The Swift Playground, Parrot Education Accessory is free and will lead students through coding the drone rather than dragging and dropping blocks (as with Tynker).
I am currently working with a year 9 class, with an emphasis on developing algorithms, using the problem solving project sequence below.
team work plan
how to fly the drone
how to program the drone
identify what you need to know and the skills you need to complete the project
Using drones is a good opportunity to develop student ‘soft skills’ such as collaboration and communication because it forces you to work in a larger space than a normal classroom and with limited resources. I normally work in a computer lab, but needed to move to the library where the class could access the space as well as ipads. Back in the normal classroom, students are able to work on other aspects of their project.
You could extend on this and have students design and build the obstacle course. I started off on this path but realised that I needed a proper makerspace, with art supplies, storage for student projects and project spaces for teams to ‘make a mess’. If you have a makerspace, maybe give my Drone Game Board Unit Plan a go.