This Research to Practice Full Paper presents our experience of positive outcomes with increased motivation and retention in teaching an introductory computerscience course with Python programming. Without reinventin...
详细信息
ISBN:
(数字)9781728189611
ISBN:
(纸本)9781728189628
This Research to Practice Full Paper presents our experience of positive outcomes with increased motivation and retention in teaching an introductory computerscience course with Python programming. Without reinventing the wheel, we infused few well established pedagogies by integrating and evaluating Computational Thinking (CT) skills in a meaningful way. We integrated CT with existing curriculum alongside programming and teaching general problem-solving techniques with a flowchart-based programming environment and without using specific programming concepts or languages at the beginning. Our aim here is not only to teach a programming language per se, but also to teach, at the beginning, the different ways of problem solving, logical reasoning, algorithm design, and programming constructs with minimal or no emphasis on syntax. A positive learning experience is successfully developed for our students by using appropriate pedagogies and strategies. To evaluate the impact of this infusion, a pre- and post-survey as well as a pre- and post-CT test were conducted on student cohort in different sections. The statistical analysis of the survey and test results show evidence of improvement in student's problem solving and coding skills as well as increase in motivation towards programming.
Satellite Edge Computing (SEC) can provide task computation services to terrestrial users, particularly in areas lacking terrestrial network coverage. With the increasing frequency of computational demands from Intern...
详细信息
Satellite Edge Computing (SEC) can provide task computation services to terrestrial users, particularly in areas lacking terrestrial network coverage. With the increasing frequency of computational demands from Internet of Things (IoT) devices and the limited and dynamic nature of computational resources in Low Earth Orbit (LEO) satellites, making effective real-time scheduling decisions in dynamic environments to ensure high task success rate is a critical challenge. In this work, we investigate the dynamic task scheduling of SEC based on Genetic programming Hyper-Heuristic (GPHH). Firstly, anew problem model for the dynamic task scheduling of SEC is proposed with the objective of improving the task success rate, where the real-world situations (limited and dynamic nature of satellite resources, randomness and difference of tasks) are taken into account. Secondly, to make efficient real-time routing decision and queuing decision during the dynamic scheduling process, a novel scheduling heuristic with routing rule and queuing rule is developed, considering dynamic features of the SEC system such as real-time load, energy consumption, and remaining deadlines. Thirdly, to automatically learn both routing rule and queuing rule, and improve the performance of the algorithm, a Multi-Tree Genetic programming with Elite Recombination (MTGPER) is proposed, which exploits the recombination of the excellent rules to obtain the better scheduling heuristics. The experimental results show that the proposed MTGPER significantly outperforms existing state-of-the-art methods. The scheduling heuristic evolved by MTGPER has quite good interpretability, which facilitates scheduling management in engineering practice.
The development of trustworthy distributed algorithms requires the verification of some key properties with respect to the formal specification of the expected system executions. The atomic-state model (ASM) is the mo...
详细信息
The development of trustworthy distributed algorithms requires the verification of some key properties with respect to the formal specification of the expected system executions. The atomic-state model (ASM) is the most commonly used computational model to reason on self-stabilizing algorithms. In this work, we propose methods and tools to automatically verify the self-stabilization of distributed algorithms defined in that model. To that goal, we exploit the similarities between the ASM and computational models issued from the synchronous programming area to reuse their associated verification tools, and in particular their model checkers. This allows the automatic verification of all safety properties (including bounded liveness) of any algorithm under various asynchrony assumptions (from fully asynchronous to fully synchronous) and regardless of the hypotheses on the network (e.g., on its topology, its edge and node labeling).
Aim This study explores whether personality-based role assignments (Pilot, Navigator, Solo) can raise intrinsic motivation in pair programming, focusing on designing a framework and process extension for the resource-...
详细信息
Aim This study explores whether personality-based role assignments (Pilot, Navigator, Solo) can raise intrinsic motivation in pair programming, focusing on designing a framework and process extension for the resource-constrained environment of very small entities (VSEs). Method We employed a mixed-methods design across three quasi-experimental datasets (n = 73 participants), applying linear mixed-effects (LME) modeling to assess motivational outcomes and thematically analyzing (n = 25) interviews for socio-psychological insights. Findings Openness strongly correlates with Pilot roles;Extraversion & Agreeableness favor Navigator roles;and Neuroticism aligns more comfortably with Solo roles-each yielding substantial boosts in intrinsic motivation (up to 60-65%). Twelve qualitative themes underscore the influence of mentorship, pairing constellations, and flow disruptions on developer experiences. Implications Building on these results, we propose the role-optimization motivation alignment (ROMA) framework, mapped to the ISO/IEC 29110 Software Basic Profile and Agile Guidelines, with practical tasks (T1-T7) to facilitate systematic role-trait alignments in small agile teams. Although our data primarily involve Gen-Z undergraduates, the recurring patterns suggest broader applicability, further supported by a separately published application for ongoing generalizability. Conclusion Personality-driven role optimization may significantly enhance collaboration and developer satisfaction in VSEs, though further studies in professional settings and investigations into AI-assisted or distributed pair programming are warranted.
Generative AI based on large-language models is significantly impacting software development through IDE assistants, cloud-based APIs, and interactive chatbots for coding assistance. It excels in generating and transl...
详细信息
Generative AI based on large-language models is significantly impacting software development through IDE assistants, cloud-based APIs, and interactive chatbots for coding assistance. It excels in generating and translating code and data, navigating APIs, and creating boilerplate content, thereby enhancing productivity. However, it is prone to generating inaccurate information ("hallucinations"), erroneous code, and potentially introducing security vulnerabilities. To counter these risks, employing automated analysis tools, conducting rigorous testing, and maintaining a deep understanding of computerscience concepts are essential. While generative AI can substantially aid development tasks it is not a replacement for human expertise, especially in understanding complex software, its requirements, and architecture.
Object-oriented programming (OOP) is not only an integral part of computing degrees but also a requirement in non-computing majors such as engineering. Understanding OOP concepts can be difficult for novice programmer...
详细信息
Object-oriented programming (OOP) is not only an integral part of computing degrees but also a requirement in non-computing majors such as engineering. Understanding OOP concepts can be difficult for novice programmers, and often leads to the development of misconceptions. This is exacerbated when the discipline requires students to learn a technical low-level language such as C++, as is the case in many engineering disciplines. We propose a block-based programming language extension, Blockly-OOP, to help students learn core OOP concepts without the technical complexities associated with traditional textual languages. The Blockly-OOP Learning Environment was developed by integrating Blockly-OOP with learning activities that guide students through programming exercises that target popular OOP misconceptions. An evaluation (n = 238) in a second-year programming course (CS2) showed that a block-based programming language helps students improve their understanding of object-oriented concepts, warranting further research in this area.
Ever since we began programming in the 1950s, there have been two diametrically opposed tendencies within computerscience and software engineering: on the left side of the Glorious Throne of Alan Turing, the tendency...
详细信息
ISBN:
(纸本)9798400706851
Ever since we began programming in the 1950s, there have been two diametrically opposed tendencies within computerscience and software engineering: on the left side of the Glorious Throne of Alan Turing, the tendency to perfect the Art of computerprogramming, and on the right side, the tendency to end it. These tendencies can be seen from the Manchester Mark I's "autocode" removing the need for programmers shortly afterWW2, COBOL being a language that could be "read by the management";to contemporary "no-code" development environments;and the idea that large language models herald "The End of programming". This vision paper looks at what AI will not change about software systems, and the people who must use them, and necessarily must build them. Rather than neglecting 50 years of history, theory, and practice, and assuming programming can, will, and should be ended by AI, we speculate on how AI has, already does, and will continue to perfect one of the peak activities of being human: programming.
Involving integrated development environments (IDEs) in introductory-level (CS1) programming courses is critical. However, it is difficult for instructors to find a suitable IDE that is beginner-friendly and offers ro...
详细信息
This study investigates a safe reinforcement learning algorithm for grid-forming(GFM)inverter based frequency *** guarantee the stability of the inverter-based resource(IBR)system under the learned control policy,a mo...
详细信息
This study investigates a safe reinforcement learning algorithm for grid-forming(GFM)inverter based frequency *** guarantee the stability of the inverter-based resource(IBR)system under the learned control policy,a modelbased reinforcement learning(MBRL)algorithm is combined with Lyapunov approach,which determines the safe region of states and *** obtain near optimal control policy,the control performance is safely improved by approximate dynamic programming(ADP)using data sampled from the region of attraction(ROA).Moreover,to enhance the control robustness against parameter uncertainty in the inverter,a Gaussian process(GP)model is adopted by the proposed algorithm to effectively learn system dynamics from *** simulations validate the effectiveness of the proposed algorithm.
In programming education, code-mixed text using multiple languages or dialects simultaneously can significantly hinder learning outcomes due to misinterpretation and inadequate processing by traditional systems. For i...
详细信息
In programming education, code-mixed text using multiple languages or dialects simultaneously can significantly hinder learning outcomes due to misinterpretation and inadequate processing by traditional systems. For instance, students bilingual or multilingual backgrounds may face difficulties automated code reviews or multilingual coding tutorials if code-mixed queries are not accurately understood. Motivated these challenges, this paper proposes a Federated Bi-LSTM Model for Feature Extraction and Classification. This model leverages Bidirectional Long Short-Term Memory (Bi-LSTM) networks within a federated learning framework to effectively accommodate various code-switching methodologies and context dependent linguistic elements while ensuring data security privacy across distributed sources. The Federated Bi-LSTM Model demonstrates impressive performance, achieving 99.3% accuracy nearly 19% higher than traditional techniques such Support Vector Machines (SVM), Multilayer Perceptron (MLP), and Random Forest (RF). This significant improvement underscores the model's capability to efficiently analyse code mixed text and enhance programming instruction for multilingual learners. However, the model faces limitations in processing highly specialized code-mixed text and adapting to real-time applications. Future research should focus on optimizing the model for these challenges and exploring its applicability in broader domains computer-assisted education. This model represents a substantial advancement in language-aware computing, offering a promising solution for the evolving needs of adaptive and inclusive programming education technologies. This advancement has potential to transform language-sensitive computing, providing significant support for multilingual learners and setting a standard for inclusive programming education.
暂无评论