NotesFAQContact Us
Collection
Advanced
Search Tips
Audience
Laws, Policies, & Programs
Assessments and Surveys
What Works Clearinghouse Rating
Showing all 11 results Save | Export
Peer reviewed Peer reviewed
Direct linkDirect link
Lian, Victor; Varoy, Elliot; Giacaman, Nasser – IEEE Transactions on Learning Technologies, 2022
Object-oriented programming (OOP) is a widely used programming paradigm in modern software industry. This makes it an essential skill for students in many disciplines to learn. However, OOP is known to be challenging to learn and teach due to its abstract nature. Studies have shown that students often face difficulties and develop misconceptions…
Descriptors: Programming, Computer Science Education, Visualization, Logical Thinking
Peer reviewed Peer reviewed
Direct linkDirect link
Kuo, Yu-Chen; Chen, Yun-An – Education and Information Technologies, 2023
With the development of science and technology, the demand for programmers has increased. However, learning computer programs is not an easy task. It might cause a significant impact on programming if misconceptions exist at the beginning of the study. Hence, it is important to discover and correct them immediately. Chatbots are effective teaching…
Descriptors: Programming, Artificial Intelligence, Computer Science Education, Misconceptions
Peer reviewed Peer reviewed
Direct linkDirect link
Hamouda, Sally; Edwards, Stephen H.; Elmongui, Hicham G.; Ernst, Jeremy V.; Shaffer, Clifford A. – Computer Science Education, 2020
Background and Context: Recursion in binary trees has proven to be a hard topic. There was not much research on enhancing student understanding of this topic. Objective: We present a tutorial to enhance learning through practice of recursive operations in binary trees, as it is typically taught post-CS2. Method: We identified the misconceptions…
Descriptors: Computer Science Education, Programming, Coding, Student Attitudes
Peer reviewed Peer reviewed
Direct linkDirect link
Hamouda, Sally; Edwards, Stephen H.; Elmongui, Hicham G.; Ernst, Jeremy V.; Shaffer, Clifford A. – ACM Transactions on Computing Education, 2019
Recursion is one of the most important and hardest topics in lower division computer science courses. As it is an advanced programming skill, the best way to learn it is through targeted practice exercises. But the best practice problems are time consuming to manually grade by an instructor. As a consequence, students historically have completed…
Descriptors: Computer Science Education, Programming, Instructional Effectiveness, Difficulty Level
Peer reviewed Peer reviewed
Direct linkDirect link
Yang, Tzu-Chi; Hwang, Gwo-Jen; Yang, Stephen J. H.; Hwang, Gwo-Haur – Educational Technology & Society, 2015
Computer programming is an important skill for engineering and computer science students. However, teaching and learning programming concepts and skills has been recognized as a great challenge to both teachers and students. Therefore, the development of effective learning strategies and environments for programming courses has become an important…
Descriptors: Foreign Countries, Programming, Instructional Effectiveness, College Students
Peer reviewed Peer reviewed
Direct linkDirect link
McCauley, Renée; Grissom, Scott; Fitzgerald, Sue; Murphy, Laurie – Computer Science Education, 2015
Hundreds of articles have been published on the topics of teaching and learning recursion, yet fewer than 50 of them have published research results. This article surveys the computing education research literature and presents findings on challenges students encounter in learning recursion, mental models students develop as they learn recursion,…
Descriptors: Computer Science Education, Programming, Literature Reviews, Best Practices
Peer reviewed Peer reviewed
Direct linkDirect link
Cetin, Ibrahim – Computer Science Education, 2013
The purpose of this study was twofold: to investigate students' concept images about class, object, and their relationship and to help them enhance their learning of these notions with a visualization tool. Fifty-six second-year university students participated in the study. To investigate his/her concept images, the researcher developed a survey…
Descriptors: Computer Science Education, Programming, Visualization, Animation
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
Tangney, Brendan; Oldham, Elizabeth; Conneely, Claire; Barrett, Stephen; Lawlor, John – IEEE Transactions on Education, 2010
This paper describes a model for computer programming outreach workshops aimed at second-level students (ages 15-16). Participants engage in a series of programming activities based on the Scratch visual programming language, and a very strong group-based pedagogy is followed. Participants are not required to have any prior programming experience.…
Descriptors: Foreign Countries, Computer Software, Programming Languages, Computer Science Education
Peer reviewed Peer reviewed
Direct linkDirect link
Ma, L.; Ferguson, J.; Roper, M.; Wood, M. – Computer Science Education, 2011
The teaching of introductory computer programming seems far from successful, with many first-year students performing more poorly than expected. One possible reason for this is that novices hold "non-viable" mental models (internal explanations of how something works) of key programming concepts which then cause misconceptions and difficulties. An…
Descriptors: Teaching Models, Programming, Misconceptions, Models
Peer reviewed Peer reviewed
Direct linkDirect link
Sajaniemi, Jorma; Kuittinen, Marja; Tikansalo, Taina – Journal on Educational Resources in Computing, 2008
Students' understanding of object-oriented (OO) program execution was studied by asking students to draw a picture of a program state at a specific moment. Students were given minimal instructions on what to include in their drawings in order to see what they considered to be central concepts and relationships in program execution. Three drawing…
Descriptors: Freehand Drawing, Programming, Student Development, Misconceptions