Hacker News new | ask | show | jobs
by parm289 4568 days ago
At the high school level, I think your analysis is generally correct. Most students who aren't already interested in computer science will have the same attitude toward a programming course as they have toward foreign language courses.

However, in college, the paradigm is different. At my university, programming is taught from two distinct perspectives: theoretical (as in the computer science major) and practical. I'm in the business school, and we have courses that teach VBA, SQL, Python, and Matlab. These courses focus on using these languages as tools to solve problems and gain competitive advantages through optimization, efficiency, and data analysis (think of Steve Jobs' bicycle analogy). For example, one course teaches Python and Matlab in the context of text analytics -- students use Python's text handling capabilities to parse text and collect data, then use Matlab to visualize the data and detect trends. VBA and SQL are taught together as tools which increase productivity in business, where scripting Excel can save countless man-hours and being familiar with databases can make interfacing with data analysts and IT people easier. These courses are taught with a distinct "hacker" or "scripter" mindset.

Students inevitably have difficulty with syntax, logic, etc but get past that with practice over the course of the semester. Programming is perceived by students as a problem-solving tool, like a TI-84 calculator helps them solve math problems and graph functions. They will not be creating enterprise applications or studying theory, but learning to script measurably enhances productivity -- and that's where the value is.

(Anecdotally, I'm not a programmer but am familiar with Ruby as well as the languages listed above. While doing an academic research project this semester, knowing Ruby made it trivial to quickly organize and manage a trove of 10,259 text documents. Without programming knowledge, that task could have taken quite a few hours.)