Block-based Programming; Automatic Evaluation; Digital Quiz
Abstract :
[en] Block-based programming has been used as an introductory gateway to programming thanks to its simpler, visual approach for composing code. This work re-imagines this style of coding through the mobile-first framework DartBlock, which is intended to be integrated in a quiz application. It targets an older audience aiming to more quickly transition to the conventional programming language Java, by adopting a syntax visualization and interaction design inspired by integrated development environments. DartBlock focuses on teaching debugging through its included runtime which allows the execution of faulty code with descriptive exception throwing, as well as supporting automatic evaluation of programs given a sample solution to serve as feedback. To suit the smaller screen of mobile devices, the library relies on calculator-like visual editors for each primitive data type to facilitate the composition of complex boolean and numeric expressions without the need for textual input. Finally, we present preliminary student impressions of DartBlock from an initial use case study in a university class and provide organizational recommendations for introducing new frameworks to students.