Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2014
…
9 pages
1 file
Abstract. Syntactic mistakes and misconceptions in programming can have a negative impact on students ’ learning gains, and thus require particular attention in order to help students learn programming. In this paper, we propose embedding a discourse on syntactic issues and student’s misconceptions into a dialogue between a student and an intelligent tutor. Based on compiler (error) messages, the approach aims to determine the cause for the error a student made (carelessness, misconception, or lack of knowledge) by requesting explanations for the violated syntactic construct.Dependingonthatcause,theproposedsystemadaptsdialogue behaviours to student’s needs by asking her to reflect on her knowledge in a self-explanation process, providing error-specific explanations, and enabling her to fix the error herself. This approach is designed to encourage students to develop a deeper understanding of syntactic concepts in programming.
International Journal of Advanced Computer Science and Applications, 2020
Programming is a complicated task and correcting syntax error is just one among the many tasks that makes it difficult. Error messages produced by the compiler allow novice learners to know their errors. However, these messages are puzzling, and most of the times misleading due to cascading of errors, which can be detrimental to running a syntax-error free program. In most laboratory setting, it is the role of the teachers to assist their students while doing activities. However, in our experienced, considering the large number of students in a class, it may seem difficult for teachers to assist their students one-byone given the time constraints. In this paper, the design and implementation of an interactive pedagogical agent named JEPPY is presented. It is intended to assist novice learners learning to program using C++ as a programming language. In order to see on how students struggle or progress in dealing with errors, the proponents implemented the Error Quotient (EQ) developed by Jadud. The principles of the cognitive requirements of an agentbased learning environment were followed. The agent was put into test by novice learners in a laboratory setting. Logs of interaction between the embodied agent and the participants were recorded, aside from the compile errors and edit actions. These mechanisms show us some insight on the interaction behavior of learner to the agent.
2006
Intelligent Tutoring Systems (ITS) have assisted engineering students in several domains. The domains considered ideal for ITS contain easily represented issues in computational form and allow the interaction type between student and ITS be limited to a restricted set of words, symbols, and numbers. It is proposed to exploit intelligent system technology to support an explanation process in the context of ITS. A system was developed to support explanations of examples to assist the learning process of basic programming. Examples of C programs, previously elaborated by a teacher, are presented to a student from who are expected explanations to source-code regions. Using techniques of approximate natural language understanding, the system tries to recognize explanation contents to send the result to a module that classifies explanations as correct, incorrect, or incomplete according to the context of the proposed activity. The context can be configured by the teacher. After explanation processing, an ITS could determine the subsequent stages according to its educational strategy.
2015
This paper proposes a novel generic architecture for a conversational intelligent tutoring system named Hendrix. Hendrix mimics a human tutor by guiding a learner through a given knowledge domain using natural language. Hendrix converses with a learner to identify gaps in knowledge through questioning, expanding the curriculum when gaps in knowledge are identified. Hendrix supports learners by detecting questions and providing definitions and examples. Hendrix novel architecture uses a graph of concepts to dynamically generate tutorials. Hendrix uses both syntactic and semantic language analysis to extract and match information from learner utterances. Hendrix’ two loop algorithm is dependent on identifying the short term goal a learner in each conversational turn. In a pilot study, Hendrix correctly classified the utterance type of 91% of input sentences, marked 94.5% of question answers correctly, and was rated 3.93 out of 5 for user satisfaction
LC International Journal of STEM, 2020
The intention of this research is to investigate effectiveness and impact of NLF for error messages on the performance, motivation, cognitive load of novices in FPL like C. This study analyzed the effectiveness of enhanced error messages in natural language on debugging .it is used as a teaching tool in introductory programming language. This research focus on use of natural language framework to illustrate errors, suggest proper solution thus ensures that usability of error messages effectively to facilitate debugging. This paper reports that self-directed static error resolution and illustration using natural language, enhanced understanding of static errors and decreased debugging time. CFG based NLF ensemble natural language description underpinning HCI approach in IDE for resolution of errors. We inferred that novices using NLF performed better in programming with good understanding of static error handling, error resolution ,NLF has valuable impression on novice learning outcomes The results of study indicate error messages in natural language augmented static error debugging time which has considerable impact on performance, motivation, cognitive load of novices.
2021 IEEE/ACM 43rd International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET), 2021
Novice programmers face numerous barriers while attempting to learn how to code that may deter them from pursuing a computer science degree or career in software development. In this work, we propose a tool concept to address the particularly challenging barrier of novice programmers holding misconceptions about how their code behaves. Specifically, the concept involves an inquisitive code editor that: (1) identifies misconceptions by periodically prompting the novice programmer with questions about their program's behavior, (2) corrects the misconceptions by generating explanations based on the program's actual behavior, and (3) prevents further misconceptions by inserting test code and utilizing other educational resources. We have implemented portions of the concept as plugins for the Atom code editor and conducted informal surveys with students and instructors. Next steps include deploying the tool prototype to students enrolled in introductory programming courses.
2003
Syntax error correction is an essential part of the debugging process. Yet there has been little research investigating how programmers approach syntax error correction and how to help beginner programmers learn to fix errors efficiently. This paper describes development and evaluation of a tool to support students learning how to correct syntax errors.
Proceedings of the Annual Hawaii International Conference on System Sciences, 2022
Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way. In this paper, we present 'PCDIT', a non-linear problem solving framework that provides scaffolding to guide novice programmers through the process of transforming a problem specification into an implemented and tested solution for an imperative programming language. A key distinction of PCDIT is its focus on developing concrete cases for the problem early without actually writing test code: students are instead encouraged to think about the abstract steps from inputs to outputs before mapping anything down to syntax. We reflect on our experience of teaching an introductory programming course using PCDIT, and report the results of a survey that suggests it helped students to break down challenging problems, organise their thoughts, and reach working solutions.
2020
The purpose of this research is to study usefulness and impact of natural language framework for description of error messages on the performance, motivation, cognitive load of novices in imperative first programming language like C. This study is about investigating the impact of error messages description in natural language on debugging skill of students. It is used as a teaching tool in introductory programming language. In this research a framework based on natural language was constructed based on context free grammar (CFG) underpinning human computer interaction (HCI) to facilitate debugging of errors. This paper reports that using natural language to describe error messages decrease debugging time. We concluded that novices using this framework performed better with good understanding of static error handling, error correction with fewer number of errors. This framework has appreciable effect on learning outcomes of the students. The results of study reflect the time spent t...
International Journal of …, 2008
To investigate whether more concise Natural Language feedback improves learning, we developed two Natural Language generators (DIAG-NLP1 and DIAG-NLP2), to provide feedback in an Intelligent Tutoring System that teaches troubleshooting. We systematically evaluated them in a three way comparison that included the original system, which generates overly repetitive feedback. We found that DIAG-NLP2, the generator which intuitively produces the best,
Proceedings of the SIGDIAL 2009 Conference on The 10th Annual Meeting of the Special Interest Group on Discourse and Dialogue - SIGDIAL '09, 2009
We describe an approach to dealing with interpretation errors in a tutorial dialogue system. Allowing students to provide explanations and generate contentful talk can be helpful for learning, but the language that can be understood by a computer system is limited by the current technology. Techniques for dealing with understanding problems have been developed primarily for spoken dialogue systems in informationseeking domains, and are not always appropriate for tutorial dialogue. We present a classification of interpretation errors and our approach for dealing with them within an implemented tutorial dialogue system.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
Proceedings of the 20th Australasian Computing Education Conference on - ACE '18
ACM SIGCSE Bulletin, 1975
ACM SIGPLAN Notices, 2013
Journal of Advances in Information Technology
Behavior Research Methods & Instrumentation, 1982
Proceedings of 7th International Conference "Informatics in Education and New Information Technologies", 1997
2020 IEEE Frontiers in Education Conference (FIE)