6 ms·
I get especially mad when people suggest that there are some ideas that are just special, that only special people can get. Pointers and recursion are at the to
by makmanalp 10y ago
I get especially mad when people suggest that there are some ideas that are just special, that only special people can get. Pointers and recursion are at the top of this list.
Take Joel Spolsky, a person whose ideas I read and respect: http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html http://www.joelonsoftware.com/articles/GuerrillaInterviewing...
> For some reason most people seem to be born without the part of the brain that understands pointers. Pointers require a complex form of doubly-indirected thinking that some people just can’t do
Really? Here's my 20 dollar challenge: give me a person and I can teach them pointers. Pointers, referencing and dereferencing, null pointers, pointers to pointers, the whole deal.
The problem is the pedagogy. Learning a new abstraction and a new way of thinking takes time. It's easy to get it but really not /get/ it. You have to do a lot of examples. One on one with a person, with real time feedback. Until they internalize it. Many many many simple examples at first, and then examples of using it in a real world context. Then more. If you already know this abstraction, consciously or unconsciously, it's impossible to un-know it, and the reaction when someone is struggling is "I explained it as simply as I can and I don't know why they still don't get it". It's not like that. It's like basketball: you can explain how to shoot, but really the student needs to do it, and you comment while they're doing it.
- Eliezer 10y agoSome people get pointers immediately after one exposure before puberty. Not every student needs to practice. Some people, who maybe never came to your university at all, will never get linear algebra matter how much they practice. To say the distribution is unimodal is one claim. It's another matter to claim the distribution is narrow.
- ap22213 10y agoAbsolutely - I'm sure that a bit of innate talent can improve one's rate of learning, but 90% of the willing can do it. The best programmers that I've met just loved the art and science of computing, had respect for their craft and very high standards of quality, were undaunted or even motivated by new challenges, but most importantly, put in the necessary time. I doubt things have changed much since I went to college in the 90s, but back then, the ones that did well at CS either had been hacking computers since the Apple II or spending enormous amounts of time at the lab (or both). Also, when at the Microsoft campus in the 90s, it was not a coincidence that the most expensive cars were the ones that were in the parking garage the latest.
- slmyers 10y ago> The best programmers that I've met just loved the art and science of computing, had respect for their craft and very high standards of quality, were undaunted or even motivated by new challenges, but most importantly, put in the necessary time. This description doesn't conjure the image of a person unable to understand pointers.
- acbabis 10y agoPerhaps you're putting the cart before the horse. Did you play with computers a lot as a kid? Did it come naturally? For myself, I can answer "yes" to both. I suspect it's common for aptitude to come before motivation.
- chrismorgan 10y agoTo be sure, if you persist long enough, you’ll manage to teach more people these things, but I’m quite willing to assert that there are some people (I won’t say anything about percentages) that will simply never be able to grok some of these concepts under any circumstances short of substantial neural adjustment. (Even if I ignore the easy target of mentally disabled persons which I would easily win your $20 with.) Just like I will never be a marathon runner and never had the slightest chance of doing so, however hard I tried, because of biology.
- acbabis 10y agoI think it's meaningless to say that anyone can eventually learn X. Even if it's true, it's not really relevant. Suppose you're a prospective CS student and you ask your trusted friend/advisor/teacher if they think you have what it takes. Which is a more useful answer? 1) "Anyone can do it with enough guided practice" 2) "Yes, but based on your math grades you'll probably spend several times as much time studying as your peers"
- Kalium 10y agoThat depends a very great deal on what goal you're trying to advance with a useful answer. The former works towards encouraging the student to keep trying. The latter might help guide the student towards a different area where they might excel with lower time costs. Different people may have different opinions on what constitutes "useful" in such a scenario.
- pbhjpbhj 10y ago1) is more of a hypothesis whilst 2) [modified to "if you manage then you'll spend longer ..."] is pretty well known as a well tested theory for educators.
- threatofrain 10y agoI think statements like these brush off problems of learning difficulty as something to be surmounted with good pedagogy; incremental pain for incremental gain. But when you run a youth pedagogical program of any sort, you can see that the consequences of speed or intelligence aren't things you simply overcome with a great teacher and applied effort. You can see that the consequences of both fast and slow accumulates for years. The consequence of slow is that by the time you are 18 or whatever, you have learned fewer things. Sometimes the consequence of slow is that you simply don't even do X because of a rational consideration of opportunity cost. In the race of money and life, almost all tortoises and hares in our society feel the bite of debt and financial worry. It is meh strategy for the tortoise to hope that hares are lazy and arrogant. It is meh strategy to hope that the tortoise would receive high quality education where the hare would not.
- projektir 10y agoThis is likely, but our current methodology for assessing the fast and the slow is so atrocious that it's doing more harm than good.
- westoncb 10y ago> I get especially mad when people suggest that there are some ideas that are just special, that only special people can get. I think this is an important point. After working with concepts in enough domains you start to see they are all made up of the same kinds of things; when it seems like they aren't, you're likely missing some implicitly used concepts that you don't even know you're missing which makes learning this new thing seem fundamentally more difficult than other things. The way I think about why this would be (or would not be) is: are all concepts reducible to some small set of basic entities—i.e. are they all built up from some shared concept 'atoms'? Now, I don't have a way of giving a definite answer to that, just my experience asking this question over and over again while picking up new concepts, and my experience so far puts me in favor of these 'atoms.' For instance, are there any concepts that can't be broken down into sets of 'types' and 'relations' between the types? (or something along those lines) Could there be more significant barriers to people learning new concepts than limits to their intelligence? I've taught programming to a lot of people, and it's easy to see where they get caught up: they're doing fine, making progress, happy, excited, a little nervous; they make minor mistakes but quickly see their errors and it doesn't worry them too much. Then, they run into some difficulty that puts the question in their mind of whether they can really do this or not and you can observe their agitation increase. Typically they want to go do something else pretty soon after. If they are especially persistent they will face this scary situation and go back into it the next day—but more often they'll feel guilty about not going back to it for a long period, maybe do it once or twice after without much enjoyment or progress, and ultimately, quietly drop it. What I have never seen is someone run into a wall with some concept, persistently revisit it and work earnestly to understand, and yet still fail. That's what they fear will happen (maybe an evolved feature to prevent spending too much time on theories that are going to dead-end?), but it doesn't.
- irrational 10y ago"give me a person and I can teach them pointers" Yeah, I don't think so. I have a 16 year old son that still hasn't mastered multiplication beyond single digits. It's not for lack of effort. We have spent $10,0000+ private tutors in addition to the efforts from his teachers/school, but he just doesn't get it. He isn't mentally retarded or autistic or anything else (we've had him tested many many times both privately and by the school system). He just has a terrible memory and has a hard time putting things in the right order. I guarantee that you could not teach him something as abstract as pointers no matter how good your pedagogy is.
- soared 10y agoDo people actually learn multiplication beyond single digits? I know up to 12x12 and do math a few hours a day for work.
- Klockan 10y agoI am fairly sure that almost everyone with a cs degree can calculate something like 56 * 13 with a pen, paper and some time. The thing is that you can teach almost anyone to memorize a table which is why you can teach them to multiply single digits. But once you try to teach them how to follow an algorithm a lot of people just wont get it, which is why multiplying things they haven't memorized gets almost impossible for some.
- irrational 10y agoWell, he has never been able to memorize the multiplication table. But if you try to get him to solve 10 x 13 he just can't do it. But he can solve 3 x 3 with a pencil, paper, and his fingers or some manipulatives.
- Kalium 10y agoI firmly believe that every single person can learn any single concept in the world, given sufficient instructional time, resources, and contact. However... this should not be confused with a belief that every single person can learn any concept in an economically scalable manner and useful period of time. In a world of limited resources, this can be a very important distinction.
- sytelus 10y agoI don't think the question is whether a human can learn pointers or not but rather how much effort one has to put to get to the mastery level. From various physical tasks such as swimming, running, bicycling or mountaineering it is well known that few are born with inherent advantages such as metabolism, large lungs, muscle type, carb absorbtion, heart strength and so on. These people typically put in lot less effort and advance lot more faster than others who didn't had those advantages. For running marathons, you can find lots of examples where one has to put enormous effort over extended period of time just to barely succeed while others are competitive with little effort while starting with same initial abilities. It is however contentious if these analogies with developing physical abilities is applicable to mental abilities, primarily because brain is understood be far more complex, malleable and elastic. Even if person doesn't understand one set of abstractions such as pointers, it is likely that they excel at others such as recognizing perfect shade of color, musical composition or designing game levels. Instead of everyone trying to understand pointers, I think people should find their sweet spots, especially the one that they enjoy.
- wutbrodo 10y ago> Even if person doesn't understand one set of abstractions such as pointers, it is likely that they excel at others such as recognizing perfect shade of color, musical composition or designing game levels. Instead of everyone trying to understand pointers, I think people should find their sweet spots, especially the one that they enjoy. This sounds like the assumption that lack of predisposition to one field is correlated with skill in other fields (eg, "X is not a math person so he's likely to have some talent in lit or the arts). I thought I recalled reading that what evidence there is doesn't support this: and that in fact those who have a knack for, eg, math are more likely to be good at other fields too. (This of course isn't talking about time spent practicing each field, which is rivalrous, but we're talking about "inherent advantages" here).
- danieltillett 10y agoAbsolute claims about humans are always false [1]. 1. Yes I know I just made an absolute claim about humans :)
- MustardTiger 10y agoI have two questions about your challenge. How many times am I allowed to give you people that you can't teach pointers to? And how rich are you?
- warlox 10y agoIt's very easy to find people you can't teach <insert concept here> to. All it requires is a trip to the residential care home.
- arjie 10y agoThat's if you find the $20 worth more than using the opportunity to examine the hypothesis that there is some special ability to understand pointers, something that may be missing even among otherwise fairly intelligent people. What he's giving you is a tool to test a hypothesis you find so valuable you read far enough down a page discussing it till you found a comment you wanted to reply to. So, is the $20 worth it? Or would you rather be closer to the truth on the hypothesis?