Advances in Programming and Software Development

会議の名前
CHI 2025
Pagebreaks: Multi-Cell Scopes in Computational Notebooks
要旨

Global variables lie at the root of many programmer complaints about computational notebooks.While programmers in other environments often address these barriers with function scopes, notebook programmers use functions less often. Analyzing the interaction between user behaviors, the programming language, and the notebook environment, we propose one possible explanation: that functions interfere with using notebooks in the exploratory ways users value. For example, because partial functions are not parseable, they cannot be run in isolation, so programmers cannot split function bodies across cells to iteratively tweak and rerun the last few lines. To explore how to offer non-global scopes without hampering exploratory notebook interactions, we built Pagebreaks, a small language construct for adding scopes around multiple Jupyter Notebook cells. In an in-situ study, we explored how programmers used Pagebreaks to manage variables with non-global scopes but also to visually and conceptually organize programs in a way akin to functions.

受賞
Honorable Mention
著者
Eric Rawn
University of California, Berkeley, Berkeley, California, United States
Sarah E.. Chasins
University of California, Berkeley, Berkeley, California, United States
DOI

10.1145/3706598.3713620

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713620

動画
CPVis: Evidence-based Multimodal Learning Analytics for Evaluation in Collaborative Programming
要旨

As programming education becomes more widespread, many college students from non-computer science backgrounds begin learning programming. Collaborative programming emerges as an effective method for instructors to support novice students in developing coding and teamwork abilities. However, due to limited class time and attention, instructors face challenges in monitoring and evaluating the progress and performance of groups or individuals. To address this issue, we collect multimodal data from real-world settings and develop CPVis, an interactive visual analytics system designed to assess student collaboration dynamically. Specifically, CPVis enables instructors to evaluate both group and individual performance efficiently. CPVis employs a novel flower-based visual encoding to represent performance and provides time-based views to capture the evolution of collaborative behaviors. A within-subject experiment (N=22), comparing CPVis with two baseline systems, reveals that users gain more insights, find the visualization more intuitive, and report increased confidence in their assessments of collaboration.

著者
Gefei Zhang
Zhejiang University of Technology, Hangzhou, China
Shenming Ji
Xi'an Jiaotong-Liverpool University, Suzhou, China
Yicao Li
Zhejiang University of Technology, Hangzhou, China
Jingwei Tang
Zhejiang University of Technology, Hangzhou, China
Jihong Ding
Hainan University, Haikou, Hainan, China
Meng Xia
Texas A&M University, College Station, Texas, United States
Guodao Sun
Zhejiang University of Technology, Hangzhou, China
Ronghua Liang
Zhejiang University of Technology, Hangzhou, Zhejiang, China
DOI

10.1145/3706598.3713353

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713353

動画
Understanding the Challenges Students Face in Non-English Programming Environments Due to the Programming Language Transition: A Case Study of Keywords in the Chinese Version of Scratch
要旨

As the importance of computer science (CS) education gains global recognition, the learner population is expanding to include all manner of backgrounds. However, students from non-English backgrounds face challenges in understanding instructional material, technical communication, and reading and writing code, which further impacts their learning outcomes. These issues have attracted attention in the fields of Human-Computer Interaction (HCI), programming languages, and computer education, which have demonstrated that using programming tools in mother tongues or local languages enhances learners' ability to grasp computing concepts. Consequently, extensive efforts have been dedicated to translating English technical terms across various languages and even developing non-English-based programming languages.

著者
Siyu Wang
Wuhan University, Wuhan, China
Janice Jianing SI
University of Macau, Macao, China
Huanghuang Liang
Wuhan University, Wuhan, China
Chuang Hu
Wuhan University, Wuhan, China
Yujun Zhu
Anhui Normal University, Wuhu, Anhui, China
Xiaobo Zhou
University of Macau, Macao, China
Kanye Ye WANG
University of Macau, Macao, China
Dazhao Cheng
Wuhan University, Wuhan, China
DOI

10.1145/3706598.3713446

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713446

動画
“Even Though I Went Through Everything, I Didn’t Feel Like I Learned a Lot”: Insights From Experiences of Non-Computer Science Students Learning to Code
要旨

Programming education is increasingly seen as an important curricular component of non-Computer Science (CS) disciplines at the undergraduate level. While existing research has studied non-CS majors' experiences in introductory programming courses, there is limited work that explores such experiences across universities and disciplines. To address this gap, we conducted semi-structured interviews with 12 non-CS major programming students across several majors and universities and interpreted the results through reflexive thematic analysis. Our findings suggest that while students are excited about and interested in learning programming, they face barriers that often arise from the design of the courses they take and a lack of targeted resources and tools to support them. Building on our findings, we conclude with a set of recommendations for the design of tools, artifacts, and courses that can support programming education for non-major students.

