16 research outputs found

    Comparing Text-based, Blocks-based, and Hybrid Blocks/Text Programming Tools

    Get PDF
    ABSTRACT This dissertation investigates the comparative affordances and drawbacks of blocks-based, text-based, and hybrid blocks/text introductory programming tools. Blocks-based programming environments are growing in popularity and are increasingly being used in formal introductory programming contexts. To date, much of the work evaluating such tools has focused on their effectiveness in out-of-school contexts and emphasized engagement and attitudinal measures over content mastery. Given their growing presence in classrooms, it is important to understand the benefits and limitations of the use of the blocks-based programming approach in formal learning contexts relative to text-based or hybrid blocks/text alternatives. This dissertation will carry out a quasi-experimental study in high school computer science classrooms to answer questions related to the impact of blocks-based, text-based, and hybrid blocks/text introductory tools, assess the suitability of such tools for preparing students for future computer science learning opportunities, and explore the design space between blocks-based and text-based programming. The goal of this work is to better understand the tools we are using to introduce today's learners to computer science and lay the foundation for creating the tools of tomorrow

    Student engagement is key to broadening participation in CS

    Get PDF
    © 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM. The Mobile CS Principles (Mobile CSP) course is one of the NSF-supported, College Board-endorsed curricula for the new Computer Science Principles AP course. Since 2013, the Mobile CSP project has trained more than 700 teachers, and the course has been offered to more than 20,000 students throughout the United States. The organizing philosophy behind the Mobile CSP course is that student engagement in the classroom is the key to getting students, especially those traditionally underrepresented in CS, interested in pursuing further study and careers in CS. The main strategies used to engage Mobile CSP students are: (1) a focus on mobile computing throughout the course, taking advantage of current student interest in smartphones; (2) an emphasis on getting students building mobile apps from day one, by utilizing the highly accessible App Inventor programming language; and (3) an emphasis on building creative,\u27socially useful\u27 apps to get students thinking about ways that computing can help their communities. In this paper we present and summarize two years of data of various types (i.e., student surveys, teacher surveys, objective assessments, and anecdotal reports from students and teachers) to support the hypothesis that engagement of the sort practiced in the Mobile CSP course not only helps broaden participation in CS among hard-to-reach demographics, but also provides them with a solid grounding in computer science principles and practices

    How Novices Use LLM-Based Code Generators to Solve CS1 Coding Tasks in a Self-Paced Learning Environment

    Full text link
    As Large Language Models (LLMs) gain in popularity, it is important to understand how novice programmers use them. We present a thematic analysis of 33 learners, aged 10-17, independently learning Python through 45 code-authoring tasks using Codex, an LLM-based code generator. We explore several questions related to how learners used these code generators and provide an analysis of the properties of the written prompts and the generated code. Specifically, we explore (A) the context in which learners use Codex, (B) what learners are asking from Codex, (C) properties of their prompts in terms of relation to task description, language, and clarity, and prompt crafting patterns, (D) the correctness, complexity, and accuracy of the AI-generated code, and (E) how learners utilize AI-generated code in terms of placement, verification, and manual modifications. Furthermore, our analysis reveals four distinct coding approaches when writing code with an AI code generator: AI Single Prompt, where learners prompted Codex once to generate the entire solution to a task; AI Step-by-Step, where learners divided the problem into parts and used Codex to generate each part; Hybrid, where learners wrote some of the code themselves and used Codex to generate others; and Manual coding, where learners wrote the code themselves. The AI Single Prompt approach resulted in the highest correctness scores on code-authoring tasks, but the lowest correctness scores on subsequent code-modification tasks during training. Our results provide initial insight into how novice learners use AI code generators and the challenges and opportunities associated with integrating them into self-paced learning environments. We conclude with various signs of over-reliance and self-regulation, as well as opportunities for curriculum and tool development.Comment: 12 pages, Peer-Reviewed, Accepted for publication in the proceedings of the 2023 ACM Koli Calling International Conference on Computing Education Researc

    Block-based syntax from context-free grammars

    Get PDF
    Block-based programming systems employ a jigsaw metaphor to write programs. They are popular in the domain of programming education (e.g., Scratch), but also used as a programming interface for end-users in other disciplines, such as arts, robotics, and configuration management. In particular, block-based environments promise a convenient interface for Domain-Specific Languages (DSLs) for domain experts who might lack a traditional programming education. However, building a block-based environment for a DSL from scratch requires significant effort. This paper presents an approach to engineer block-based language interfaces by reusing existing language artifacts. We present Kogi, a tool for deriving block-based environments from context-free grammars. We identify and define the abstract structure for describing block-based environments. Kogi transforms a context-free grammar into this structure, which then generates a block-based environment based on Google Blockly. The approach is illustrated with four case studies, a DSL for state machines, Sonification Blocks (a DSL for sound synthesis), Pico (a simple programming language), and QL (a DSL for questionnaires). The results show that usable block-based environments can be derived from context-free grammars, and with an order of magnitude reduction in effort

    Establishing an international computational network for librarians and archivists

    Get PDF
    Research and experimentation are underway in libraries, archives, and research institutions on various digital strategies, including computational methods and tools, to manage "Collections as Data." This involves new ways for librarians and archivists to manage, preserve, and provide access to their digital collections. A major component in this ongoing process is the education and training needed by information professionals to function effectively in the 21st century. Accessible and transferable infrastructure is a key requirement in creating a network of collaboration for information professionals to fully realize the full potential of managing "Collections as Data." Elements needed include: 1. Open source research and educational platforms to remove barriers to access to curation tools and resources. These are needed to deliver and share computational educational programs. 2. Creation of a Cloud-based student-learning environment. 3. Development of Open Source software architectures that use computational infrastructure. 4. Exploration of new pedagogies for educating librarians and archivists in computational methods and tools. 5. Establishment of a community of practice for developing collaborative projects, and liaising with the wider international iSchool community and practitioners in the field. Our "Blue Sky" proposal seeks to explore a number of these challenges (infrastructure, computation, collaboration, learning) that stimulate the iSchool research community and have the potential to jumpstart international collaborative networks. The goal is to establish an international computational network for supporting librarians and archivists, akin to the existing Sloan Foundation funded "Data Curation Network", which seeks to model a cross-institutional staffing approach for curating research data in digital repositories.Ope

    Situating Programming Abstractions in a Constructionist Video Game

    No full text
    Research on the effectiveness of introductory programming environments often relies on post-test measures and attitudinal surveys to support its claims; but such instruments lack the ability to identify any explanatory mechanisms that can account for the results. This paper reports on a study designed to address this issue. Using Noss and Hoyles' constructs of webbing and situated abstractions, we analyze programming novices playing a program-to-play constructionist video game to identify how features of introductory programming languages, the environments in which they are situated, and the challenges learners work to accomplish, collectively affect novices' emerging understanding of programming concepts. Our analysis shows that novices develop the ability to use programming concepts by building on the suite of resources provided as they interact with the computational context of the learning environment. In taking this approach, we contribute to computer science education design literature by advancing our understanding of the relationship between rich, complex introductory programming environments and the learning experiences they promote
    corecore