220,406 research outputs found
A music context for teaching introductory computing
We describe myro.chuck, a Python module for controlling music synthesis, and its applications to teaching introductory computer science. The module was built within the Myro framework using the ChucK programming language, and was used in an introductory computer science course combining robots, graphics and music. The results supported the value of music in engaging students and broadening their view of computer science
A first course in computer science: Languages and goals
The College Board Advanced Placement exam in computer science will use the language Java starting in fall 2003. The language chosen for this exam is based on the language commonly taught in introductory computer science courses at the university level. This article reviews the purpose of an introductory course and the various suggestions for the curriculum of introductory courses published by the Association for Computing Machinery. It then proposes that such a course stress foundational concepts over specific language syntax, and then provides a list of such foundational concepts and related topics. Based on this fundamental curriculum, the article recommends C++ as the most appropriate language. An appendix provides a sample syllabus
Learning Loops: A Replication Study Illuminates Impact of HS Courses
A recent study about the effectiveness of subgoal labeling in an introductory computer science programming course both supported previous research and produced some puzzling results. In this study, we replicate the experiment with a different student population to determine if the results are repeatable. We also gave the experimental task to students in a follow-on course to explore if they had indeed mastered the programming concept. We found that the previous puzzling results were repeated. In addition, for the novice programmers, we found a statistically significant difference in performance based on whether the student had previous programming courses in high school. However, this performance difference disappears in a follow-on course after all students have taken an introductory computer science programming course. The results of this study have implications for how quickly students are evaluated for mastery of knowledge and how we group students in introductory programming courses
Learning Loops: A Replication Study Illuminates Impact of HS Courses
A recent study about the effectiveness of subgoal labeling in an introductory computer science programming course both supported previous research and produced some puzzling results. In this study, we replicate the experiment with a different student population to determine if the results are repeatable. We also gave the experimental task to students in a follow-on course to explore if they had indeed mastered the programming concept. We found that the previous puzzling results were repeated. In addition, for the novice programmers, we found a statistically significant difference in performance based on whether the student had previous programming courses in high school. However, this performance difference disappears in a follow-on course after all students have taken an introductory computer science programming course. The results of this study have implications for how quickly students are evaluated for mastery of knowledge and how we group students in introductory programming courses
Natural Language Processing at the School of Information Studies for Africa
The lack of persons trained in computational linguistic methods is a severe obstacle to making the Internet and computers accessible to people all over the world in their own languages.
The paper discusses the experiences of designing and teaching an introductory course in Natural Language Processing to graduate computer science students at Addis Ababa University, Ethiopia, in order to initiate the education of computational linguists in the Horn of Africa region
Do Robots Dream of Virtual Sheep: Rediscovering the "Karel the Robot" Paradigm for the "Plug&Play Generation"
We introduce ”C-Sheep”, an educational system designed to teach students the fundamentals of computer programming in a novel and exciting way. Recent studies suggest that computer science education is fast approaching a crisis - application numbers for degree courses in the area of computer programming are down, and potential candidates are put off the subject which they do not fully understand.
We address this problem with our system by providing the visually rich virtual environment of ”The Meadow”, where the user writes programs to control the behaviour of a sheep using our ”CSheep” programming language. This combination of the ”Karel the Robot” paradigm with modern 3D computer graphics techniques, more commonly found in computer games, aims to help students to realise that computer programming can be an enjoyable and rewarding experience and intends to help educators with the teaching of computer science fundamentals. Our mini-language-like system for computer science education uses a state of the art rendering engine
offering features more commonly found in entertainment systems.
The scope of the mini-language is designed to fit in with the curriculum for the first term of an introductory computer program ming course (using the C programming language)
Recommended from our members
Work-in-Progress: Research Plan for Introducing Problem Solving Skills through Activities to an Introductory Computer Science Course
This work-in-progress research plan paper describes the
process of developing and planning an introductory computer
science course utilizing fundamental problem-solving
skills in combination with hands-on visual activities to
explain various Computer Science (CS) concepts. Problem
solving skills, as observed by the authors of the paper, are
challenging for students across multiple STEM disciplines,
but those who develop these skills perform better within
their STEM courses. The authors hypothesize that introduction
of these skills within a first-year computer science
course will benefit a student’s successful completion of a
STEM degree and their future STEM career [1]. The goal
of this research is to integrate fundamental problem-solving
skills into the existing course material and in-class activities.
The research project will use two-sections of the same
course taught during the same semester with approximately
200 students in each section. Nine hands-on activities,
each covering a fundamental programming concept, were
created to explain these concepts to students with a visual,
real-world component. Both sections will cover the same
computer science material, but some activities will be different
between the two sections to allow for comparison of
performance. There are nine planned activities: three will
be performed with both sections; three will be performed
only in section 1; and the remaining three will be performed
only in section 2. Student performance on exams
and programming assignments for these topics will be same
and compared across both courses. This paper details the
similarities and differences between the two sections of the
course in terms of setup, activities planned, targeted problem-
solving skills, and learning objectives. Additionally,
the paper explains the evaluation plan and assessment tools/
measures to be used (including pre- and post-surveys and
assessment of student performance).Cockrell School of Engineerin
A Browser-based IDE for the MUzECS Platform
We report on a scalable, portable, and secure visual development environment for programming embedded Arduino platforms with Chromebooks in a successful secondary school computer science curriculum. Our web-based environment is part of the larger MUzECS project, an inexpensive replacement module for the Exploring Computer Science (ECS) course being widely deployed in United States high schools. Students use MUzECS to gain a deeper understanding of computing, through a set of blocks which provide appropriate abstractions for working with low-level hardware.
MUzECS improves upon the existing curriculum module by reducing the hardware cost by an order of magnitude, while still preserving the key ECS pillars of computer science content, student inquiry and classroom equity. Programming with visual blocks provides a more attractive tool for introductory courses than traditional approaches, and yet enables high-impact exploration activities such as building a series of embedded musical instruments.
The current work combines and modifies several existing tools to eliminate technical barriers on low-cost platforms like Chromebooks, such as the reliance on special block-based toolchains, remote compilation servers, or multi-stage transfers for student code
A music context for teaching introductory computing
We describe myro.chuck, a Python module for controlling music synthesis, and its applications to teaching introductory computer science. The module was built within the Myro framework using the ChucK programming language, and was used in an introductory computer science course combining robots, graphics and music. The results supported the value of music in engaging students and broadening their view of computer science
- …