190,592 research outputs found

    Computing Foundations for the Scientist

    Get PDF
    There is a need for a new style of supporting a computer course. Although it is widely recognized that computer technology provides essential tools for all current scientific work, few university curricula adequately ground science majors in the fundamentals that underlie this technology. Introducing science students to computational thinking in the areas of algorithms and data structures, data representation and accuracy, abstraction, performance issues, and database concepts can enable future scientists to become intelligent, creative and effective users of this technology. The intent of this course is not to turn scientists into computer scientists, but rather to enhance their ability to exploit computing tools to greatest scientific advantage

    Extending Text-Based Programming Languages to Embed Computing into Middle School Science Classrooms:

    Get PDF
    Thesis advisor: C. Patrick . ProctorThe demand for talent in the technology sector and the notion of computational thinking as everyday skills propel computing to enter middle school classrooms. The growing popularity of physical computing in educational spaces also infuses computing with elements of creativity and joy. Despite these recent movements, computing remains primarily in informal spaces due to a shortage of computer science teachers and the increasing focus on standardized testing. Arguing that computing and science share practices, this study views computing as problem-solving tools for science and proposes an integrated approach to teaching computing in science classrooms that takes advantage of the affordances of modern physical computing devices. Based on this perspective, a set of physical computing tools was developed to de-emphasize the mechanisms of computer science and shift focus to problem-solving and authentic scientific practices. This study aims to investigate the experiences of two science teachers and 16 students who learned to build self-regulated smart tabletop greenhouses with these tools as complete novices and critically evaluate the principles that undergird the design of the tools. With a qualitative, multiple case study design, this study answers two questions: 1) how did the teachers implement and reflect on their instruction? 2) how did the students engage with computing and science? Data from interviews and observations suggest that although the teachers shared similar instructional practices, their conceptualizations of the interplay between computing and science differed initially. They also had different instructional focuses and followed different trajectories in teaching, which may have produced subtly different understandings of computing-science relationships from their students. Despite these differences, all participants’ understandings of computing-science relationship conformed to a reciprocal pattern, which augmented the shared-practice argument for the integrated approach found in the literature. The challenges that the participants experienced contributed to the revision of the design of the computing tools. Based on these findings, the study recommends future directions in disambiguating the role of computing in middle school classrooms and in working with science teachers who are often simultaneously content experts and computing novices.Thesis (PhD) — Boston College, 2019.Submitted to: Boston College. Lynch School of Education.Discipline: Teacher Education, Special Education, Curriculum and Instruction

    Diogene-CT: tools and methodologies for teaching and learning coding

    Get PDF
    Computational thinking is the capacity of undertaking a problem-solving process in various disciplines (including STEM, i.e. science, technology, engineering and mathematics) using distinctive techniques that are typical of computer science. It is nowadays considered a fundamental skill for students and citizens, that has the potential to affect future generations. At the roots of computational-thinking abilities stands the knowledge of computer programming, i.e. coding. With the goal of fostering computational thinking in young students, we address the challenging and open problem of using methods, tools and techniques to support teaching and learning of computer-programming skills in school curricula of the secondary grade and university courses. This problem is made complex by several factors. In fact, coding requires abstraction capabilities and complex cognitive skills such as procedural and conditional reasoning, planning, and analogical reasoning. In this paper, we introduce a new paradigm called ACME (“Code Animation by Evolved Metaphors”) that stands at the foundation of the Diogene-CT code visualization environment and methodology. We develop consistent visual metaphors for both procedural and object-oriented programming. Based on the metaphors, we introduce a playground architecture to support teaching and learning of the principles of coding. To the best of our knowledge, this is the first scalable code visualization tool using consistent metaphors in the field of the Computing Education Research (CER). It might be considered as a new kind of tools named as code visualization environments

    Diogene-CT: tools and methodologies for teaching and learning coding

    Get PDF
    AbstractComputational thinking is the capacity of undertaking a problem-solving process in various disciplines (including STEM, i.e. science, technology, engineering and mathematics) using distinctive techniques that are typical of computer science. It is nowadays considered a fundamental skill for students and citizens, that has the potential to affect future generations. At the roots of computational-thinking abilities stands the knowledge of computer programming, i.e. coding. With the goal of fostering computational thinking in young students, we address the challenging and open problem of using methods, tools and techniques to support teaching and learning of computer-programming skills in school curricula of the secondary grade and university courses. This problem is made complex by several factors. In fact, coding requires abstraction capabilities and complex cognitive skills such as procedural and conditional reasoning, planning, and analogical reasoning. In this paper, we introduce a new paradigm called ACME ("Code Animation by Evolved Metaphors") that stands at the foundation of the Diogene-CT code visualization environment and methodology. We develop consistent visual metaphors for both procedural and object-oriented programming. Based on the metaphors, we introduce a playground architecture to support teaching and learning of the principles of coding. To the best of our knowledge, this is the first scalable code visualization tool using consistent metaphors in the field of the Computing Education Research (CER). It might be considered as a new kind of tools named as code visualization environments

    Research questions and approaches for computational thinking curricula design

    Get PDF
    Teaching computational thinking (CT) is argued to be necessary but also admitted to be a very challenging task. The reasons for this, are: i) no general agreement on what computational thinking is; ii) no clear idea nor evidential support on how to teach CT in an effective way. Hence, there is a need to develop a common approach and a shared understanding of the scope of computational thinking and of effective means of teaching CT. Thus, the consequent ambition is to utilize the preliminary and further research outcomes on CT for the education of the prospective teachers of secondary, further and higher/adult education curricula

    Curriculum Guidelines for Undergraduate Programs in Data Science

    Get PDF
    The Park City Math Institute (PCMI) 2016 Summer Undergraduate Faculty Program met for the purpose of composing guidelines for undergraduate programs in Data Science. The group consisted of 25 undergraduate faculty from a variety of institutions in the U.S., primarily from the disciplines of mathematics, statistics and computer science. These guidelines are meant to provide some structure for institutions planning for or revising a major in Data Science

    Pirate plunder: game-based computational thinking using scratch blocks

    Get PDF
    Policy makers worldwide argue that children should be taught how technology works, and that the ‘computational thinking’ skills developed through programming are useful in a wider context. This is causing an increased focus on computer science in primary and secondary education. Block-based programming tools, like Scratch, have become ubiquitous in primary education (5 to 11-years-old) throughout the UK. However, Scratch users often struggle to detect and correct ‘code smells’ (bad programming practices) such as duplicated blocks and large scripts, which can lead to programs that are difficult to understand. These ‘smells’ are caused by a lack of abstraction and decomposition in programs; skills that play a key role in computational thinking. In Scratch, repeats (loops), custom blocks (procedures) and clones (instances) can be used to correct these smells. Yet, custom blocks and clones are rarely taught to children under 11-years-old. We describe the design of a novel educational block-based programming game, Pirate Plunder, which aims to teach these skills to children aged 9-11. Players use Scratch blocks to navigate around a grid, collect items and interact with obstacles. Blocks are explained in ‘tutorials’; the player then completes a series of ‘challenges’ before attempting the next tutorial. A set of Scratch blocks, including repeats, custom blocks and clones, are introduced in a linear difficulty progression. There are two versions of Pirate Plunder; one that uses a debugging-first approach, where the player is given a program that is incomplete or incorrect, and one where each level begins with an empty program. The game design has been developed through iterative playtesting. The observations made during this process have influenced key design decisions such as Scratch integration, difficulty progression and reward system. In future, we will evaluate Pirate Plunder against a traditional Scratch curriculum and compare the debugging-first and non-debugging versions in a series of studies

    What lies beneath: lifting the lid on archaeological computing

    Get PDF
    • 

    corecore