If you decide that learning computer programming offers students much needed critical thinking (and job) skills, then the next question is which language(s) should be taught to which students. Computer programming changes, so any opinion I offer will be bad advice in a few years. What I offer below are my views at this moment, and they reflect my biases as a programmer. Suggestion One: C It's not flashy, it's not trendy, and it isn't the first choice of most programming courses. Yet, C is the language of operating systems, programmable controllers, and a lot of portable logic. When you learn C, it's easy to transport those skills to almost any modern language. C compilers are free, there are many integrated development environments (IDEs), and lots of resources are available for learning. You can code C in any text editor, too, and compile from a command line. For OS X and Windows, I suggest using the tools from Apple and Microsoft to learn C, C++, and either...
technology • teaching • writing