Objectives: Assessments play a crucial role in computerscience courses by providing insights into student learning. While previous research has explored various aspects of assessments, little attention has been given...
详细信息
ISBN:
(纸本)9798400704758
Objectives: Assessments play a crucial role in computerscience courses by providing insights into student learning. While previous research has explored various aspects of assessments, little attention has been given to assessment policies that instructors devise and their impact on students' experiences. Our goal was to investigate: How do assessment policies shape marginalized students' experiences in coding classes? Method: We conducted 19 semi-structured interviews with post-secondary students currently enrolled in or completed a class where their code was evaluated. To recruit, we primarily targeted students from underrepresented racial groups in computerscience. Many of these students attended large 4-year public universities. During the interviews, we inquired about students' experience with different assessment policies and how those policies affected their lives and experiences completing the assignments. Results: Our findings revealed ten distinct ways policy and students' lives interacted to create or heighten inequities, which significantly shaped marginalized students' lives. Many policies did not consider the unique experiences of their students and students' needs. Additionally, due to unclear and strict policies, students experienced frustration, confusion, and demotivation, consequently diminishing their sense of belonging in computerscience and weakening their self-efficacy as programmers. This reveals the negative consequences of poor assessment policy choices and provides insight into how assessment policies can create barriers to learning computerscience for marginalized students.
Mixed integer programming (MIP) is a fundamental model in operations research. Local search is a powerful method for solving hard problems, but the development of local search solvers for MIP still needs to be explore...
详细信息
Computational thinking is now included in K-5 classrooms and this has led to a demand for new interactive and collaborative learning tools that engage a younger audience. Block-based programming and educational games ...
详细信息
ISBN:
(纸本)9781450394338
Computational thinking is now included in K-5 classrooms and this has led to a demand for new interactive and collaborative learning tools that engage a younger audience. Block-based programming and educational games have both been shown to be effective at engaging children, however they have limitations with respect to supporting collaborative learning and equitable access. Our goal in designing Run, Llama, Run was to build on the positive aspects of block-based programming and educational games while also addressing these limitations. Furthermore, we are using Run, Llama, Run as a platform to explore the trade-offs between digital and tangible interfaces to understand how best to support equitable access while maintaining learning, engagement, and collaboration.
We present a kind inference algorithm for the FREEST programming language. The input to the algorithmis FREEST source code with (possibly part of) kind annotations replaced by kind variables. The algorithm infers conc...
详细信息
We present a kind inference algorithm for the FREEST programming language. The input to the algorithmis FREEST source code with (possibly part of) kind annotations replaced by kind variables. The algorithm infers concrete kinds for all kind variables. We ran the algorithm on the FREEST test suite by first replacing kind annotation on all type variables by fresh kind variables, and concluded that the algorithm correctly infers all kinds. Non surprisingly, we found out that programmers do not choose the most general kind in 20% of the cases.
A novel Weighted Bipolar Argumentation Framework (WBAF) is proposed in this paper, which deals with attack and support relations equally and takes into account the weight of arguments and relations, and is a more...
详细信息
Security failures in software arising from failures to practice secure programming are commonplace. Improving this situation requires that practitioners have a clear understanding of the foundational concepts in secur...
详细信息
ISBN:
(纸本)9781450394338
Security failures in software arising from failures to practice secure programming are commonplace. Improving this situation requires that practitioners have a clear understanding of the foundational concepts in secure programming to serve as a basis for building new knowledge and responding to new challenges. We developed a Secure Programing Concept Inventory (SPCI) to measure students' understanding of foundational concepts in secure programming. The SPCI consists of thirty-five multiple choice items targeting ten concept areas of secure programming. The SPCI was developed by establishing the content domain of secure programming, developing a pool of test items, multiple rounds of testing and refining the items, and finally testing and inventory reduction to produce the final scale. Scale development began by identifying the core concepts in secure programming. A Delphi study was conducted with thirty practitioners from industry, academia, and government to establish the foundational concepts of secure programming and develop a concept map. To build a set of misconceptions in secure programming, the researchers conducted interviews with students and instructors in the field. These interviews were analyzed using content analysis. This resulted in a taxonomy of misconceptions in secure programming covering ten concept areas. An item pool of multiple-choice questions was developed. The item pool of 225 was administered to a population of 690 students across four institutions. Item discrimination and item difficulty scores were calculated, and the best performing items were mapped to the misconception categories to create subscales for each concept area resulting in a validated 35 item scale.
We present a technique to embed a functional logic language in Haskell using a GHC plugin. Our approach is based on a monadic lifting that models the functional logic semantics explicitly. Using a GHC plugin, we get m...
详细信息
ISBN:
(纸本)9783031248405;9783031248412
We present a technique to embed a functional logic language in Haskell using a GHC plugin. Our approach is based on a monadic lifting that models the functional logic semantics explicitly. Using a GHC plugin, we get many language extensions that GHC provides for free in the embedded language. As a result, we obtain a seamless embedding of a functional logic language, without having to implement a full compiler. We briefly show that our approach can be used to embed other domainspecific languages as well. Furthermore, we can use such a plugin to build a full blown compiler for our language.
In programming exercises, we propose a method to localize defects based on automatic program repair. Localizing defects is accomplished by comparing a learner’s program and model answers using program segments, which...
详细信息
A key part of learning to program is learning to understand programming error messages. They can be hard to interpret and identifying the cause of errors can be time-consuming. One factor in this challenge is that the...
详细信息
ISBN:
(纸本)9781450394314
A key part of learning to program is learning to understand programming error messages. They can be hard to interpret and identifying the cause of errors can be time-consuming. One factor in this challenge is that the messages are typically intended for an audience that already knows how to program, or even for programming environments that then use the information to highlight areas in code. Researchers have been working on making these errors more novice friendly since the 1960s, however progress has been slow. The present work contributes to this stream of research by using large language models to enhance programming error messages with explanations of the errors and suggestions on how to fix them. Large language models can be used to create useful and novice-friendly enhancements to programming error messages that sometimes surpass the original programming error messages in interpretability and actionability. These results provide further evidence of the benefits of large language models for computing educators, highlighting their use in areas known to be challenging for students. We further discuss the benefits and downsides of large language models and highlight future streams of research for enhancing programming error messages.
Learning to develop code of good quality is challenging. One way to improve code quality is through code refactoring. Students make several mistakes when refactoring code. This research project aims to comprehend stud...
详细信息
ISBN:
(纸本)9798400701399
Learning to develop code of good quality is challenging. One way to improve code quality is through code refactoring. Students make several mistakes when refactoring code. This research project aims to comprehend student errors in code refactoring, as well as to evaluate how the use of automated tools can help students remediate these errors.
暂无评论