9,463 research outputs found
Early experiences of computerâaided assessment and administration when teaching computer programming
This paper describes early experiences with the Ceilidh system currently being piloted at over 30 institutions of higher education. Ceilidh is a courseâmanagement system for teaching computer programming whose core is an autoâassessment facility. This facility automatically marks students programs from a range of perspectives, and may be used in an iterative manner, enabling students to work towards a target level of attainment. Ceilidh also includes extensive courseâadministration and progressâmonitoring facilities, as well as support for other forms of assessment including shortâanswer marking and the collation of essays for later handâmarking. The paper discusses the motivation for developing Ceilidh, outlines its major facilities, then summarizes experiences of developing and actually using it at the coalâface over three years of teaching
Introductory programming: a systematic literature review
As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming.
This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research
The development of design guidelines for educational programming environments
Introductory programming courses at university are currently experiencing a significant dropout and failure rate. Whilst several reasons have been attributed to these numbers by researchers, such as cognitive factors and aptitude, it is still unclear why programming is a natural skill for some students and a cause of struggle for others. Most of the research in the computer science literature suggests that methods of teaching programming and studentsâ learning styles as reasons behind this trend. In addition to the choice of the first programming language taught.
With the popularity of virtual learning environments and online courses, several instructors are incorporating these e-learning tools in their lectures in an attempt to increase engagement and achievement. However, many of these strategies fail as they do not use effective teaching practices or recognise the learning preferences exhibited by a diverse student population. Therefore this research proposes that combining multiple teaching methods to accommodate different learners' preferences will significantly improve performance in programming.
To test the hypothesis, an interactive web based learning tool to teach Python programming language (PILeT) was developed. The toolâs novel contribution is that it offers a combination of pedagogical methods to support studentâs learning style based on the Felder-Silverman model.
First, PILeT was evaluated by both expert and representative users to detect any usability or interface design issues that might interfere with studentsâ learning. Once the problems were detected and fixed, PILeT was evaluated again to measure the learning outcomes that resulted from its use. The experimental results show that PILeT has a positive impact on students learning programming
TOWARDS THE DEVELOPMENT OF AN AUTOMATIC FEEDBACK SYSTEM FOR PROGRAMMING ASSIGNMENT
Programming problems and assignment are considered essential elements of software engineering and computer scienceeducation. We propose a framework with which student programming assignments can receive automatic feedback on thesemantics of their program codes. The proposed system increases the interest to study and understand the concept of theprogramming subjects. The objective is to assist teachers to promote programming as a subject and increase, increasestudentâs performance while improving the quality of content delivered in computer programing courses.Keywords: Programming, students, framework, feedback, understanding and assignments
Recommended from our members
The Role of Artificial Intelligence in Educating Novice Programmers
Programming is an inherently difficult skill to acquire and develop. Those who attempt to learn programming may be easily discouraged. The current landscape for computer science education does not address the needs of every novice programmer. Literature reports a discrepancy between student misconceptions and instructorsâ perceptions of those misconceptions. Those who can afford a one-on-one human tutor perform on average two standard deviations better than those who learn via conventional methods, suggesting there is a need for a comparable, cheaper replacement. As a result, a number of intelligent tutoring systems have been developed for the purpose of teaching introductory programming concepts and replicating the benefits of one-on-one human tutoring. In this thesis, we analyze and discuss the literature pertaining to student misconceptions, selecting five fundamental misconception categories for introductory programming to demonstrate the effectiveness of existing intelligent tutoring systems. The features of existing intelligent tutoring systems are discussed and analyzed with respect to their effectiveness in addressing student misconceptions. Finally, we highlight the current gap in research on intelligent tutoring systems, hypothesizing the architecture and features of an ideal intelligent tutoring system for introductory programming.Electrical and Computer Engineerin
- âŠ