Reaction for: "Instructional Strategies for Novice Programmers" by Jon

I liked the approach that this experiment took in attempting to help people learn how to program. I think that a major stumbling block that hurts people a lot when learning how to use computers is their lack of a big picture. Personally, I have a much easier time dealing with any problem if I understand the context in which it rests, and the general concepts involved. I think that programming is fundamentally different enough from a lot of other educational subject areas that it makes it very difficult for people to get a good global grasp of it, which gives them a lot of trouble learning it.

This article also brings up the point of how frustrating computer programming is. The exactness required to get anything to work, and the consequences if you are a little bit off makes it very difficult and frustrating. While you can BS your way through an english paper, or get partial credit on a math test, getting anything to work in a computer program takes a ton of effort. So, is there anything that can be done to alleviate the difficulty in this, or is it just a fact of computer programming that it is extremely difficult and frustrating?

I would like to think there is a solution, but it seems that the ideas presented in the article try to build up the students' understanding so they are capable of tackling the problem, rather than working around the difficulty. So, perhaps that is just how programming is, and it is just a rigorous mental exercise.

However, like any hard exercise, it does pay off. I found it very interesting the hypothesis that experience in computer programming helps you with other, non-computer related tasks. It would be interesting to see further studies on what sorts of problems or thought-processes computer science strengthens most. I would assume they would be areas of logic and problem solving, but perhaps there are others.


Reactions


Matt C:

I think one of the things that really turned me on to Computer Science was the fact that I was able to see my results right away. I knew whether I was right or not, and it wasn't based on the opinion of someone else. Sure, I may have made mistakes somewhere along the way in terms of design or coding conventions but the program worked and it was something that I had done. Other disciplines give assignments that may help with one final project, and the satisfaction of the course comes at the end. In CS, I create something that is my own every time I program, and that is a great feeling. So while this is sort of rambling, my point is that the exactness of programming allows me to get my feedback immediately and objectively instead of the subjective view of the teacher when they grade it a week later. For me personally, this makes the difficulty worthwhile.


[BACK]