Microsoft MakeCode: Embedded Programming for Education, in Blocks and TypeScript - Ball, Thomas; Chatra, Abhijith; Halleux, Jonathan "Peli" de; Hodges, Steve; Moskal, Michal; Russell, Jacqueline (SPLASH-E 2019: Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E, 2019)
Microsoft MakeCode (https://www.makecode.com) is a platform and accompanying web app for simplifying the programming of microcontroller-based devices in the classroom. For each device, MakeCode provides a customized end-to-end experience in the web browser consisting of code editors, device simulator, debugger, compiler to machine code, and linker to a pre-compiled C++ runtime, as well as a documentation and tutorial system. We present an overview of MakeCode and detail the major design decisions behind the platform.