English
Related papers

Related papers: Cheat Sheet for Teaching Programming with Comics: …

200 papers

Even relatively simple code analysis can be a daunting task for many first year students. Perceived complexity, coupled with foreign and harsh syntax, often outstrips the ability for students to take in what they are seeing in terms of…

Human-Computer Interaction · Computer Science 2008-03-05 Christopher Pearson , Celina Gibbs , Yvonne Coady

We, as a society, need artists to help us interpret and explain science, but what does an artist's studio look like when today's science is built upon the language of large, increasingly complex data? This paper presents a data…

Human-Computer Interaction · Computer Science 2020-10-20 Bridger Herman , Francesca Samsel , Annie Bares , Seth Johnson , Greg Abram , Daniel F. Keefe

Computing education widely applies general learning theories and pedagogical practices. However, computing also includes specific disciplinary knowledge and skills, e.g., programming and software development methods, for which there has…

Computers and Society · Computer Science 2024-09-20 Lauri Malmi , Judy Sheard , Claudia Szabo , Päivi Kinnunen

Humans draw to facilitate reasoning: we draw auxiliary lines when solving geometry problems; we mark and circle when reasoning on maps; we use sketches to amplify our ideas and relieve our limited-capacity working memory. However, such…

Computer Vision and Pattern Recognition · Computer Science 2024-11-12 Yushi Hu , Weijia Shi , Xingyu Fu , Dan Roth , Mari Ostendorf , Luke Zettlemoyer , Noah A Smith , Ranjay Krishna

Chain-of-Thought reasoning has driven large language models to extend from thinking with text to thinking with images and videos. However, different modalities still have clear limitations: static images struggle to represent temporal…

Artificial Intelligence · Computer Science 2026-02-04 Andong Chen , Wenxin Zhu , Qiuyu Ding , Yuchen Song , Muyun Yang , Tiejun Zhao

Computer science's increased recognition as a prominent field of study has attracted students with diverse academic backgrounds. This has significantly increased the already high failure rates in introductory courses. To address this…

Computers and Society · Computer Science 2025-10-28 Eric Hics , Vinhthuy Phan , Kriangsiri Malasri

Computer programming is among the fundamental aspects of computer science curriculum. Many students first introduced to introductory computer programming courses experience difficulties in learning and comprehending. Vast amount of…

Programming Languages · Computer Science 2014-08-13 Ally S. Nyamawe

Computer-Aided Design (CAD) applications are used in manufacturing to model everything from coffee mugs to sports cars. These programs are complex and require years of training and experience to master. A component of all CAD models…

Computer Vision and Pattern Recognition · Computer Science 2021-05-07 Yaroslav Ganin , Sergey Bartunov , Yujia Li , Ethan Keller , Stefano Saliceti

Programming in Prolog is hard for programmers that are used to procedural coding. In this manual the method of drawing search trees is introduced with the aim to get a better understanding of how Prolog works. After giving a first example…

Programming Languages · Computer Science 2020-01-23 Johan Bos

Coded computing is a distributed paradigm that uses coding theory to introduce \textit{redundancy} and overcome bottlenecks in large-scale systems. In the same vein, randomized numerical linear algebra employs probabilistic methods to…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-19 Neophytos Charalambides , Arya Mazumdar

As Computational Thinking (CT) continues to permeate younger age groups in K-12 education, established CT platforms such as Scratch face challenges in catering to these younger learners, particularly those in the elementary school (ages…

Human-Computer Interaction · Computer Science 2024-02-08 Liuqing Chen , Shuhong Xiao , Yunnong Chen , Ruoyu Wu , Yaxuan Song , Lingyun Sun

In this paper, we propose a context-aware recommender system that models students' programming skills using embeddings of the source code they submit throughout a course. These embeddings predict students' skills across multiple programming…

Machine Learning · Computer Science 2026-02-12 Carlos Eduardo P. Silva , João Pedro M. Sena , Julio C. S. Reis , André G. Santos , Lucas N. Ferreira

There are several approaches for encoding source code in the input vectors of neural models. These approaches attempt to include various syntactic and semantic features of input programs in their encoding. In this paper, we investigate…

Software Engineering · Computer Science 2023-02-02 Md Rafiqul Islam Rabin , Mohammad Amin Alipour

Interactive visualization can support fluid exploration but is often limited to predetermined tasks. Scripting can support a vast range of queries but may be more cumbersome for free-form exploration. Embedding interactive visualization in…

Prior research has explored potential applications of video games in programming education to elicit computational thinking skills. However, existing approaches are often either too general, not taking into account the diversity of genres…

Multimedia · Computer Science 2024-07-08 Giulio Barbero , Marcello A. Gómez-Maureira , Felienne F. J. Hermans

Many computational tasks benefit from being formulated as the composition of neural networks followed by a discrete symbolic program. The goal of neurosymbolic learning is to train the neural networks using end-to-end input-output labels of…

Machine Learning · Computer Science 2025-10-24 Seewon Choi , Alaia Solko-Breslin , Rajeev Alur , Eric Wong

Timely, personalized feedback is essential for students learning programming. LLM-powered tools like ChatGPT offer instant support, but reveal direct answers with code, which may hinder deep conceptual engagement. We developed CodeAid, an…

Human-Computer Interaction · Computer Science 2024-02-27 Majeed Kazemitabaar , Runlong Ye , Xiaoning Wang , Austin Z. Henley , Paul Denny , Michelle Craig , Tovi Grossman

Program decomposition is essential for developing maintainable and efficient software, yet it remains a challenging skill to teach and learn in introductory programming courses. What does program decomposition for procedural CS1 programs…

Software Engineering · Computer Science 2024-11-19 Georgiana Haldeman , Judah Robbins Bernal , Alec Wydra , Paul Denny

Live coding is a pedagogical technique in which an instructor writes and executes code in front of students to impart skills like incremental development and debugging. Although live coding offers many benefits, instructors face many…

Human-Computer Interaction · Computer Science 2025-06-05 Xiaotian Su , April Wang

Recent advances in large language models (LLMs) have introduced new paradigms in software development, including vibe coding, AI-assisted coding, and agentic coding, fundamentally reshaping how software is designed, implemented, and…

Software Engineering · Computer Science 2026-01-01 Hung-Fu Chang , MohammadShokrolah Shirazi , Lizhou Cao , Supannika Koolmanojwong Mobasser