著者
Murtaza Ali
University of Washington, Seattle, Washington, United States
Sayamindu Dasgupta
University of Washington, Seattle, Washington, United States
DOI

10.1145/3706598.3713624

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713624

動画
PLAID: Supporting Computing Instructors to Identify Domain-Specific Programming Plans at Scale
要旨

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 programming. Our formative study (N=10 educators) showed that identifying plans is a tedious process. To advance plan-focused pedagogies in application-focused domains, we created an LLM-powered pipeline that automates the effortful parts of educators' plan identification process by providing use-case-driven program examples and candidate plans. In design workshops (N=7 educators), we identified design goals to maximize instructors' efficiency in plan identification by optimizing interaction with this LLM-generated content. Our resulting tool, PLAID, enables instructors to access a corpus of relevant programs to inspire plan identification, compare code snippets to assist plan refinement, and facilitates them in structuring code snippets into plans. We evaluated PLAID in a within-subjects user study (N=12 educators) and found that PLAID led to lower cognitive demand and increased productivity compared to the state-of-the-art. Educators found PLAID beneficial for generating instructional material. Thus, our findings suggest that human-in-the-loop approaches hold promise for supporting plan-focused pedagogies at scale.

著者
Yoshee Jain
University of Illinois Urbana-Champaign, Urbana, Illinois, United States
Mehmet Arif Demirtas
University of Illinois Urbana-Champaign, Urbana, Illinois, United States
Kathryn Irene. Cunningham
University of Illinois Urbana-Champaign, Urbana, Illinois, United States
DOI

10.1145/3706598.3713832

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713832

動画
InterLink: Linking Text with Code and Output in Computational Notebooks
要旨

Computational notebooks, widely used for ad-hoc analysis and often shared with others, can be difficult to understand because the standard linear layout is not optimized for reading. In particular, related text, code, and outputs may be spread across the UI making it difficult to draw connections. In response, we introduce InterLink, a plugin designed to present the relationships between text, code, and outputs, thereby making notebooks easier to understand. In a formative study, we identify pain points and derive design requirements for identifying and navigating relationships among various pieces of information within notebooks. Based on these requirements, InterLink features a new layout that separates text from code and outputs into two columns. It uses visual links to signal relationships between text and associated code and outputs and offers interactions for navigating related pieces of information. In a user study with 12 participants, those using InterLink were 13.6% more accurate at finding and integrating information from complex analyses in computational notebooks. These results show the potential of notebook layouts that make them easier to understand.

著者
Yanna Lin
The Hong Kong University of Science and Technology, Hong Kong, China
Leni Yang
The Hong Kong University of Science and Technology, Hong Kong, China
Haotian Li
Microsoft Research Asia, Hong Kong, China
Huamin Qu
The Hong Kong University of Science and Technology, Hong Kong, China
Dominik Moritz
Carnegie Mellon University, Pittsburgh, Pennsylvania, United States
DOI

10.1145/3706598.3714104

論文URL

https://dl.acm.org/doi/10.1145/3706598.3714104

動画
Slowness, Politics, and Joy: Values That Guide Technology Choices in Creative Coding Classrooms
要旨

There are many tools and technologies for making art with code, each embodying distinct values and affordances. Within this landscape, creative coding educators must evaluate how different tools map onto their own principles and examine the potential impacts of those choices on students' learning and artistic development. Understanding the values guiding these decisions is critical, as they reflect insights about these contexts, communities, and pedagogies. We explore these values through semi-structured interviews with (N=12) creative coding educators and toolbuilders. We identify three major themes: slowness (how friction can make room for reflection), politics (including the lasting effects of particular technologies), and joy (or the capacity for playful engagement). The lessons and priorities voiced by our participants offer valuable, transferable perspectives---like preferring community building (such as through documentation) over techno-solutionism. We demonstrate application of these critical lenses to two tool design areas (accessibility and AI assistance).

受賞
Honorable Mention
著者
Andrew M. McNutt
University of Utah, Salt Lake City, Utah, United States
Sam Cohen
The University of Chicago, Chicago, Illinois, United States
Ravi Chugh
University of Chicago, Chicago, Illinois, United States
DOI

10.1145/3706598.3713472

論文URL

https://dl.acm.org/doi/10.1145/3706598.3713472

動画