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
Judith Galezer; Smadar Szekely – Informatics in Education, 2024
Spark, one of the products offered by MyQ (formerly Plethora), is a game-based platform meticulously designed to introduce students to the foundational concepts of computer science. By navigating through logical challenges, users delve into topics like abstraction, loops, and graph patterns. Setting itself apart from its counterparts, Spark boasts…
Descriptors: Learning Management Systems, Game Based Learning, Computer Science Education, Teaching Methods
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Mirolo, Claudio; Izu, Cruz; Lonati, Violetta; Scapin, Emanuele – Informatics in Education, 2021
When we "think like a computer scientist," we are able to systematically solve problems in different fields, create software applications that support various needs, and design artefacts that model complex systems. Abstraction is a soft skill embedded in all those endeavours, being a main cornerstone of computational thinking. Our…
Descriptors: Computer Science Education, Soft Skills, Thinking Skills, Abstract Reasoning
Peer reviewed Peer reviewed
Direct linkDirect link
Zhong, Baichang; Xia, Liying; Su, Siyu – Education and Information Technologies, 2022
One of the aspects of programming that novices often struggle with is the understanding of abstract concepts, such as variables, loops, expressions, and especially Boolean operations. This paper aims to explore the effects of programming tools with different degrees of embodiment on learning Boolean operations in elementary school. To this end, 67…
Descriptors: Programming Languages, Programming, Novices, Elementary Education
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Haglund, Pontus; Strömbäck, Filip; Mannila, Linda – Informatics in Education, 2021
Controlling complexity through the use of abstractions is a critical part of problem solving in programming. Thus, becoming proficient with procedural and data abstraction through the use of user-defined functions is important. Properly using functions for abstraction involves a number of other core concepts, such as parameter passing, scope and…
Descriptors: Computer Science Education, Programming, Programming Languages, Problem Solving
Peer reviewed Peer reviewed
Direct linkDirect link
Chan, Shiau-Wei; Looi, Chee-Kit; Ho, Weng Kin; Kim, Mi Song – Journal of Educational Computing Research, 2023
The importance of computational thinking (CT) as a 21st-century skill for future generations has been a key consideration in the reforms of many national and regional educational systems. Much attention has been paid to integrating CT into the traditional subject classrooms. This paper describes a scoping review of learning tools for integrating…
Descriptors: Thinking Skills, 21st Century Skills, Teaching Methods, Research Reports
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
Cansu, Sibel Kiliçarslan; Cansu, Fatih Kürsat – International Journal of Computer Science Education in Schools, 2019
Computers and smart devices have become ubiquitous staples of our lives. Computers and computer-controlled devices are used in all industries from medicine to engineering, and textile production. One field where computers have inevitably spread into is education, and one pre-requisite of controlling computers, or increasing the level and…
Descriptors: Computation, Thinking Skills, Problem Solving, Computer Science Education
Peer reviewed Peer reviewed
Direct linkDirect link
Statter, David; Armoni, Michal – ACM Transactions on Computing Education, 2020
Abstraction is one of the most fundamental ideas in computer science (CS), and as such, according to Bruner, it should be taught spirally, starting as early as possible and revisited at every level of education. However, teaching CS abstraction to novices is a very challenging task, and CS educational research has often demonstrated students'…
Descriptors: Middle School Students, Grade 7, Computer Science Education, Abstract Reasoning
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Szlávi,Péter; Zsakó, László – Acta Didactica Napocensia, 2017
As a programmer when solving a problem, a number of conscious and unconscious cognitive operations are being performed. Problem-solving is a gradual and cyclic activity; as the mind is adjusting the problem to its schemas formed by its previous experiences, the programmer gets closer and closer to understanding and defining the problem. The…
Descriptors: Problem Solving, Programming, Mathematics, Programming Languages
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Waite, Jane Lisa; Curzon, Paul; Marsh, William; Sentance, Sue; Hadwen-Bennett, Alex – International Journal of Computer Science Education in Schools, 2018
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…
Descriptors: Elementary School Teachers, Programming, Pedagogical Content Knowledge, Computation
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Kukul, Volkan; Karatas, Serçin – Informatics in Education, 2019
The aim of this study is to develop a self-efficacy measuring tool that can predict the computational thinking skill that is seen as one of the 21st century's skills. According to literature review, an item pool was established and expert opinion was consulted for the created item pool. The study group of this study consists of 319 students…
Descriptors: Computation, Thinking Skills, Self Efficacy, Programming
Peer reviewed Peer reviewed
PDF on ERIC Download full text
Waite, Jane Lisa; Curzon, Paul; Marsh, William; Sentance, Sue; Hadwen-Bennett, Alex – Online Submission, 2018
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 we rename the LOA levels: problem, design, code and running the code. In our qualitative exploratory study, we interviewed five K-5 teachers on their uses of LOA, particularly the design…
Descriptors: Elementary School Teachers, Computer Science Education, Programming, Abstract Reasoning
Peer reviewed Peer reviewed
Direct linkDirect link
Harcourt, Ed – Computer Science Education, 2007
SystemC is a system-level design and simulation language based on C++. We've been using SystemC for computer organization and design projects for the past several years. Because SystemC is embedded in C++ it contains the powerful abstraction mechanisms of C++ not found in traditional hardware description languages, such as support for…
Descriptors: Computer Science Education, Programming Languages, Computer Software, Computer System Design
Peer reviewed Peer reviewed
Direct linkDirect link
Nikula, Uolevi; Sajaniemi, Jorma; Tedre, Matti; Wray, Stuart – Journal of Information Technology Education, 2007
Students often find that learning to program is hard. Introductory programming courses have high drop-out rates and students do not learn to program well. This paper presents experiences from three educational institutions where introductory programming courses were improved by adopting Python as the first programming language and roles of…
Descriptors: Programming Languages, Programming, Abstract Reasoning, Introductory Courses
Peer reviewed Peer reviewed
Direct linkDirect link
Seppala, Otto; Malmi, Lauri; Korhonen, Ari – Computer Science Education, 2006
Data structures and algorithms are core issues in computer programming. However, learning them is challenging for most students and many of them have various types of misconceptions on how algorithms work. In this study, we discuss the problem of identifying misconceptions on the principles of how algorithms work. Our context is algorithm…
Descriptors: Programming, Abstract Reasoning, Misconceptions, Case Studies