Thursday, October 22, 2015

rationale for a computer literate society (Mark Guzdial)

Requirements for a Computing Literate Society slides by Mark Guzdial. Mark's blog is here. I particularly liked slides 6, 7, 8 (rationale for teaching of abstract processing), 9, 13, 14 (Lake Wobegon effect: we don't know as much as we think we do), 23, 25, 27 (media computation as a motivating path to learning computer science) and 45 (conclusion)

Alan Perlis argued that all students should learn to program because:
  • Computer Science is the study of process. Automated execution of process changes everything including how we think about things we already know (slide 6)
  • The purpose of a course in programming is to teach people how to construct and analyze processes ... A course in programming is concerned with abstraction: the abstraction of constructing, analysing and describing processes ... The point is to make students construct complex processes out of simpler ones ... A properly designed programming course will develop these abilities better than any other course. (slide 7)
The Power and Fear of Algorithms. The Economist (Sept., 2007) spoke to the algorithms that control us, yet we don’t understand: Credit Ratings, Adjustable Rate Mortgages, Search Rankings. C.P. Snow foresaw this in 1961. Those who don’t understand algorithms, can’t understand how the decisions are made:
“A handful of people, having no relation to the will of society, having no communication with the rest of society, will be taking decisions in secret which are going to affect our lives in the deepest sense.”