Introducing Strype, a frame-based editor
World-leading university, King's College London recently released Strype, a novel frame-based editor for Python that offers a programming environment for the BBC micro:bit
Strype is an online editor accessible at https://www.strype.org/microbit/
The benefits of frame-based editing
Frame-based editing combines the benefits of text-based editing and block-based editing. It offers similar avoidance of syntax errors and discoverability as block-based systems, while providing readability and flexibility of editing similar to text editors.
Python-like programs are written by inserting frames, using a single key command, which represent a complete statement in the language. No syntax details need to be remembered, the speed of editing increases, freeing the programmer’s mind to concentrate on the task at hand.
By avoiding frustrating errors, Strype contributes to better progress of learners, quicker success, and more fun. Entirely keyboard-based editing options keep proficient users more productive and focused.
Watch how Strype works
Moving from blocks to text-based programming
In a context of education, Strype provides an effective path for transitioning from blocks to full textual editors as it removes the burden of memorising some of the Python syntax. It gives users a chance to experiment with the core concepts of the language without getting distracted by some of the incidental detail. The frames of Strype closely match to Python constructs, so later progression to traditional Python editors is seamless.
Frame-based editing concepts are discussed in more details in this article.
Using Strype with the micro:bit environment
Strype for micro:bit has been specifically designed to assist writing and sending programs to the micro:bit board.
Strype frames provide autocompletion including the micro:bit API, and a discovery tool permits programmers to find key micro:bit API elements. Strype targets both micro:bit V1 and micro:bit V2.
The Strype environment provides interaction with the micro:bit, and can also convert the Strype code to either Hex or Python formats. The upload to micro:bit is based on the webUSB mechanism. If support of webUSB is not available from the browser, the Strype system provides alternative methods for uploading the code.
Design for learning
Strype was developed by the Programming Education Group at King’s College London – the group that also developed the BlueJ and Greenfoot programming environments, and more recently designed Stride, a Java-based frame editor. The Strype editor is the latest system is a series of educational programming environments with which the group aims at making programming more accessible to a larger cohort of learners.
Strype will be presented at the international computing education conference, SIGCSE 22 Technical Symposium.
Thanks to the team at King's College London for sharing their work on the Strype editor. This article is contributed to the micro:bit news blog by Michael Kölling, Vice Dean (Education), Faculty of Natural, Mathematical & Engineering Sciences and Professor of Computer Science, Department of Informatics.
Strype was also presented at micro:bit LIVE 2021: