Learning from wrong and creative algorithm design

  • Authors:
  • David Ginat

  • Affiliations:
  • Tel-Aviv University, Tel-Aviv, Israel

  • Venue:
  • Proceedings of the 39th SIGCSE technical symposium on Computer science education
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We all are aware of the relevance of examining a task from diverse angles. We also are aware of the potential relevance of learning from one's mistakes. Yet computer science (CS) textbooks and teaching materials fall short in embedding these two notions. In this paper, we present an approach of elaborating divergent thinking in algorithm design, while capitalizing on erroneous solutions. Using a collected set of non-routine algorithmic tasks, we developed and applied a scheme of class activities, in which initial faulty solutions (due to novice tendencies) are carefully examined, and their falsifying inputs and characteristics are used for creative reasoning that yields fruitful outcomes. We present and illustrate our activities, refer to their cognitive aspects, and describe our experience with applying them in (an Introduction-to-Algorithms) class.