MakeCode

The educational technology and digital learning wiki
Jump to navigation Jump to search

Draft

Introduction

“Microsoft MakeCode brings computer science to life for all students with fun projects, immediate results, and both block and text editors for learners at different levels.” (Hands on computing education, retrieved August 22, 2019).

Makecode looks similar to Snap! and Scratch, i.e. it is a visual programming language. It also allows saving and working with JavaScript code.

As of August 2019, several environments can be programmed with makecode:

Adafruit MakeCode

So far (Aug 2019), MakeCode works with

All of these boards also work with CircuitPython and Arduino. Code can be directly downloaded into board via USB. It will be compiled into some kind of machine language.

The online MakeCode editor for the Playground Express is https://makecode.adafruit.com/. The site includes some walk-through tutorials and some examples. The platform includes that familiar palette with programming elements, a workspace for the program, and a simulator to the left.

Example

The following simple example shows that a simple application can be done in short time, even by beginners.

Notice: Make sure to save more complex code and maybe create versions. I did loose the blocks code for an example at some point by playing around with the "explorer" functionality.

Block code

The following code will activate on shaking the board and repeat four times a sound and a blinking (from blue to red/yellow) since one ring is shown one after the other.

AdaFruit MakeCode example for Circuit PlayGround Express

The corresponding JavaScript code is

input.onGesture(Gesture.Shake, function () {
    for (let i = 0; i < 4; i++) {
        music.magicWand.play()
        light.showRing(
        `blue blue blue blue blue blue blue blue blue blue`
        )
        light.showRing(
        `yellow red yellow red yellow yellow red red red yellow`
        )
        pause(500)
    }
    light.clear()
})

Downloading

AdaFruit MakeCode download for Circuit PlayGround Express

Links