255 research outputs found

    Visual iconic object-oriented programming to advance computer science education and novice programming

    Get PDF
    Learning how to program a computer is difficult for most people. Computer programming is a cognitively challenging, time consuming, labor intensive, and frustrating endeavor. Years of formal study and training are required to learn a programming language\u27s world of algorithms and data structures. Instructions are coded in advance before the computer demonstrates the desired behavior. Seeing all the programming steps and instruction code is complicated. There exists a tremendous gap between the representations the human brain uses when thinking about a problem and the representations used in programming a computer. Often people are much better at dealing with specific, concrete objects than working with abstract ideas. Concrete and specific programming examples and demonstrations can be very useful. When cleverly chosen and properly used, programming examples and demonstrations help people understand the abstract concepts. Programming by example or demonstration attempts to extend these novel ideas to novice programming

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Service Learning Models Connecting Computer Science to the Community

    Get PDF
    Service learning is an educational experience that enables students to apply material learned in the classroom by volunteering in a real-world situation. This paper provides a brief review of service learning and describes two models that the computer science department at Saint Anselm College implemented successfully

    Introductory Programming and the Didactic Triangle

    Full text link
    In this paper, we use Kansanen's didactic triangle to structure and analyse research on the teaching and learning of programming. Students, teachers and course content are the three entities that form the corners of the didactic triangle. The edges of the triangle represent the relationships between these three entities. We argue that many computing educators and computing education researchers operate from within narrow views of the didactic triangle. For example, computing educators often teach programming based on how they relate to the computer, and not how the students relate to the computer. We conclude that, while research that focuses on the corners of the didactic triangle is sometimes appropriate, there needs to be more research that focuses on the edges of the triangle, and more research that studies the entire didactic triangle. © 2010, Australian Computer Society, Inc

    Abstraction and Common Classroom Activities

    Get PDF
    In popularizing computational thinking, Wing notes that ‘abstraction is described as underlying computational thinking and computational thinking is described as fundamental to computing.’ Emerging curricular now require educators to incorporate computational thinking and abstraction into their teaching. Many refer to Piaget’s work as evidence of an age-related ceiling preventing younger pupils from being able to abstract. However, more recent evidence suggests that pupils use elements of abstraction in their general process of learning, and that the skill of abstraction can be explicitly taught. We draw on personal classroom experience to illustrate the points made in the literature. Common classroom activities such as using labelled diagrams, concept maps and storyboards are aligned to features of abstraction. We argue that abstraction can and should be taught to young pupils

    Computing Education: An Overview of Research in the Field

    Get PDF

    Abstraction in action: K-5 teachers' uses of levels of abstraction, particularly the design level, in teaching programming

    Get PDF
    Research indicates that understanding levels of abstraction (LOA) and being able to move between the levels is essential to programming success. For K-5 contexts LOA levels have been named: problem, design, code and running the code. In a qualitative exploratory study, five K-5 teachers were interviewed on their uses of LOA, particularly the design level, in teaching programming and other subjects. Using PCK elements to analyse responses, the teachers interviewed used design as an instructional strategy and for assessment. The teachers used design as an aide memoire and the expert teachers used design: as a contract for pair-programming; to work out what they needed to teach; for learners to annotate with code snippets (to transition across LOA); for learners to self-assess and to assess ‘do-ability’. The teachers used planning in teaching writing to scaffold learning and promote self-regulation revealing their insight in student understanding. One issue was of the teachers' knowledge of terms including algorithm and code; a concept of ‘emergent algorithms’ is proposed. Findings from the study suggest design helps learners learn to program in the same way that planning helps learners learn to write and that LOA, particularly the design level, may provide an accessible exemplar of abstraction in action. Further work is needed to verify whether the study's results are generalisable more widely

    Computational Thinking and Literacy

    Get PDF
    Today’s students will enter a workforce that is powerfully shaped by computing. To be successful in a changing economy, students must learn to think algorithmically and computationally, to solve problems with varying levels of abstraction. These computational thinking skills have become so integrated into social function as to represent fundamental literacies. However, computer science has not been widely taught in K-12 schools. Efforts to create computer science standards and frameworks have yet to make their way into mandated course requirements. Despite a plethora of research on digital literacies, research on the role of computational thinking in the literature is sparse. This conceptual paper proposes a three dimensional framework for exploring the relationship between computational thinking and literacy through: 1) situating computational thinking in the literature as a literacy; 2) outlining mechanisms by which students’ existing literacy skills can be leveraged to foster computational thinking; and 3) elaborating ways in which computational thinking skills facilitate literacy development

    Coding Success through Math Intervention in an Elementary School in Rural Amish Country

    Get PDF
    Coding in the elementary classroom is a relatively new movement in K-12 education that intends to engage young people in computer science and technology-related study. Coding initiatives focus on introducing young learners to coding and developing their computational thinking abilities. Coding helps enhance problem solving, mathematics skills, and higher-order thinking. Nevertheless, educators face many challenges with teaching coding at the elementary school level, because of the newness of computer science concepts and programming languages, gaps in student mathematics knowledge, use of technology, a relatively short attention span of young students and not fully developed reasoning, logic, and inferential skills among many others. This report describes how math interventions helped elementary school students in rural Amish Country become more successful with their coding activities
    corecore