Publication Date
In 2025 | 3 |
Since 2024 | 14 |
Since 2021 (last 5 years) | 42 |
Since 2016 (last 10 years) | 73 |
Since 2006 (last 20 years) | 93 |
Descriptor
Computer Science Education | 94 |
Difficulty Level | 94 |
Programming | 83 |
Foreign Countries | 39 |
Cognitive Processes | 38 |
College Students | 28 |
Programming Languages | 27 |
Teaching Methods | 26 |
Student Attitudes | 24 |
Instructional Effectiveness | 23 |
Problem Solving | 23 |
More ▼ |
Source
Author
Mangaroska, Katerina | 3 |
Edwards, Stephen H. | 2 |
Elmongui, Hicham G. | 2 |
Ernst, Jeremy V. | 2 |
Gaševic, Dragan | 2 |
Giannakos, Michail | 2 |
Hamouda, Sally | 2 |
Kölling, Michael | 2 |
Lavy, Ilana | 2 |
Mannila, Linda | 2 |
Shaffer, Clifford A. | 2 |
More ▼ |
Publication Type
Education Level
Audience
Teachers | 1 |
Location
Turkey | 5 |
China | 4 |
Australia | 3 |
Brazil | 3 |
Greece | 3 |
South Korea | 3 |
United Kingdom (England) | 3 |
Asia | 2 |
Canada | 2 |
Finland | 2 |
Germany | 2 |
More ▼ |
Laws, Policies, & Programs
Assessments and Surveys
Group Embedded Figures Test | 1 |
What Works Clearinghouse Rating
Ünal Çakiroglu; Seval Bilgi – Interactive Learning Environments, 2024
The aim of this explanatory study is to identify the causes of intrinsic cognitive load in programming process. For this purpose, a method based on two dimensions; programming knowledge types (syntactic, semantic, and strategic) and programming constructs was proposed. The proposed method was tested with high school students enrolled in Computer…
Descriptors: Cognitive Processes, Difficulty Level, Programming, Interaction
Brown, Neil C. C.; Weill-Tessier, Pierre; Sekula, Maksymilian; Costache, Alexandra-Lucia; Kölling, Michael – ACM Transactions on Computing Education, 2023
Objectives: Java is a popular programming language for use in computing education, but it is difficult to get a wide picture of the issues that it presents for novices; most studies look only at the types or frequency of errors. In this observational study, we aim to learn how novices use different features of the Java language. Participants:…
Descriptors: Novices, Programming, Programming Languages, Data
Paola Iannone; Athina Thoma – International Journal of Mathematical Education in Science and Technology, 2024
Programming is becoming increasingly common in mathematics degrees as it is a desirable skill for new graduates. However, research shows that its use is mostly restricted to computational or modelling tasks. This paper reports a study on students' perceptions of and difficulties with Lean, an interactive theorem prover introduced as part of a…
Descriptors: Programming, Mathematics Instruction, Computer Science Education, Student Attitudes
Shin, Yoonhee; Jung, Jaewon; Zumbach, Joerg; Yi, Eunseon – Journal of Educational Computing Research, 2023
This study explores the effects of worked-out examples and metacognitive scaffolding on novice learners' knowledge performance, cognitive loads, and self-regulation skills in problem-solving programming. 126 undergraduate students in a computer programming fundamentals course were randomly assigned to one of four groups: (1) task performance with…
Descriptors: Problem Solving, Metacognition, Scaffolding (Teaching Technique), Programming
Daniele Traversaro; Giorgio Delzanno; Giovanna Guerrini – Informatics in Education, 2024
Concurrency is a complex to learn topic that is becoming more and more relevant, such that many undergraduate Computer Science curricula are introducing it in introductory programming courses. This paper investigates the combined use of Sonic Pi and Team-Based Learning to mitigate the difficulties in early exposure to concurrency. Sonic Pi, a…
Descriptors: Misconceptions, Programming Languages, Computer Science Education, Undergraduate Students
Yun Huang; Christian Dieter Schunn; Julio Guerra; Peter L. Brusilovsky – ACM Transactions on Computing Education, 2024
Programming skills are increasingly important to the current digital economy, yet these skills have long been regarded as challenging to acquire. A central challenge in learning programming skills involves the simultaneous use of multiple component skills. This article investigates why students struggle with integrating component skills--a…
Descriptors: Programming, Computer Science Education, Error Patterns, Classification
Yoonhee Shin; Jaewon Jung; Seohyun Choi; Bokmoon Jung – Education and Information Technologies, 2025
This study investigates the effects of metacognitive and cognitive strategies for computational thinking (CT) on managing cognitive load and enhancing problem-solving skills in collaborative programming. Four different scaffolding conditions were provided to help learners optimize cognitive load and improve their problem-solving abilities. A total…
Descriptors: Scaffolding (Teaching Technique), Mental Computation, Cognitive Processes, Difficulty Level
Hsu, Wen-Chin; Gainsburg, Julie – Journal of Educational Computing Research, 2021
Block-based programming languages (BBLs) have been proposed as a way to prepare students for learning to program in more sophisticated, text-based languages, such as Java. Hybrid BBLs add the ability to view and edit the block commands in auto-generated, text-based code. We compared the use of a non-hybrid BBL (Scratch), a hybrid BBL (Pencil…
Descriptors: Computer Science Education, Introductory Courses, Teaching Methods, Student Attitudes
Sigal Levy; Yelena Stukalin; Nili Guttmann-Beck – Teaching Statistics: An International Journal for Teachers, 2024
Probability theory has extensive applications across various domains, such as statistics, computer science, and finance. In probability education, students are introduced to fundamental principles which may include mathematical topics such as combinatorics and symmetric sample spaces. Students pursuing degrees in computer science possess a robust…
Descriptors: Programming, Probability, Mathematics Skills, Computer Science Education
Monjelat, Natalia; Lantz-Andersson, Annika – Education and Information Technologies, 2020
In recent years, there has been a renewed interest in the introduction of programming in teacher education and professional development, highlighting its importance for the development of so-called computational thinking. This study explored primary education teachers' participation in programming practices. By focusing on their views of creating…
Descriptors: Faculty Development, Thinking Skills, Elementary School Teachers, Programming
Renske Weeda; Sjaak Smetsers; Erik Barendsen – Computer Science Education, 2024
Background and Context: Multiple studies report that experienced instructors lack consensus on the difficulty of programming tasks for novices. However, adequately gauging task difficulty is needed for alignment: to select and structure tasks in order to assess what students can and cannot do. Objective: The aim of this study was to examine…
Descriptors: Novices, Coding, Programming, Computer Science Education
Pelánek, Radek; Effenberger, Tomáš – Computer Science Education, 2022
Background and Context: Block-based programming is a popular approach to teaching introductory programming. Block-based programming often works in the context of microworlds, where students solve specific puzzles. It is used, for example, within the Hour of Code event, which targets millions of students. Objective: To identify design guidelines…
Descriptors: Programming, Computer Science Education, Puzzles, Problem Solving
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
Moon, Hyunchang; Cheon, Jongphil; Kwon, Kyungbin – International Journal of Computer Science Education in Schools, 2022
To help novice learners overcome the obstacles of learning computational thinking (CT) through programming, it is vital to identify difficult CT components. This study aimed to determine the computational concepts and practices that learners may have difficulties acquiring and discuss how programming instructions should be designed to facilitate…
Descriptors: Difficulty Level, Computation, Thinking Skills, Programming
Casterella, Gretchen I.; Vijayasarathy, Leo – Journal of Information Systems Education, 2019
SQL query writing is a challenging task for novices, even after considerable training. Query writing is a programming task and a translation task where the writer must translate a user's request for information into code that conforms to the structure, constraints, and syntax of an SQL SELECT statement and that references specific tables and…
Descriptors: Information Retrieval, Programming Languages, Programming, Coding