DIGITAL LIBRARY
DEVELOPMENT AND EVALUATION OF AN INTERACTIVE PYTHON COURSE
University of Szczecin (POLAND)
About this paper:
Appears in: ICERI2018 Proceedings
Publication year: 2018
Pages: 456-466
ISBN: 978-84-09-05948-5
ISSN: 2340-1095
doi: 10.21125/iceri.2018.1094
Conference name: 11th annual International Conference of Education, Research and Innovation
Dates: 12-14 November, 2018
Location: Seville, Spain
Abstract:
In order to teach any programming language effectively, the students should be able to try the code they write as an exercise and obtain feedback on whether it is syntactically and semantically correct. A huge support in this process is provided by interactive programming tutorials capable of automatic solution checking and generation of feedback, which allows for self-paced learning and relieve the instructors from much of their duties.

There is a number of ready-made interactive tutorials to choose from (e.g. Codecademy, Code School and Khan Academy to name a few), yet using any of them is not always possible (because e.g. the language of instruction differs from the language of an interactive tutorial, or the content of an interactive tutorial does not match the intended scope of teaching) and even if it is, its downsides (such as low content quality, bad choice of examples, technical bottlenecks that may impede the quality of use – e.g. the server hosting the platform being overloaded, and dependence on the platform’s provider with regard to its continued existence with the required functionality and content sustained throughout the time span of a course) may be considered unacceptable.

In this paper, an alternate approach is proposed, in which the instructor develops an own interactive course, which gives him or her the full freedom with regard to the course form and content. The feasibility of implementing the proposed approach in the real world is confirmed by providing its proof-of-concept in the form of an interactive Python course developed by this author. First, it is described how such a course can be developed by a single instructor with a limited effort using widely available technologies and open-source components. Then, the results of evaluation of the course by 96 of the 110 students who actively learned with it for a time span of one semester are presented and discussed, showing their perception of such a form of learning in five aspects (speed of learning, effectiveness of learning, keeping their interest, pleasure of learning and satisfaction from learning) and the advantages and shortcomings of the course content and technology they managed to notice (helping to identify the quality factors that are of most importance to the students).

The received answers give support for the use of self-developed interactive courses in programming education, as averaging across aspects, there were 73% positive (including 37% very positive), 23% neutral and 4% negative (with only 1% very negative). The most important advantage for the students is the easy access to one’s own solutions of exercises completed earlier, the most often reported problem – the instructions and hints being not clear enough to complete an exercise.
Keywords:
Introductory programming education, on-line programming course development, automatic program assessment, open-source software.