20 research outputs found

    The abstraction transition taxonomy: developing desired learning outcomes through the lens of situated cognition

    Get PDF
    We report on a post-hoc analysis of introductory programming lecture materials. The purpose of this analysis is to identify what knowledge and skills we are asking students to acquire, as situated in the activity, tools, and culture of what programmers do and how they think. The specific materials analyzed are the 133 Peer Instruction questions used in lecture to support cognitive apprenticeship -- honoring the situated nature of knowledge. We propose an Abstraction Transition Taxonomy for classifying the kinds of knowing and practices we engage students in as we seek to apprentice them into the programming world. We find students are asked to answer questions expressed using three levels of abstraction: English, CS Speak, and Code. Moreover, many questions involve asking students to transition between levels of abstraction within the context of a computational problem. Finally, by applying our taxonomy in classifying a range of introductory programming exams, we find that summative assessments (including our own) tend to emphasize a small range of the skills fostered in students during the formative/apprenticeship phase

    The impact of pair programming on students logical thinking : a case study on higher academic institution / Mahfudzah Othman … [et al.]

    Get PDF
    Pair Programming (PP) is a well-known agile software development technique that has been widely implemented in programming classes. Through PP, students are able to share knowledge and expertise that will contribute to better programming solutions. Nevertheless, how PP can help to improve students’ cognitive abilities has yet to be explored. Therefore, this study’s aim was to investigate the impacts of implementing Pair Programming (PP) on students’ logical thinking. Logical thinking is part of the cognitive ability claimed to be one of the crucial factors that determine the success or failure of novice programmers. To achieve this, 60 students who enrolled in Diploma in Computer Science programme in Universiti Teknologi MARA Perlis Branch, Malaysia, were asked to take the pre-test and post-test of Group Assessment Logical Thinking (GALT) Test in the beginning and at the end of the semester. These students were divided into two main groups; Control and Test in the Test Group, students with low logical ability will be paired with their high logical thinking friends. Meanwhile, in the Control Group, no pair programming or collaborative technique took place. Five programming tasks were assigned to both groups to solve either collaboratively or individually. The results obtained via paired sample t-tests statistical analysis shows significant improvements in students’ logical thinking with p-value <0.05 in the Test Grou

    The use of laptop computers in programming lectures

    Get PDF
    This research explores the effect of the use of laptop computers on students&rsquo; learning experiences during lectures. Our methodology involves embedding laptops with visualization software as a learning aid during lectures. We then employ a framework of seven principles of good practice in higher education to evaluate the impact of the use of laptop computers on the learning experience of computer programming students. Overall, we found that students were highly motivated and supportive of this innovative use of laptop computers with lectures.<br /

    Enhancing Collaborative Learning Using Pair Programming: Who Benefits?

    Get PDF
    Incoming university students who have not previously studied computer programming often find it a challenging subject, leading to high failure rates. Research has suggested that the lack of a formalised structure for collaborative learning may be one of the factors responsible for students’ negative impressions of computer science. In this study we investigated whether the use of pair programming in practical laboratories would facilitate peer learning and enhance students’ confidence in their programming ability. Results showed that this intervention was generally well received, although the weaker programmers (as measured by prior exam grades) perceived it to be of more benefit than the stronger ones. Students who reported a lower initial level of enjoyment and confidence in programming were more likely to report learning from the paired intervention, though this did not necessarily lead to enhanced performance. The most frequently reported positive feature of pair programming was that it allowed students to meet more people in the class. Although there was no significant increase in final exam grades for male students, there was a significant increase for female students, suggesting this teaching strategy may have asymmetrical gender benefits

    Early childhood preservice teachers' debugging block-based programs: An eye tracking study

    Get PDF
    Learning computational skills such as programming and debugging is very important for K-12 students given the increasing need of workforce proficient in computing technologies. Programming is an intricate cognitive task that entails iteratively creating and revising programs to create an artifact. Central to programming is debugging, which consists of systematically identifying and fixing program errors. Given its central role, debugging should be explicitly taught to early childhood preservice teachers so they can support their future students’ learning to program and debug errors. In this study, we propose using eye-tracking data and cued retrospective reporting to assess preservice teachers’ cognitive strategies while debugging. Several eye-tracking studies have investigated learners’ debugging strategies though the literature lacks studies (a) conducted with early childhood preservice teachers and (b) that focus on block-based programming languages, such as Scratch. The present study addresses this gap in the literature. This study used mixed methods to triangulate quantitative findings from eye movement analysis and qualitative findings about employed debugging strategies into the creation of descriptive themes. Results showed that participants developed strategies such as simultaneous review of output and code, use of beacons to narrow down the area to be debugged, and eye fixation on output to form hypotheses. But most often, debugging was not informed by a hypothesis, which led to trial and error. Study limitations and directions for future research are discussed.&nbsp

    Descubriendo efectos inesperados en la programación en parejas [Discovering unexpected effects on pair programming]

    Get PDF
    Aprender a programar supone un esfuerzo importante e incluso un reto para muchos estudiantes dando lugar a elevadas tasas de fracaso. La programación en parejas (“pair programming”) es una actividad de aprendizaje colaborativa considerada en el entorno académico como una estrategia propicia para la enseñanza de programación. Distintos estudios demuestran los beneficios que genera la aplicación de esta técnica en un primer curso de programación. Por ello se aplica en la asignatura de Programación II, del primer curso del Grado en Ingeniería Informática de la Universidade da Coruña (España). El estudio realizado muestra que, a pesar de las motivaciones iniciales por parte del profesorado, los alumnos que conforman una misma pareja, de manera general, no se desenvuelven igual y exhiben notables diferencias de rendimiento académico. [Learning to program is a major effort and even a challenge for many students resulting in high rates of failure. Pair programming is a collaborative learning activity considered in the academic environment as a propitious strategy for teaching programming. Several studies show the benefits of applying this technique in a first programming course. Therefore, it is applied in the subject of Programming II at first course of the Degree in Computer Engineering of the University of A Coruña (Spain). The study carried out in this paper shows that, despite the initial motivations of the teaching staff, the students that form the same pair, in general, exhibit remarkable differences of academic performance.

    Peer tutoring of computer programming increases exploratory behavior in children

    Get PDF
    There is growing interest in teaching computer science and programming skills in schools. Here we investigated the efficacy of peer tutoring, which is known to be a useful educational resource in other domains but never before has been examined in such a core aspect of applied logical thinking in children. We compared (a) how children (N = 42, age range = 7 years 1 month to 8 years 4 months) learn computer programming from an adult versus learning from a peer and (b) the effect of teaching a peer versus simply revising what has been learned. Our results indicate that children taught by a peer showed comparable overall performance—a combination of accuracy and response times—to their classmates taught by an adult. However, there was a speed–accuracy trade-off, and peer-taught children showed more exploratory behavior, with shorter response times at the expense of lower accuracy. In contrast, no tutor effects (i.e., resulting from teaching a peer) were found. Thus, our results provide empirical evidence in support of peer tutoring as a way to help teach computer programming to children. This could contribute to the promotion of a widespread understanding of how computers operate and how to shape them, which is essential to our values of democracy, plurality, and freedom.Fil: de la Hera, Diego Pablo. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Zanoni Saad, María Belén. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Sigman, Mariano. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Calero, Cecilia Ines. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentin

    Introductory programming courses in Estonian colleges and universities

    Get PDF
    Antud töö eesmärgiks on uurida programmeerimise algkursuseid Eesti kõrgkoolides. Vaatluse alla jäi kümnes Eesti kõrgkoolis 16 erinevat programmeerimise algkursust, mida võtab igal aastal üle tuhande tudengi. Igal kursusel otsiti kursuste kohta käivat üldinfot. Kõrgkoolidele esitati ka küsimustikud, millele neil paluti vastata. Vastuste põhjal koostati kursuste kohta lühikokkuvõtted ning vaadeldi käsitletavate kursuste erinevaid aspekte. Projekti „Kontseptuaalne raamistik suurendamaks ühiskonna pühendumist IKTsse“ raames uuriti Eesti tudengite kokkupuudet programmeerimisega enne kõrgkooli tulemist. Antud bakalaureusetöö jaoks kättesaadavaks tehtud andmeid analüüsiti esimeste programmeerimise kokkupuudete vaatest.The purpose of the current bachelor’s thesis is to examine introductory programming courses in Estonian colleges and universities. 16 courses in 10 different colleges or universities were observed. These courses are attended by more than a thousand students each year. General information about each course was searched for. In addition colleges and universities were asked to answer a questionnaire. Based on the answers of the questionnaire short summaries of the courses were made and different aspects of the courses were observed. In the context of the project „Conceptual framework for increasing society’s commitment in ICT" students were asked about their first contacts with programming before attending colleges or universities. The data that were made available for this bachelor’s thesis was analyzed in the perspective of first contacts with programming

    A first metadata schema for learning analytics research data management

    Get PDF
    Forschungsdaten bilden die Grundlage für wissenschaftliches Arbeiten und um neue Erkenntnisse zu gewinnen. Learning Analytics ist die Wissenschaft zur Verbesserung des Lernens in verschiedenen Bereichen des Bildungssektors, doch obwohl die Datenerhebung zum größten Teil mittels computer-gestützter Verfahren durchgeführt wird, besitzt die Disziplin zum jetzigen Zeitpunkt noch keine Forschungsdatenmanagementkultur oder -konzepte. Wie jede Forschungsdisziplin hat Learning Analytics ihre Eigenheiten, die für die Erstellung von Forschungsdatenmanagementkonzepten, insbesondere für die Generalisierung von Daten und die Modellierung eines Metadatenmodells, wichtig sind. Die folgende Arbeit präsentiert Ergebnisse einer Anforderungsanalyse für Learning Analytics, um relevante Elemente für ein Metadatenschema zu identifizieren. Zur Erreichung dieses Ziels führten wir zunächst eine Literaturrecherche durch, gefolgt von einer Untersuchung unserer eigenen Forschung an Softwareumgebungen zur Evaluierung von kollaborativen Programmierszenarien an zwei Hochschulstandorten. Aus den Ergebnissen lassen sich ein disziplinspezifischer wissenschaftlicher Workflow sowie ein fachspezifisches Objektmodell ableiten, das alle erforderlichen Merkmale für die Entwicklung eines für Learning Analytics spezifischen Metadatenmodells für die Nutzung von Datenbeständen aufzeigt.In most cases, research data builds the ground for scientific work and to gain new knowledge. Learning analytics is the science to improve learning in different fields of the educational sector. Even though it is a data-driven science, there is no research data management culture or concepts yet. As every research discipline, learning analytics has its own characteristics, which are important for the creation of research data management concepts, in particular for generalization of data and modeling of a metadata model. The following work presents our results of a requirements analysis for learning analytics, in order to identify relevant elements for a metadata schema. To reach this goal, we conducted a literature survey followed by an analysis of our own research about frameworks for evaluation of collaborative programming scenarios from two universities. With these results, we present a discipline-specific scientific workflow, as well as a subject-specific object model, which lists all required characteristics for the development of a learning analytics specific metadata model for data repository usage

    Teaching introductory programming: a quantitative evaluation of different approaches

    Get PDF
    © ACM, 2014. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Computing Education, 2014, Vol. 14, No. 4, Article 26, DOI: http://dx.doi.org/10.1145/266241
    corecore