Large language models (LLMs) like ChatGPT are changing computing education and may create additional barriers to those already faced by non-native English speakers (NNES) learning computing. We investigate an opportun...
详细信息
ISBN:
(纸本)9798400704239
Large language models (LLMs) like ChatGPT are changing computing education and may create additional barriers to those already faced by non-native English speakers (NNES) learning computing. We investigate an opportunity for a positive impact of LLMs on NNES through multilingual programming exercise generation. Following previous work with LLM exercise generation in English, we prompt OpenAI GPT-3.5 in 4 natural languages (English, Tamil, Spanish, and Vietnamese) to create introductory programming problems, sample solutions, and test cases. We evaluate these problems on their sensibility, readability, translation, sample solution accuracy, topicality, and cultural relevance. We find that problems generated in English, Spanish, and Vietnamese are largely sensible, easily understood, and accurate in their sample solutions. However, Tamil problems are mostly non-sensible and have a much lower passing test rate, indicating that the abilities of LLMs for problem generation are not generalizable across languages. Our analysis suggests that these problems could not be given verbatim to students, but with minimal effort, most errors can be fixed. We further discuss the benefits of these problems despite their flaws, and their opportunities to provide personalized and culturally relevant resources for students in their native languages.
We argue in favor of Docker containers as alternatives to clusters of servers or virtual machines for students in introductory programming courses. We present our experience with the same since 2015 in CS50 at Harvard...
详细信息
ISBN:
(纸本)9798400706004
We argue in favor of Docker containers as alternatives to clusters of servers or virtual machines for students in introductory programming courses. We present our experience with the same since 2015 in CS50 at Harvard University as well as the pedagogical and operational motivations therefor. We present, too, the evolution of our environments for students over the years, from an on-campus cluster, to an off-campus cloud, to client-side virtual machines, to Docker containers, discussing the trade-offs of each. Not only do containers provide students with a standardized environment, reducing technical difficulties and frequently asked questions at term's start, they also provide instructors with full control over the software in use and versions thereof, additionally allowing instructors to deploy updates mid-semester. Particularly for large courses with hundreds or even thousands of students, containers allow staff to focus more of their time on teaching than on technical support. And, coupled with text editors that support extensions or plugins, containers allow instructors to optimize students' environment for learning, while still acquainting students with industry-standard tools. Most recently implemented atop GitHub Codespaces, a cloud-based version of Visual Studio Code, our own container-based solutions have since been used by more than 700,000 students and teachers, both on campus and off, and are also freely available to any teacher or student outside of our own university.
Providing timely and personalized feedback to large numbers of students is a long-standing challenge in programming courses. Relying on human teaching assistants (TAs) has been extensively studied, revealing a number ...
详细信息
ISBN:
(纸本)9798400706004
Providing timely and personalized feedback to large numbers of students is a long-standing challenge in programming courses. Relying on human teaching assistants (TAs) has been extensively studied, revealing a number of potential shortcomings. These include inequitable access for students with low confidence when needing support, as well as situations where TAs provide direct solutions without helping students to develop their own problem-solving skills. With the advent of powerful large language models (LLMs), digital teaching assistants configured for programming contexts have emerged as an appealing and scalable way to provide instant, equitable, round-the-clock support. Although digital TAs can provide a variety of help for programming tasks, from high-level problem solving advice to direct solution generation, the effectiveness of such tools depends on their ability to promote meaningful learning experiences. If students find the guardrails implemented in digital TAs too constraining, or if other expectations are not met, they may seek assistance in ways that do not help them learn. Thus, it is essential to identify the features that students believe make digital teaching assistants valuable. We deployed an LLM-powered digital assistant in an introductory programming course and collected student feedback (n = 813) on the characteristics of the tool they perceived to be most important. Our results highlight that students value such tools for their ability to provide instant, engaging support, particularly during peak times such as before assessment deadlines. They also expressed a strong preference for features that enable them to retain autonomy in their learning journey, such as scaffolding that helps to guide them through problem-solving steps rather than simply being shown direct solutions.
Self-regulation refers to the ability to plan, monitor, control and reflect on one's problem-solving process. Prior research has shown that self-regulated learning (SRL) strategies help improve novice performance ...
详细信息
ISBN:
(纸本)9798400704239
Self-regulation refers to the ability to plan, monitor, control and reflect on one's problem-solving process. Prior research has shown that self-regulated learning (SRL) strategies help improve novice performance in solving programming problems. However, with the advent of LLM tools like ChatGPT, novices can generate fairly accurate code by just providing the problem prompt, and hence may forego applying essential self-regulation strategies such as planning and reflection to solve the problem. In this position paper, we discuss challenges and opportunities that generative AI technologies pose for novices' self-regulation strategies in the context of programming problem solving. We believe that the key challenge facing educators is that such technologies may hamper novices' ability to regulate their programming problem solving process. On the other hand, these technologies also open up the possibility to design new interventions that promote better SRL strategies in learners. We draw on generic and domain-specific self-regulated learning theories as the basis of our work, and propose an SRL framework that incorporates use of generative AI tools in programming problem solving. We illustrate how the proposed framework guides exploration of the design space of interventions that integrate generative AI in CS education.
This work focuses on quantum programming language and logics for quantum programs. We extend the standard quantum programming language with a parallel operator and an await command. Our extended quantum dynamic logic ...
详细信息
ISBN:
(纸本)9789819603534;9789819603541
This work focuses on quantum programming language and logics for quantum programs. We extend the standard quantum programming language with a parallel operator and an await command. Our extended quantum dynamic logic provides a more robust framework for reasoning about the behaviors and properties of quantum programs that utilize these new constructs. These new features enhance the language's capability to handle concurrent quantum operations and synchronization, enabling more advanced and efficient quantum computations.
Research on mental model representations developed by programmers during parallel program comprehension is important for informing and advancing teaching methods including model-based learning and visualizations. The ...
详细信息
Research on mental model representations developed by programmers during parallel program comprehension is important for informing and advancing teaching methods including model-based learning and visualizations. The goals of the research presented here were to determine: how the mental models of programmers change and develop as they learn parallel programming, the quality of their mental models after learning parallel programming, and what type of information is part of their mental models when examining code for the presence of data races. Participants were experienced C programmers and included both university students and professionals. The mental models of participants were analyzed by having them perform a code tracing task where they externalized their mental models by drawing diagrams while tracing the execution of parallel code. We also analyzed their mental models by having participants determine the presence of data races in parallel code and then answer multiple choice and open-ended questions related to the code. The results presented in this article indicate that programmers' mental models progress from a weaker execution model and a stronger situation model before learning parallel programming, to a stronger execution model and a weaker situation model after learning parallel programming. The thematic analysis of the openended responses that indicate what components of code programmers used to determine whether or not a data race was present provides insight into the topics that should be emphasized when teaching parallel programming.
Joule loss is a major concern in the power grid because it can lead to significant energy waste. There are a number of methods for minimizing joule loss, but they are still incomplete because they don't take into ...
详细信息
ISBN:
(纸本)9783031631092;9783031631108
Joule loss is a major concern in the power grid because it can lead to significant energy waste. There are a number of methods for minimizing joule loss, but they are still incomplete because they don't take into account the changing trend of electricity demand in buildings. In this paper, we propose a novel approach to minimizing joule loss using a hybridization of a recurrent neural network (RNN) and quadratic programming (QP). The RNN is used to learn the temporal dynamics of the electricity demand, while the QP is used to solve the combinatory optimization problem of minimizing joule loss. The recurrent neural network set up is able to predict the needs of the different campus premises in order to make the system flexible to the needs of consumers. It contains 5 layers: 3 of the Long short term memory type, 1 of the dropout type and 1 of the dense type for a total of 86,910 parameters to be determined during training. It was trained and validated using American hourly electricity power data normalized between 0 and 1. We model the power losses by Joule effect occurring during the transport from the production sources and to the consumers with quadratic programming. Once the optimization model was formulated based on electric laws, it was solved to determine the optimal current flows that should circulate in one part of the network. After simulation, the analysis of the results obtained shows that the proposed solution produces good results to the extent that by integrating variations in user needs, it makes it possible to determine the configuration which reduces hourly losses. To improve the accuracy of the proposed system one could use a data set containing a few more parameters affecting the consumption of the load such as meteorological datas.
Formulating questions, whether for assessments or to create exercises, is an essential component of teaching programming. The development of well-constructed questions requires considerable effort. In this research, a...
详细信息
ISBN:
(纸本)9783031485350;9783031485367
Formulating questions, whether for assessments or to create exercises, is an essential component of teaching programming. The development of well-constructed questions requires considerable effort. In this research, a consolidated catalogue of question types was developed to assist programming instructors with the formulation of questions. Existing classifications of question types in both programming and computing were consulted in developing the catalogue. The catalogue was constructed using a systematised literature review by referring to the literature and unifying different categories of question types described in the literature. The catalogue consists of fourteen base types of questions, with the possibility of variations within most base types. The catalogue is primarily intended to assist instructors in designing and formulating more diverse types of questions in programming courses. Additionally, the author envisages that this catalogue can serve as a starting point for discussions on how to map current educational taxonomies to question types, the different skills related to these questions, appropriate formats (for instance, multiple choice vs open format questions) and the appropriate qualification levels at which these questions can be presented.
Studies have found that most novice programmers have low proficiency in writing code. However, it is unclear what subskills compose code writing and which subskills novice programmers struggle with. This study utilize...
详细信息
Studies have found that most novice programmers have low proficiency in writing code. However, it is unclear what subskills compose code writing and which subskills novice programmers struggle with. This study utilizes programming traces to identify latent subskills that constitute code writing so that teachers can offer specific instruction on the weak subskills. Data were collected from an undergraduate course teaching introductory computerscience in Java. Six hundred and fourteen students made submissions to homework programming questions in a web-based learning system. Based on the submission traces, we computed 11 features related to correctness and time students spent on their submissions. We conducted an exploratory factor analysis on two-thirds of students selected randomly and identified four factors. The first factor, code style proficiency, was mainly related to code style errors. The second, syntactic proficiency, concerned compiler errors. The third is semantic proficiency, which concerns runtime and logic errors. The fourth, syntactic debugging proficiency, concerned the success rate and time required for fixing compiler and code style errors. A confirmatory factor analysis conducted on the remaining one-third of the data supported the four-factor structure. The factor model showed measurement invariance between the data set where the model was developed and two new datasets, one from the same sample but collected at a different time point and another from a different sample and context (onsite course vs. online course). The factors were related to prior programming abilities, programming language familiarity, and future exam performance. These associations provided validity evidence for the factor model.
Blocks-based programming languages (BBPLs) have proven effective for instructing early learners in programming. Unlike text-based languages, BBPLs eliminate the need to memorize syntax rules by enforcing correct progr...
详细信息
ISBN:
(纸本)9798400704239
Blocks-based programming languages (BBPLs) have proven effective for instructing early learners in programming. Unlike text-based languages, BBPLs eliminate the need to memorize syntax rules by enforcing correct program structure through block assembly. However, the visual nature of BBPLs can pose challenges for children with visual impairments and blindness (VI). Moreover, the existing BBPLs tailored for children with VI are rarely embraced by sighted children due to their limited capabilities. To explore the creation of an inclusive BBPL that can be used by both children with and without VI, we devised a web-based BBPL platform with keyboard accessibility functionalities and personalized audio cues through an incorporated screen reader. Within this platform, called Grid-world, students engage with basic programming concepts, including iteration and selection, through entertaining games and animations-such as navigating a character within a 2D grid space. Notably, Grid-world accommodates children with VI without the need for extra hardware or assistive devices. We conducted two empirical assessments of Grid-world involving participants with and without VI. The observational analysis of participant interaction and survey responses illuminated areas for enhancement. We describe the rationale behind Grid-world's design and accessibility features, incorporating findings from experimental studies, including participants' feedback on the accessibility features.
暂无评论