6 ms·
I used to teach the first CS course at both Harvard and University of Washington. I didn't have this issue at Harvard, but at UW there was definitely a bimodal
by jseims 15y ago
I used to teach the first CS course at both Harvard and University of Washington. I didn't have this issue at Harvard, but at UW there was definitely a bimodal distribution in abilities. Roughly half the students had what I feel is a more visual / associative way of thinking vs. the focused structure you need to program.
The concept that the "non programmers" could never understand was the abstraction of functions. Like:
foo(a) {
// stuff
}
foo(b);
would confuse them because they'd get hung up on foo's parameter declared as 'a', but called with 'b'.
- Raesan 15y agoI took a few CS classes at the University of Washington in the 08–09 academic year. The intro CS classes had recently been redesigned [1] to be more effective. Anecdotally: I talked four of my friends into taking one or both of the intro classes (split evenly between science/non-science majors), and they all did well and really enjoyed them. I think how programming is taught at colleges is definitely a fixable problem. [1] http://www.cs.washington.edu/homes/reges/sigcse/ http://www.cs.washington.edu/homes/reges/sigcse/
- dpritchett 15y agoWhy not use explicit function parameters then? def count_orange_slices(number_of_oranges): return number_of_oranges * 8 size_of_my_orange_stash = 10 count_orange_slices(number_of_oranges=size_of_my_orange_stash) >> 80