1,720,961 research outputs found

    Two Introductory Data-driven Activities for Secondary Schools

    No full text
    This paper presents two data-driven activities aimed at secondary school students to promote data thinking skills, the first focusing on data literacy and the second on computer programming with a'data-centric' pedagogy. We briefly introduce a Python package, called ToyPandas, that we developed to make coding more accessible to novice data science enthusiasts. The paper then discusses the motivations and challenges of providing an introductory data activity for students without a computing or data science background, and presents our experience, discussing some preliminary assessment results

    “Hear” and “Play” Students Misconceptions on Concurrent Programming using Sonic Pi

    No full text
    Concurrency is a complex to learn topic that is becoming more and more relevant, such that many undergraduate Computer Science curricula are introducing it in introductory program ming courses. This paper investigates the combined use of Sonic Pi and Team-Based Learning to mitigate the difficulties in early exposure to concurrency. Sonic Pi, a domain-specific music lan guage, provides great support for "playing" with concurrency, and "hearing" common problems such as data races and lack of synchronization among different concurrent threads. More specifically, the paper focuses on students' misconceptions regarding concurrency in Sonic Pi and com pares them to those arising in traditional concurrent programming languages. In addition, it pre liminarily explores knowledge transfer from Sonic Pi to C/C++. The approach has been applied in two teaching experiments with undergraduate students in our University involving 184 participants. Our investigations bring out the need to address misconceptions through targeted interventions for a clear understanding of concurrent programming concepts. Sonic Pi's simplified abstraction and domain-specific flavor has demonstrated to be effective, expecially for first-year students

    Exploring Student Misconceptions about Concurrency Using Sonic Pi

    No full text
    As the importance of concurrent and multithreaded programming continues to grow, many universities have incorporated these concepts into their introductory courses. Sonic Pi, a programming language designed for music creation, provides valuable support for exploring concurrency due to its simplified multithreading abstractions and its domain-specific nature. In this paper, we outline several teaching experiments aimed at undergraduate computer science students, using an interdisciplinary pedagogical approach that introduces concurrency early using Sonic Pi. The activities consist of code comprehension and code composition tasks in a collaborative learning environment. Our primary research goal is to explore and discuss students' misconceptions about concurrency, and then draw some preliminary considerations and connections to analogous misconceptions in traditional concurrent programming languages

    Exploring Student Misconceptions about Concurrency Using the Domain-Specific Programing Language "Sonic Pi"

    No full text
    As the importance of concurrent and multi-threaded programming continues to grow, many universities have incorporated these concepts into their introductory courses. Sonic Pi, a programming language designed for music creation, provides valuable support for exploring concurrency due to its simplified multi-threading abstractions and its domain-specific nature. This paper investigates the combined use of Sonic Pi and Team-Based Learning to mitigate the difficulties in early exposure to concurrency. Sonic Pi provides great support for "playing"with concurrency, and "hearing"common problems such as data races and lack of synchronization among different threads. Our primary research goal is to explore whether the use of Sonic Pi can support students, especially in the early stages, to understand concurrent programming concepts and help them face misconceptions identified in the concurrency education literature. The approach has been applied in teaching experiments with undergraduate students involving 184 participants

    PyWeCode: Towards a Collaborative Coding Framework based on the arcade Python Library

    No full text
    We present preliminaries ideas and a prototype implementation of a collaborative environment based on gamification aimed at teaching coding and software life cycle principles such as design, development, and testing to beginners. As a guide example, we consider a two player game in which each player can dynamically modify its strategy via a simple rule-based language. In this setting the player console plays the role of usual coding tools. However, the sprite controlled by each player can be viewed as a sort of reactive module that interacts with the other players within the chosen game. The game starts with a default strategy. During a game play, players can then adapt their strategy by updating the rules that govern the behaviour of their sprites. The prototype is designed on top of the Python arcade library extended with a communication middleware built on top of asyncio and zeromq to run the environment on a set of remote machines

    Adaptation and Personalization in Computer Science Education: APCSE '20

    No full text
    A wide range of tools and applications have been developed for supporting Computer Science Education, ranging from visual programming languages to web applications. In this setting it is crucial to model user needs and provide personalized support to improve the effectiveness and satisfaction of learning experiences. This summary gives a brief overview of the workshop Adaptation and Personalization in Computer Science Education organized at UMAP 2020 in order to bring together researchers, practitioners and education stakeholders interested in these topics. The workshop program consists of a keynote speech by Wolfgang Slany head of the Catrobat Project and by three technical sessions offering different perspectives on the main themes of the workshop

    Sonic Pi for TBL Teaching Units in an Introductory Programming Course

    No full text
    In this paper, we present our experience of using the Team Based Learning (TBL) methodology and the Sonic Pi language in an introductory programming course. Sonic Pi is a code-based musical creation and performance tool, also widely used for computer science (CS) educational purposes, since every musical concept corresponds to a notion of computer programming. This aspect makes it extremely effective in adapting to different learning objectives and environments, and in tuning the topics with learners interests and attitudes. Specifically, we designed two TBL activities aimed at first-year undergraduate students in CS, the first focusing on anticipating a new advanced CS topic and the second on a learning objective of the Introduction to Programming Course

    Going Beyond Counting First Authors in Author Co-citation Analysis

    Full text link
    The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed
    corecore