Ethan Fast:

Do you hold a consistent mental model of the world? For many of us (though less likely for the readers of this blog), the answer is “no.” That’s troubling. It’s hard to be correct, if your world-view doesn’t even type check. [1] People are entitled to opinions. But hold them in a state of contradiction, and they’re wrong.
Though it’s easy enough to apply consistency checks, inconsistent world-views abound. I suspect it’s because people never learn to be consistent. Education under-represents logic and reason in the classroom. High school math class is the closest many people come to an education in rationality, and math is “just too abstract.”


  1. Fast does suggest that at a high enough level of abstraction, computer programming could be a useful learning experience to teach reasoning and logic. That is probably true. But, my limited experience in how computer programming is used for general education leaves me quite cold.
    Fast recommends codeacademy. I brief looked at codeacademy seems to be teaching javascript — a real programming language, and quite important in a number of areas, especially web-based applications running in a web browser. Teaching Javascript is a mistake in my opinion. Javascript requires learning a fairly complex syntax before ever trying to program anything useful, and before learning consistency, reasoning and logic.
    At Cherokee, my daughter’s programming class introduced the students to HTML. Also a mistake. HTML is a specification language and not a processing language, thus student’s will never learning process thinking which needs to be a core component of teaching logic and reasoning.
    And, neither of the above languages, nor most programming languages used professionally are appropriate.
    Almost all programming languages are syntactically difficult, where students will find themselves spending most of their time debugging faulty syntax rather than faulty logic and reasoning.
    In 1964 John Kemeny and Thomas Kurtz of Dartmouth invented a simple, syntactically trivial language called Basic with which to teach process thinking. I think Basic is far superior to most other languages being suggested.
    Another language being suggested, syntactically trivial, but a fully professional language with unlimited capacity to challenge even the most advanced is Scheme, a LISP language dialect.
    But, if one is suggesting that students be instructed in a programming language, one better have a solid focus on what the student should learn — and it shouldn’t be learning to program per se.
    Finally, the idea of current elementary school teachers teaching programming is quite absurd. I take a million to one that almost no elementary school teacher knows anything about programming or the rigor of process thinking that would be demanded to teach the topic.

Comments are closed.