Synthesizing Tasks for Block-based Programming
Not on the map. Why?
Abstract (arXiv)
Block-based visual programming environments play a critical role in introducing computing concepts to K-12 students. One of the key pedagogical challenges in these environments is in designing new practice tasks for a student that match a desired level of difficulty and exercise specific programming concepts. In this paper, we formalize the problem of synthesizing visual programming tasks. In particular, given a reference visual task rm Tin and its solution code rm Cin, we propose a novel methodology to automatically generate a set (rm Tout, rm Cout) of new tasks along with solution codes such that tasks rm Tin and rm Tout are conceptually similar but visually dissimilar. Our methodology is based on the realization that the mapping from the space of visual tasks to their solution codes is highly discontinuous; hence, directly mutating reference task rm Tin to generate new tasks is futile. Our task synthesis algorithm operates by first mutating code rm Cin to obtain a set of codes rm Cout. Then, the algorithm performs symbolic execution over a code rm Cout to obtain a visual task rm Tout; this step uses the Monte Carlo Tree Search (MCTS) procedure to guide the search in the symbolic tree. We demonstrate the effectiveness of our algorithm through an extensive empirical evaluation and user study on reference tasks taken from the Hour of Code: Classic Maze challenge by Code.org and the Intro to Programming with Karel course by CodeHS.com.
Key facts. Cited by 19 papers in the map (data through 7 Oct 2026). First posted on arXiv 17 Jun 2020.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 1; 2022: 1; 2023: 7; 2024: 7; 2025: 2; 2026: 1.
19 papers.
Sort:
By area:
- 2023Generative AI for Programming Education: Benchmarking ChatGPT, GPT-4, and Human Tutorscited by 38
- 2021Reinforcement Learning for Education: Opportunities and Challengescited by 25
- 2023Neural Task Synthesis for Visual Programmingcited by 13
- 2023Evaluating ChatGPT and GPT-4 for Visual Programmingcited by 13
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzescited by 10
- 2024Math Multiple Choice Question Generation via Human-Large Language Model Collaborationcited by 9
- 2022From {Solution Synthesis} to {Student Attempt Synthesis} for Block-Based Visual Programming Taskscited by 8
- 2023Large Language Models for In-Context Student Modeling: Synthesizing Student's Behavior in Visual Programmingcited by 8
- 2024Test Case-Informed Knowledge Tracing for Open-ended Coding Taskscited by 7
- 2026KASER: Knowledge-Aligned Student Error Simulator for Open-Ended Coding Taskscited by 7
- 2024BugSpotter: Automated Generation of Code Debugging Exercisescited by 5
- 2024Towards Generalizable Agents in Text-Based Educational Environments: A Study of Integrating RL with LLMscited by 4
7 more
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environmentcited by 4
- 2023Towards Computationally Efficient Responsibility Attribution in Decentralized Partially Observable MDPscited by 3
- 2024Benchmarking Generative Models on Computational Thinking Tests in Elementary Visual Programmingcited by 3
- 2025Synthesizing High-Quality Programming Tasks with LLM-based Expert and Student Agentscited by 3
- 2024Interpreting Latent Student Knowledge Representations in Programming Assignmentscited by 2
- 2025Exploration vs. Fixation: Scaffolding Divergent and Convergent Thinking for Human-AI Co-Creation with Generative Modelscited by 2
- 2023Synthesizing a Progression of Subtasks for Block-Based Visual Programming Taskscited by 1
- 2026KASER: Knowledge-Aligned Student Error Simulator for Open-Ended Coding Tasks10 Jan 2026
- 2025Exploration vs. Fixation: Scaffolding Divergent and Convergent Thinking for Human-AI Co-Creation with Generative Models20 Dec 2025
- 2025Synthesizing High-Quality Programming Tasks with LLM-based Expert and Student Agents10 Apr 2025
- 2024BugSpotter: Automated Generation of Code Debugging Exercises21 Nov 2024
- 2024Test Case-Informed Knowledge Tracing for Open-ended Coding Tasks28 Sep 2024
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environment17 Jun 2024
- 2024Benchmarking Generative Models on Computational Thinking Tests in Elementary Visual Programming14 Jun 2024
- 2024Interpreting Latent Student Knowledge Representations in Programming Assignments13 May 2024
- 2024Math Multiple Choice Question Generation via Human-Large Language Model Collaboration1 May 2024
- 2024Towards Generalizable Agents in Text-Based Educational Environments: A Study of Integrating RL with LLMs29 Apr 2024
- 2023Large Language Models for In-Context Student Modeling: Synthesizing Student's Behavior in Visual Programming15 Oct 2023
- 2023Evaluating ChatGPT and GPT-4 for Visual Programming30 Jul 2023
7 more
- 2023Generative AI for Programming Education: Benchmarking ChatGPT, GPT-4, and Human Tutors29 Jun 2023
- 2023Synthesizing a Progression of Subtasks for Block-Based Visual Programming Tasks27 May 2023
- 2023Neural Task Synthesis for Visual Programming26 May 2023
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzes28 Mar 2023
- 2023Towards Computationally Efficient Responsibility Attribution in Decentralized Partially Observable MDPs24 Feb 2023
- 2022From {Solution Synthesis} to {Student Attempt Synthesis} for Block-Based Visual Programming Tasks3 May 2022
- 2021Reinforcement Learning for Education: Opportunities and Challenges15 Jul 2021
- 2023Generative AI for Programming Education: Benchmarking ChatGPT, GPT-4, and Human Tutorscited by 38
- 2021Reinforcement Learning for Education: Opportunities and Challengescited by 25
- 2023Neural Task Synthesis for Visual Programmingcited by 13
- 2023Evaluating ChatGPT and GPT-4 for Visual Programmingcited by 13
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzescited by 10
- 2024Math Multiple Choice Question Generation via Human-Large Language Model Collaborationcited by 9
- 2022From {Solution Synthesis} to {Student Attempt Synthesis} for Block-Based Visual Programming Taskscited by 8
- 2023Large Language Models for In-Context Student Modeling: Synthesizing Student's Behavior in Visual Programmingcited by 8
- 2024Test Case-Informed Knowledge Tracing for Open-ended Coding Taskscited by 7
- 2026KASER: Knowledge-Aligned Student Error Simulator for Open-Ended Coding Taskscited by 7
- 2024BugSpotter: Automated Generation of Code Debugging Exercisescited by 5
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environmentcited by 4
12 most cited of 18 All 18 (JSON)
- 2026KASER: Knowledge-Aligned Student Error Simulator for Open-Ended Coding Tasks10 Jan 2026
- 2025Exploration vs. Fixation: Scaffolding Divergent and Convergent Thinking for Human-AI Co-Creation with Generative Models20 Dec 2025
- 2025Synthesizing High-Quality Programming Tasks with LLM-based Expert and Student Agents10 Apr 2025
- 2024BugSpotter: Automated Generation of Code Debugging Exercises21 Nov 2024
- 2024Test Case-Informed Knowledge Tracing for Open-ended Coding Tasks28 Sep 2024
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environment17 Jun 2024
- 2024Benchmarking Generative Models on Computational Thinking Tests in Elementary Visual Programming14 Jun 2024
- 2024Interpreting Latent Student Knowledge Representations in Programming Assignments13 May 2024
- 2024Math Multiple Choice Question Generation via Human-Large Language Model Collaboration1 May 2024
- 2023Large Language Models for In-Context Student Modeling: Synthesizing Student's Behavior in Visual Programming15 Oct 2023
- 2023Evaluating ChatGPT and GPT-4 for Visual Programming30 Jul 2023
- 2023Generative AI for Programming Education: Benchmarking ChatGPT, GPT-4, and Human Tutors29 Jun 2023
12 newest of 18 All 18 (JSON)