English
Related papers

Related papers: Learnable Programming: Blocks and Beyond

200 papers

Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the…

Computers and Society · Computer Science 2022-01-19 Oka Kurniawan , Cyrille Jégourel , Norman Tiong Seng Lee , Matthieu De Mari , Christopher M. Poskitt

Expertise in programming traditionally assumes a binary novice-expert divide. Learning resources typically target programmers who are learning programming for the first time, or expert programmers for that language. An underrepresented, yet…

Software Engineering · Computer Science 2018-08-29 Nischal Shrestha , Titus Barik , Chris Parnin

Software developers use metrics to evaluate code quality and productivity, but these practices are still rare in programming education. This project bridges the gap by collecting real-time learning analytics from individual student and…

Programming is increasingly taught using block-based languages like Scratch. While the use of blocks prevents syntax errors, learners can still make semantic mistakes, requiring feedback and help. As teachers may be overwhelmed by help…

Software Engineering · Computer Science 2025-04-18 Sebastian Schweikl , Gordon Fraser

Data-driven approaches are becoming more common as problem-solving techniques in many areas of research and industry. In most cases, machine learning models are the key component of these solutions, but a solution involves multiple such…

Artificial Intelligence · Computer Science 2019-06-20 Parisa Kordjamshidi , Dan Roth , Kristian Kersting

To broaden participation, competitive programming contests may include beginner-level problems that do not require knowledge of advanced Computer Science concepts (e.g., algorithms and data structures). However, since most participants have…

Computers and Society · Computer Science 2024-05-27 Mrigank Pawagi , Viraj Kumar

Language-orientated programming promises to elevate programmer productivity through increased abstrac- tion capabilities. Structural programming environments provide apparatus to reduce the difficulties with syntax. The language workbench,…

Programming Languages · Computer Science 2014-03-18 Gavin Wood

Open-ended learning frames intelligence as emerging from continual interaction with an ever-expanding space of environments. While recent advances have utilized foundation models to programmatically generate diverse environments, these…

Machine Learning · Computer Science 2026-02-10 Konstantinos Mitsides , Maxence Faldor , Antoine Cully

This paper introduces and explores a new programming paradigm, Model-based Programming, designed to address the challenges inherent in applying deep learning models to real-world applications. Despite recent significant successes of deep…

Machine Learning · Computer Science 2023-05-15 Meng Zheng

Research at the intersection of machine learning, programming languages, and software engineering has recently taken important steps in proposing learnable probabilistic models of source code that exploit code's abundance of patterns. In…

Software Engineering · Computer Science 2018-05-08 Miltiadis Allamanis , Earl T. Barr , Premkumar Devanbu , Charles Sutton

The importance of programming education has lead to dedicated educational programming environments, where users visually arrange block-based programming constructs that typically control graphical, interactive game-like programs. The…

Software Engineering · Computer Science 2022-08-24 Adina Deiner , Patric Feldmeier , Gordon Fraser , Sebastian Schweikl , Wengran Wang

Pedagogical approaches focusing on stereotypical code solutions, known as programming plans, can increase problem-solving ability and motivate diverse learners. However, plan-focused pedagogies are rarely used beyond introductory…

Human-Computer Interaction · Computer Science 2025-02-18 Yoshee Jain , Mehmet Arif Demirtaş , Kathryn Cunningham

Software reliability is critical in ensuring that the digital systems we depend on function correctly. In software development, increasing software reliability often involves testing. However, for complex and critical systems, developers…

Software Engineering · Computer Science 2025-09-09 Francisco Oliveira , Alexandra Mendes , Carolina Carreira

AI-based chatbots have the potential to accelerate learning and teaching, but may also have counterproductive consequences without thoughtful design and scaffolding. To better understand teachers' perspectives on large language model…

The authors present the results of a simple usability test performed on line_explorer, an innovative tool aimed at letting students explore programming. The system offers an interactive environment where students can learn, review, and…

Computers and Society · Computer Science 2017-11-16 Giovanni Vincenti , Scott Hilberg , James Braman , Michael Satzinger , Lily Cao

We provide simple schemes to build Bayesian Neural Networks (BNNs), block by block, inspired by a recent idea of computation skeletons. We show how by adjusting the types of blocks that are used within the computation skeleton, we can…

Machine Learning · Statistics 2018-06-12 Hao Henry Zhou , Yunyang Xiong , Vikas Singh

Websites are frequently used by programmers to support the development process. This paper investigates programmer-Web interactions when coding, and combines observations of behaviour with assessments of the resulting source code. We report…

Software Engineering · Computer Science 2023-04-21 Omar Alghamdi , Sarah Clinch , Mohammad Alhamadi , Caroline Jay

Training and deploying the large language models requires a large mount of computational resource because the language models contain billions of parameters and the text has thousands of tokens. Another problem is that the large language…

Computer Vision and Pattern Recognition · Computer Science 2023-07-21 Yuanhao Gong

We examine "vibe coding": an emerging programming paradigm where developers primarily write code by interacting with code-generating large language models rather than writing code directly. We present the first empirical study of vibe…

Human-Computer Interaction · Computer Science 2025-10-06 Advait Sarkar , Ian Drosos

This study aims to enhance the maintainability of code generated by Large Language Models (LLMs), with a focus on the Python programming language. As the use of LLMs for coding assistance grows, so do concerns about the maintainability of…

Software Engineering · Computer Science 2024-08-20 Karthik Shivashankar , Antonio Martini