1,238 research outputs found

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Pervasive Parallel And Distributed Computing In A Liberal Arts College Curriculum

    Get PDF
    We present a model for incorporating parallel and distributed computing (PDC) throughout an undergraduate CS curriculum. Our curriculum is designed to introduce students early to parallel and distributed computing topics and to expose students to these topics repeatedly in the context of a wide variety of CS courses. The key to our approach is the development of a required intermediate-level course that serves as a introduction to computer systems and parallel computing. It serves as a requirement for every CS major and minor and is a prerequisite to upper-level courses that expand on parallel and distributed computing topics in different contexts. With the addition of this new course, we are able to easily make room in upper-level courses to add and expand parallel and distributed computing topics. The goal of our curricular design is to ensure that every graduating CS major has exposure to parallel and distributed computing, with both a breadth and depth of coverage. Our curriculum is particularly designed for the constraints of a small liberal arts college, however, much of its ideas and its design are applicable to any undergraduate CS curriculum

    A pilot study on the impact of teaching assistant led CS1 study sessions using Peer Instruction

    Get PDF
    James Madison University’s Computer Science program strives to be a student-centered learning environment with a focus on creating a community for undergraduate success. National data reveals computer science has the lowest student retention rate compared to other STEM majors. The National Center for Women and Information Technology (NCWIT) has compiled a list of ways to retain students in Computer Science. In particular, NCWIT calls for collaboration indicate that “a sense of belonging, or a feeling of fit, is important for supporting student interest and persistence.” One aspect of creating community is the department’s longstanding commitment to provide undergraduate teaching assistants (TAs). Traditionally, TAs provide one-on-one help in the classroom and also hold supplementary lab hours in the evenings to answer questions. As part of this honors project, we have developed a new program called “The Fourth Hour” to increase student retention. Led by TAs using Peer Instruction (PI), these weekly study sessions provide a structured review of introductory topics. The aim of this research is to discover if weekly study sessions promote an environment in which students feel an increased sense of belonging and improved course material retention. In the Fall 2019 semester, JMU offered ten sections of CS149, the introductory programming course, also known as “CS1” in the literature. Each section had approximately 30 students enrolled. Four TAs were chosen to lead one study session each week using the same lesson materials. Three attitudinal surveys were administered over the duration of the semester to collect data on student demographics, self-efficacy, and sense of belonging. Pre- and post assessment results were recorded to test student course material retention. Study session attendance was also collected to discern if there was a correlation with student demographics, self-efficacy, sense of belonging, and/or course material retention. Anomalies in the data and inconsistent attendance rates limited the statistical significance of our results. However, our qualitative analysis suggests that the study sessions had a positive impact on students. As a result, the CS department is planning to continue offering the Fourth Hour program

    Does A Pre-Introduction Course Improve Subsequent Performance In Introduction To Computer Programming?

    Get PDF
    A new Computer Science Introduction course is described.  Student grades and the withdraw rate for the next course are both improved, and the proportion of student Computer Science majors is increased.Initial results indicate that the availability of the new Introduction to Computer Science (CSO) reduces the number of students who withdraw from the old Introduction to Computer Science (CS1) almost certainly because students who simply need an introduction to computers no longer sign up for CS1 – a computer science and computer programming course).  The limited data for students who took CS1 after completing CS0 do not as yet statistically support the hypothesis that CS0 will improve performance in CS1.  A higher proportion of students who completed both CS0 and CS1 declared Computer Science or Information Systems majors, than the proportion of those who just completed CS1

    Learning Dimensions: Lessons from Field Studies

    Get PDF
    In this paper, we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies involving a range of age groups to explore how programming tasks could best be framed to motivate learners. Our empirical findings from these four studies, described here, contributed to the design of a set of programming "Learning Dimensions" (LDs). The LDs provide educators with insights to support key design decisions for the creation of engaging programming learning experiences. This paper describes the background to the identification of these LDs and how they could address the design and delivery of highly engaging programming learning tasks. A web application has been authored to support educators in the application of the LDs to their lesson design

    Recommender Systems and Scratch: An integrated approach for enhancing computer programming learning

    Get PDF
    Learning computer programming is a challenging process. Among the current approaches for overcoming this challenge, visual programming languages (VPLs), such as Scratch, have shown very promising results for beginners. Interestingly, some higher education institutions have started to use VPLs to introduce basic programming concepts, mainly in CS1 courses. However, an important issue regarding Scratchs usage in higher education environments is that students may feel unmotivated being confronted by programming exercises that do not fulfill their individual expectations. To try and overcome this barrier, we propose CARAMBA, a Scratch extension including an exercise recommender system. Based on features, such as taste and complexity, CARAMBA is able to personalize student learning with Scratch by suitably suggesting exercises for students. An in-depth evaluation was conducted about the effects of our proposal on both the learning of basic concepts of CS1 and the overall performance of students. We adopted an equivalent pretest-posttest design with 88 college students at an Ecuadorian university. Results confirm that recommending exercises in Scratch had a positive effect on students programming learning abilities in terms of pass rates. In totality, the pass rate achieved by our proposal was over 52%, which is 8% higher than the rate achieved during a previous experience using only Scratch (without recommendation) and 21% higher than the historical results of traditional teaching (without Scratch). Furthermore, we analyzed the degree of exploitation of CARAMBA by students to portray two facts: students actually used CARAMBA and there was a significant, positive correlation between the utilization of CARAMBA and the scores obtained by the students

    Development and Application of a Rasch Model Measure of Student Competency in University Introductory Computer Programming

    Get PDF
    University computer programming instruction nomenclature commonly uses the term Computer Science 1 (CS1) to describe introductory units of study. Success in CS1 is important as a pre-requisite for further study in programming and related disciplines. It is important to measure student progress and the antecedent influences. This study applied the Rasch Model and Messick’s Unified Theory of Validity to construct an interval level measure of CS1 competency with demonstrable suitability for this purpose
    corecore