DIGITAL LIBRARY
TEACHING ADVANCED PROGRAMMING WITH COMPETITIONS
Webster University (UNITED STATES)
About this paper:
Appears in: ICERI2022 Proceedings
Publication year: 2022
Pages: 2219-2223
ISBN: 978-84-09-45476-1
ISSN: 2340-1095
doi: 10.21125/iceri.2022.0562
Conference name: 15th annual International Conference of Education, Research and Innovation
Dates: 7-9 November, 2022
Location: Seville, Spain
Abstract:
Keeping students engaged is a challenging task. Instructors want assignments that allow students the opportunity to enhance their knowledge while being interesting enough for them to complete. In computer science courses, such as programming courses, students must learn the fundamental concepts and the necessary programming skills to apply them effectively. Therefore, assignments must be designed that encourage the repetition of programming skills and keep students motivated.

The intention of this work is to discuss methods I have utilized in my programming courses and discuss the effect of each. Specifically, this work includes the following:
- A learning method called competitive programming that uses competition during an assignment to increase student motivation; thus, keep them engaged. I believe that competition is an essential component of human nature, whether learned or generic. Competition, if used appropriately, can encourage students’ engagement.
- A detailed description of a project for an introductory data structures course that combines competitive programming with theoretical concepts.
- A pedagogical evaluation of using a competitive programming project in an introductory data structures class.

The rest of the paper begins with background information and a description of competitive programming. Then, detailed information is provided in Section III on a competitive programming project for a data structures course.
Keywords:
Competitive programming, computer science education, programming, data structures.