Randomness Conceptions in Programming
David Ginat · 2006
Randomness is a basic element in mathematics, engineering (EE) and computer science (CS). Students are introduced to the notions of random choices and random generation already in the very early courses. They repeatedly apply and utilize the programming random function in diverse occasions, and they learn of further appearances of randomness and probability in more advanced courses. How do students conceive the term “at random”? Do their conceptions suite the way the term is used in programming? Do they design suitable random selections and generations in their algorithms? These questions, and related ones were not yet studied by CS/EE educators. We address them here, through student answers to two instructive programming tasks. Student conceptions are displayed and discussed, and corresponding suggestions are offered for educators.