I had actually already finished my Master’s in Linguistics and was proficient in LISP because I specialized in natural language processing but the lesson was still applicable. He had me take a sentence and write a small program to reverse the string in Turbo PASCAL and then build upon that, so I could do simple data processing tasks myself.
Even now, as an IT professional, I know my limits. I can write some pretty mean data processing routines. I also know that when I have to call in the big guns, I can usually ask the right questions. More comforting to the programmer, I’m sure, is that when he gives me an estimate of work and a proposed deadline, I understand why management can’t have it in half that time (read as Death March).
Jeannette Wing, a professor of computer science at Carnegie Mellon University, has argued, “Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing and arithmetic, we should add computational thinking to every child’s analytical ability.” And UC Berkeley EECS department chair David Culler said in an email, “We lag behind many leading universities in putting computing on par with math and English.”
The article continues to emphasize the value of including training for liberal arts majors, while acknowledging that some feel the requirement would seem like vocational training.
Personally, I’m with Prof. Wing and this is something that needs to be taught much earlier than post-secondary levels of education. This is not a new idea – programming has been studied for use in primary education since the 60s. Why is it, I wonder, that when you do a search on Google for developing critical thinking skills in young children, the prominent results don’t include more technology?