NotesFAQContact Us
Collection
Advanced
Search Tips
Audience
Laws, Policies, & Programs
Assessments and Surveys
What Works Clearinghouse Rating
Showing all 15 results Save | Export
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Michael Kolling – Informatics in Education, 2024
The principles of programming language design for learning and teaching have been described and discussed for several decades. Most influential was the work of Niklaus Wirth, describing principles such as simplicity, modularity, orthogonality, and readability. So why is this still an area of fundamental disagreement among educators? Why can…
Descriptors: Programming Languages, Design, Novices, Computer Science Education
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Lokkila, Erno; Christopoulos, Athanasios; Laakso, Mikko-Jussi – Informatics in Education, 2023
Prior programming knowledge of students has a major impact on introductory programming courses. Those with prior experience often seem to breeze through the course. Those without prior experience see others breeze through the course and disengage from the material or drop out. The purpose of this study is to demonstrate that novice student…
Descriptors: Prior Learning, Programming, Computer Science Education, Markov Processes
Peer reviewed Peer reviewed
Direct linkDirect link
Ezeamuzie, Ndudi O. – Education and Information Technologies, 2023
Several instructional approaches have been advanced for learning programming. However, effective ways of engaging beginners in programming in K-12 are still unclear, especially among low socioeconomic status learners in technology-deprived learning environments. Understanding the learning path of novice programmers will bridge this gap and explain…
Descriptors: Programming, Constructivism (Learning), Programming Languages, Computer Science Education
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Sbaraglia, Marco; Lodi, Michael; Martini, Simone – Informatics in Education, 2021
Introductory programming courses (CS1) are difficult for novices. Inspired by "Problem solving followed by instruction" and "Productive Failure" approaches, we define an original "necessity-driven" learning design. Students are put in an apparently well-known situation, but this time they miss an essential ingredient…
Descriptors: Programming, Introductory Courses, Computer Science Education, Programming Languages
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Elvina, Elvina; Karnalim, Oscar; Ayub, Mewati; Wijanto, Maresha Caroline – Journal of Technology and Science Education, 2018
Numerous Program Visualization tools (PVs) have been developed for assisting novice students to understand their source code further. However, none of them are practical to be used in the context of completing programming laboratory task; students are required to keep switching between PV and programming workspace since PV's features are…
Descriptors: Visualization, Programming, Computer Science Education, Intelligent Tutoring Systems
Peer reviewed Peer reviewed
Direct linkDirect link
Flores, Rejeenald M.; Rodrigo, Ma. Mercedes T. – Journal of Educational Computing Research, 2020
Wheel-spinning refers to the failure to master a skill in a timely manner or after a considerable number of practice opportunities. Several past studies have developed wheel-spinning models in the areas of Mathematics and Physics. However, no models have been made for the context of novice programming. The purpose of this study was to develop…
Descriptors: Mastery Learning, Novices, Programming, Computer Science Education
Peer reviewed Peer reviewed
Direct linkDirect link
Schoeman, Marthie – Perspectives in Education, 2019
Due to the character of programming languages, reading ability may have more impact on learning to program than on learning in other subjects. This paper describes an exploratory study of the relationship between reading skills, as perceived through eye tracking, and the ability to program. An empirical investigation into this relationship…
Descriptors: Reading Skills, Predictor Variables, Programming, Novices
Peer reviewed Peer reviewed
Direct linkDirect link
Chen, Chen; Haduong, Paulina; Brennan, Karen A.; Sonnert, Gerhard; Sadler, Philip M. – AERA Online Paper Repository, 2017
The impact of a novice programmer's first language on their subsequent achievement in further computing education has been the subject of much study in the field of computer science education. Our research is a retrospective study of more than 10,000 undergraduate students enrolled in CS1 (introduction to computer programming) from 118 US college…
Descriptors: Undergraduate Students, Computer Science Education, Novices, Programming
Peer reviewed Peer reviewed
Direct linkDirect link
Papadakis, Stamatios; Kalogiannakis, Michail; Orfanakis, Vasileios; Zaranis, Nicholas – International Journal of Web-Based Learning and Teaching Technologies, 2017
Teaching programming is a complex task. The task is even more challenging for introductory modules. There is an ongoing debate in the teaching community over the best approach to teaching introductory programming. Visual block-based programming environments allow school students to create their own programs in ways that are more accessible than in…
Descriptors: Introductory Courses, Programming, Elementary Education, Secondary Education
Peer reviewed Peer reviewed
Direct linkDirect link
Veerasamy, Ashok Kumar; D'Souza, Daryl; Laakso, Mikko-Jussi – Journal of Educational Technology Systems, 2016
This article presents a study aimed at examining the novice student answers in an introductory programming final e-exam to identify misconceptions and types of errors. Our study used the Delphi concept inventory to identify student misconceptions and skill, rule, and knowledge-based errors approach to identify the types of errors made by novices…
Descriptors: Computer Science Education, Programming, Novices, Misconceptions
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Weintrop, David; Wilensky, Uri – Informatics in Education, 2014
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'…
Descriptors: Programming, Programming Languages, Introductory Courses, Constructivism (Learning)
Peer reviewed Peer reviewed
Direct linkDirect link
Chang, Chih-Kai – Journal of Educational Computing Research, 2014
Scratch, a visual programming language, was used in many studies in computer science education. Most of them reported positive results by integrating Scratch into K-12 computer courses. However, the object-oriented concept, one of the important computational thinking skills, is not represented well in Scratch. Alice, another visual programming…
Descriptors: Foreign Countries, College Freshmen, Information Technology, Computer Science Education
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Mannila, Linda – Informatics in Education, 2010
In this paper, we analyze the errors novice students make when developing invariant based programs. In addition to presenting the general error types, we also look at what students have difficulty with when it comes to expressing invariants. The results indicate that an introductory course utilizing the invariant based approach is suitable from…
Descriptors: Novices, Error Patterns, Difficulty Level, Introductory Courses
Peer reviewed Peer reviewed
Direct linkDirect link
Sien, Ven Yu – Computer Science Education, 2011
Object-oriented analysis and design (OOAD) is not an easy subject to learn. There are many challenges confronting students when studying OOAD. Students have particular difficulty abstracting real-world problems within the context of OOAD. They are unable to effectively build object-oriented (OO) models from the problem domain because they…
Descriptors: Foreign Countries, Computer Science Education, Undergraduate Students, Computer Software
Peer reviewed Peer reviewed
Direct linkDirect link
Felleisen, Matthias; Findler, Robert Bruce; Flatt, Matthew; Krishnamurthi, Shriram – Computer Science Education, 2004
The TeachScheme! Project aims to reform three aspects of introductory programming courses in secondary schools. First, we use a design method that asks students to develop programs in a stepwise fashion such that each step produces a well-specified intermediate product. Second, we use an entire series of sublanguages, not just one. Each element of…
Descriptors: Programming, Programming Languages, Computer Science Education, Program Implementation