Abstract

Learning to program involves acquisition of various skills including problem solving, fundamental design techniques as well as critical thinking. Generally, most of the novice programmers struggle to develop all these important skill. The research community has addressed the problem in many different ways while involving improvisations in curriculum, pedagogical methods, cognitive aspects, supporting tools, and in designing assessments. This research aims to analyze and synthesize the existing literature in the aforementioned areas. Research articles pertaining to the area of Introductory Programming Courses (IPC) have been found using appropriate search queries, while nearly 60 research articles, published in last ten years, have been carefully selected by employing a systematic filtering process. The scope of this work only covers the research conducted for IPC in higher education. Main findings of this study show that “solution proposal” and “evaluation research” have been reported as two main research types adopted by these studies. Moreover, pedagogy, language choice and students' performance analysis are the most frequently addressed aspects of IPC; whereas, curriculum contents, assessment design, and teaching/learning through tools have appeared as less addressed aspects of IPC. Furthermore, a taxonomy of IPC has been presented based on the studied literature. Lastly, general considerations and future research directions have been presented for the practitioners and researchers in this area.

Highlights

  • Introductory programming generally refers to course introduced to undergraduate students with little or no programming experience

  • It is important to formulate primary RQs in order to achieve following core objectives: a) RQ1 attempts to address our objective to develop a library of articles related to the challenges faced by novice while learning Introductory Programming Courses (IPC) focusing on curricula and language choice, and make this dataset available to other researchers

  • B) Another objective to identify complexities faced by novices based on the selection of any particular language and curriculum while learning IPC will be achieved during assessment of RQ2

Read more

Summary

Introduction

Introductory programming generally refers to course introduced to undergraduate students with little or no programming experience. Introductory programming courses (IPCs) are included in various undergraduate degree programs. Final report of Curriculum Guidelines for Undergraduate Degree Programs in Computer Science [2] says that introductory courses differ across institutions to help students with significant variance in pre-requisite. We provide comparison among existing reviews based on five major perspectives: quality assessment scoring, curriculum, teaching and learning, assessment and targeted digital repositories. We have included comparison for only reviews published in quality journals

Objectives
Methods
Findings
Discussion
Conclusion

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.