TY - JOUR TI - Causes of Failure of University Students in Computer Programming Courses : The Case of Wachemo University AU - Wubetu Barud Demilie JO - International Journal of Scientific Research in Computer Science, Engineering and Information Technology PB - Technoscience Academy DA - 2019/10/30 PY - 2019 DO - https://doi.org/10.32628/CSEIT195516 UR - https://ijsrcseit.com/CSEIT195516 VL - 5 IS - 5 SP - 123 EP - 132 AB - Computer programming courses are among the important components of the curriculum to be studied, not only in the school of Computing and Informatics, but also in most of the field including Natural Sciences, Mathematics, and Engineering Science departments. In this research, a study was conducted to investigate and explore the views of students for the failure and difficulties they faced in learning fundamental programming courses. There are many factors that influence the high rate of failure of students in computer programming courses. This paper focuses on the teaching and learning methodologies and strategies that are implemented in teaching of programming courses. This is a major factor for consideration; hence an investigation into the causes of failure of students in computer programming courses from the learner perspective with regard to the teaching methodology used by teachers to teach these courses is relevant and very important concept. Computer programming courses form part of the core concentration areas for students especially studying in school of computing and informatics as an undergraduate degree program. Computer programming students are expected to prove capabilities in the principles of programming and logic that are being taught in the course; even though some of these concepts are highly intellectual and multifaceted. Their opinions to the usefulness of the teaching methods being implemented in computer programming courses were required for. The needs and concerns about the teaching and learning methods are highlighted in the survey and discussed thereby leading to the making of suggestions about the ways to improve the teaching and learning methods that are used in computer programming courses in order to advance understanding of computer programming, when studied by students thereby minimizing failure rates of those students.