Student concerns in introductory programming courses (original) (raw)

An Analysis of Introductory Programming Courses at UK Universities

The Art, Science, and Engineering of Programming

Context: In the context of exploring the art, science and engineering of programming, the question of which programming languages should be taught first has been fiercely debated since computer science teaching started in universities. Failure to grasp programming readily almost certainly implies failure to progress in computer science. Inquiry: What first programming languages are being taught? There have been regular national-scale surveys in Australia and New Zealand, with the only US survey reporting on a small subset of universities. This the first such national survey of universities in the UK. Approach: We report the results of the first survey of introductory programming courses (N = 80) taught at UK universities as part of their first year computer science (or related) degree programmes, conducted in the first half of. We report on student numbers, programming paradigm, programming languages and environment/tools used, as well as the underpinning rationale for these choices. Knowledge: The results in this first UK survey indicate a dominance of Java at a time when universities are still generally teaching students who are new to programming (and computer science), despite the fact that Python is perceived, by the same respondents, to be both easier to teach as well as to learn. Grounding: We compare the results of this survey with a related survey conducted since (as well as earlier surveys from and) in Australia and New Zealand. Importance: This survey provides a starting point for valuable pedagogic baseline data for the analysis of the art, science and engineering of programming, in the context of substantial computer science curriculum reform in UK schools, as well as increasing scrutiny of teaching excellence and graduate employability for UK universities.

An Analysis of Introductory University Programming Courses in the UK

2016

This paper reports the results of the first survey of introductory programming courses (N = 80) taught at UK universities as part of their first year computer science (or similar) degree programmes, conducted in the first half of 2016. Results of this survey are compared with a related survey conducted since 2010 (as well as earlier surveys from 2001 and 2003) in Australia and New Zealand. We report on student numbers, programming paradigm, programming languages and environment/tools used, as well as the reasons for choice of such. The results in this first UK survey indicate a dominance of Java at a time when universities are still generally teaching students who are new to programming (and computer science), despite the fact that Python is perceived to be both easier to teach as well as to learn. Furthermore, this survey provides a starting point for valuable pedagogic baseline data in the context of substantial computer science curriculum reform in UK schools, as well as increasi...

The Student Prompt: Student Feedback and Change in Teaching Practices in Postsecondary Computer ScienceThe Student Prompt: Student Feedback and Change in Teaching Practices in Postsecondary Computer Science

Research on retaining students in computer science is clear: pedagogical and curricular interventions that are experienced by all students are the most effective. Yet understanding what brings faculty to modify their teaching practices is scant. This study presents findings from a study based on interviews with 66 computer science professors and instructors in the U.S. Faculty described various sources of student feedback that prompt them to change their teaching practices. Though not originally an interview topic, every instructor mentioned ways in which student feedback instigated change. Faculty described several sources of feedback that influence teaching choices, with the goal of trying to improve their teaching. These include formalized evaluations; feedback inferred from student performance; direct requests from students; and students' nonverbal behavior. As sources of evidence for making decisions about teaching practices, each of these is problematic. We describe what makes them problematic and offer solutions described by faculty interviewed.

New challenges in teaching introductory programming courses: a case study

Frontiers in Education, 2004

The Department of Educational Sciences and the Department of Electronic & Telecommunications at the University of Aveiro (Portugal) have been working together with the Department of Computer & Information Sciences at the University of Strathclyde (UK), with the aim of improving the teaching quality of introductory programming courses and, indirectly, the academic success of their students. Over the past two years, data has been collected through interviews and questionnaires, to better understand the organization of the different courses and approaches to teaching. The present paper discusses how the organization of introductory programming courses in each institution reflects the teaching philosophy of the members of staff and also how course organization and teaching strategy relate to the students' attitudes to learning and their motivation for course involvement.

Introductory programming course: review and future implications

PeerJ Computer Science, 2021

The introductory programming course (IPC) holds a special significance in computing disciplines as this course serves as a prerequisite for studying the higher level courses. Students generally face difficulties during their initial stages of learning how to program. Continuous efforts are being made to examine this course for identifying potential improvements. This article presents the review of the state-of-the-art research exploring various components of IPC by examining sixty-six articles published between 2014 and 2020 in well-reputed research venues. The results reveal that several useful methods have been proposed to support teaching and learning in IPC. Moreover, the research in IPC presented useful ways to conduct assessments, and also demonstrated different techniques to examine improvements in the IPC contents. In addition, a variety of tools are evaluated to support the related course processes. Apart from the aforementioned facets, this research explores other interest...

Students’ Perception about Fundamental Programming Course Teaching and Learning

— Programming learning has unique characteristics as it is a subject that requires skill and higher order thinking. Students come to class with a perception about the subject mostly obtained from their seniors including fear or perceived difficulty. Senior students have a perception about programming learning that was supported by their experience during the subject learning. Students' views (+ /-) about the course could affect their performance. A qualitative survey was conducted with 93 third year students to obtain their views about the students' point of views while learning programming and the recommendation for modifying the course. Obstacles identified by students could be tackled with the aid of technology enhanced learning (TEL) including tutoring system. This survey is done as a preliminary step in developing and incorporating technical solution to students' problems. The findings were: Mostly, students are satisfied with the amount of time and effort they dedicated to the subject. While some mentioned that they would practice coding more and perform some projects beyond the course level. Majority of the students pointed out that they got useful advice from seniors about the subject learning. Less feedback was discouraging to students. About their suggested modification about the way the course setup, their overall responses approved the course design. There were minor comments about the proportions of the theoretical to practical components and the suitable amount of assignments.

Improving Student Engagement with Feedback: Using Feedback Tagging for Programming Assignments

This paper evaluates the use of a new technique for generating, disseminating and analysing feedback for programming courses at undergraduate level. The technique incorporates ideas from the popular Web 2.0 tagging paradigm and explores the resulting feedback generated. This interdisciplinary project between software engineering and education investigates how analysis of programming feedback can be used to direct remedial teaching. To illustrate the interdisciplinary nature of the project this paper utilizes a technique found primarily in social sciences called Thematic Analysis along with sentiment analysis in order to explore the feedback given to a cohort. The results presented here show experiences of using the technique and how the analysis of the resulting feedback data influenced teaching on a particular programming course. This paper concludes by identifying possible extensions to the research.

Introductory Programming Courses in Australia and New Zealand in 2013 - trends and reasons

This paper reports the results of a survey of 38 introductory programming courses in Australian and New Zealand universities, conducted in the first half of 2013. Results of this survey are compared with a survey conducted in 2010 on Australian universities and two other previous studies conducted in 2001 and 2003. Trends in student numbers, programming paradigm, programming languages and environment/tools used, as well as the reasons for choice of such are reported. Other aspects of first programming courses such as instructor experience, external delivery of courses and resources given to students are also examined. The results indicate a trend towards the adoption of Python for Introductory Computer Programming courses and that this language is being used in a structured approach for programming. Introductory computer programming courses that focus upon an Object Orientated approach predominantly use Java.

Trends in Introductory Programming Courses in Australian Universities–Languages, Environments and Pedagogy

Reproduction, 2012

This paper reports the results of a study of 44 introductory programming courses in 28 Australian universities, conducted in the latter months of 2010. Results of this study are compared with two censuses previously conducted during 2001 and 2003, to identify trends in student numbers, programming language and environment/tool use and the reasons for choice of these, paradigms taught, instructor experience, text used and time spent on problem solving strategies in lectures and tutorials. Measures of mental effort experienced ...

Curriculum, Teaching and Learning, and Assessments for Introductory Programming Course

IEEE Access

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.