6 ms·
Anecdotally, a lot of people do fine in the 101 class up to the point where functions (imperative paradigm) are introduced. Thats the threshold for the level of
by dc-programmer 4y ago
Anecdotally, a lot of people do fine in the 101 class up to the point where functions (imperative paradigm) are introduced. Thats the threshold for the level of abstraction where people start feeling frustrated. In college, I tried help some of my friends who got stuck here but did not have much luck helping them build the right mental model.
- AnimalMuppet 4y agoImperative functions are something people can't grasp? I... um... <boggle> In math, we introduce functions all the time. I define f(x) to be whatever is handy for a particular problem, and then I work with f. By any chance, do these people have much of a math background?
- dc-programmer 4y agoNothing past calc I I’d reckon. I think one of the issues was how function calls can seem arbitrary at first (esp in python). You have imported functions, user defined functions, built in functions, etc. so when students see a function call, they aren’t confident in knowing where it came from, causing distress. Most students really dislike anything that appears arbitrary which I think plays into this. One pre-med student I knew despised math after being taught 0!=1 because it seemed seemed completely made up to him and broke established rules. Part of the onus falls on instructor to clear up areas like this (e.g. explain the cardinality of the set containing just the empty set is 1, 0!=1 allows for many formulas to be expressed tersely, etc). The other component of this is that the students who dislike ambiguity self select out of the program.
- JonChesterfield 4y agoWhat do you mean by 0!=1 here? It reads as the integers zero and one are not equal, which is true. I'm struggling to guess what established rules that could break.
- rmadriz 4y ago> It reads as the integers zero and one are not equal, which is true That's not what 0!=1 means in math, the ! means factorial, which is to multiply by decreasing positive integers. Here's the definition: n! = n x (n -1) x (n - 2) x . . . x 2 x 1 So, for people starting to learn calculus/math, being told that 0!=1 makes no sense
- JonChesterfield 4y agoAh. ! for factorial was not an obvious parse. I suspect it has alternative meanings in mathematics as well.
- 3836293648 4y agoAnd that's why we need spacing. 0 != 1 is very different from 0! = 1
- dc-programmer 4y agoRight I forgot my audience