A practical strategy for teaching algorithms (CS1) to beginners. (2017) - Guimarães, Marcelo De Paiva; Gnecco, Bruno Barberi
Learning algorithms is a challenging task faced by novice computer science students. These students are expected to become proficient in the basics of programming and logic, but the failure and dropout rates in the introduction to algorithms courses are usually high. This paper aims to present a practical strategy for teaching algorithms to beginners in computer science, addressing issues such as teaching strategy, student engagement, and institutional planning. This strategy was developed and implemented over a decade of teaching algorithms in a variety of contexts (bachelor degree, information technology, and major in computer science). During this period, a pass, failure, and dropout rate survey of 603 students was conducted by the same instructor. The analysis of these data and reflections about the teaching strategies are presented.