Enhancing Computer Science Education with Pair Programming and Problem
Solving Studios
- URL: http://arxiv.org/abs/2311.01693v1
- Date: Fri, 3 Nov 2023 03:40:55 GMT
- Title: Enhancing Computer Science Education with Pair Programming and Problem
Solving Studios
- Authors: J. Walker Orr
- Abstract summary: This study examines the adaptation of the problem-solving studio to computer science education by combining it with pair programming.
PSS involves teams of students solving open-ended problems with real-time feedback given by the instructor.
PSS uses problems of adjustable difficulty to keep students of all levels engaged and functioning within the zone of proximal development.
- Score: 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: This study examines the adaptation of the problem-solving studio to computer
science education by combining it with pair programming. Pair programming is a
software engineering practice in industry, but has seen mixed results in the
classroom. Recent research suggests that pair programming has promise and
potential to be an effective pedagogical tool, however what constitutes good
instructional design and implementation for pair programming in the classroom
is not clear. We developed a framework for instructional design for pair
programming by adapting the problem-solving studio (PSS), a pedagogy originally
from biomedical engineering. PSS involves teams of students solving open-ended
problems with real-time feedback given by the instructor. Notably, PSS uses
problems of adjustable difficulty to keep students of all levels engaged and
functioning within the zone of proximal development. The course structure has
three stages, first starting with demonstration, followed by a PSS session,
then finishing with a debrief. We studied the combination of PSS and pair
programming in a CS1 class over three years. Surveys of the students report a
high level of engagement, learning, and motivation.
Related papers
- A Problem-Based Learning Approach to Teaching Design in CS1 [0.9786690381850356]
Design skills are increasingly recognized as a core competency for software professionals.
New designers require a structured process to keep them from being overwhelmed by possibilities.
We present our experience teaching a team design project course to 200 first-year-university students.
arXiv Detail & Related papers (2024-10-15T23:36:08Z) - YODA: Teacher-Student Progressive Learning for Language Models [82.0172215948963]
This paper introduces YODA, a teacher-student progressive learning framework.
It emulates the teacher-student education process to improve the efficacy of model fine-tuning.
Experiments show that training LLaMA2 with data from YODA improves SFT with significant performance gain.
arXiv Detail & Related papers (2024-01-28T14:32:15Z) - Designing Bugs or Doing Another Project: Effects on Secondary Students'
Self-Beliefs in Computer Science [0.0]
Our by Design intervention (DbD) provocatively puts students in control over bugs by having them collaborate on designing creative buggy projects.
We implemented DbD virtually in eight classrooms with two teachers in public schools with historically marginalized populations.
arXiv Detail & Related papers (2023-05-04T13:51:32Z) - Exploring the Use of ChatGPT as a Tool for Learning and Assessment in
Undergraduate Computer Science Curriculum: Opportunities and Challenges [0.3553493344868413]
This paper addresses the prospects and obstacles associated with utilizing ChatGPT as a tool for learning and assessment in undergraduate Computer Science curriculum.
Group B students were given access to ChatGPT and were encouraged to use it to help solve the programming challenges.
Results show that students using ChatGPT had an advantage in terms of earned scores, however there were inconsistencies and inaccuracies in the submitted code.
arXiv Detail & Related papers (2023-04-16T21:04:52Z) - Hierarchical Programmatic Reinforcement Learning via Learning to Compose
Programs [58.94569213396991]
We propose a hierarchical programmatic reinforcement learning framework to produce program policies.
By learning to compose programs, our proposed framework can produce program policies that describe out-of-distributionally complex behaviors.
The experimental results in the Karel domain show that our proposed framework outperforms baselines.
arXiv Detail & Related papers (2023-01-30T14:50:46Z) - Giving Feedback on Interactive Student Programs with Meta-Exploration [74.5597783609281]
Developing interactive software, such as websites or games, is a particularly engaging way to learn computer science.
Standard approaches require instructors to manually grade student-implemented interactive programs.
Online platforms that serve millions, like Code.org, are unable to provide any feedback on assignments for implementing interactive programs.
arXiv Detail & Related papers (2022-11-16T10:00:23Z) - The Impact of Remote Pair Programming in an Upper-Level CS Course [0.0]
Pair programming has been highlighted as an active learning technique with several benefits to students.
This work analyzes the effect of pair programming in an upper-level computer science course.
arXiv Detail & Related papers (2022-04-06T20:01:01Z) - Competition-Level Code Generation with AlphaCode [74.87216298566942]
We introduce AlphaCode, a system for code generation that can create novel solutions to problems that require deeper reasoning.
In simulated evaluations on recent programming competitions on the Codeforces platform, AlphaCode achieved on average a ranking of top 54.3%.
arXiv Detail & Related papers (2022-02-08T23:16:31Z) - Steps Before Syntax: Helping Novice Programmers Solve Problems using the
PCDIT Framework [2.768397481213625]
Novice programmers often struggle with problem solving due to the high cognitive loads they face.
Many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way.
We present 'PCDIT', a non-linear problem solving framework that provides scaffolding to guide novice programmers through the process of transforming a problem specification into an implemented and tested solution for an imperative programming language.
arXiv Detail & Related papers (2021-09-18T10:31:15Z) - ProtoTransformer: A Meta-Learning Approach to Providing Student Feedback [54.142719510638614]
In this paper, we frame the problem of providing feedback as few-shot classification.
A meta-learner adapts to give feedback to student code on a new programming question from just a few examples by instructors.
Our approach was successfully deployed to deliver feedback to 16,000 student exam-solutions in a programming course offered by a tier 1 university.
arXiv Detail & Related papers (2021-07-23T22:41:28Z) - Graph-based, Self-Supervised Program Repair from Diagnostic Feedback [108.48853808418725]
We introduce a program-feedback graph, which connects symbols relevant to program repair in source code and diagnostic feedback.
We then apply a graph neural network on top to model the reasoning process.
We present a self-supervised learning paradigm for program repair that leverages unlabeled programs available online.
arXiv Detail & Related papers (2020-05-20T07:24:28Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.