Apparently, the distribution of marks in introductory courses to programming looks like this: How come? Some people just get it and some don’t? A failure of teaching? See the discussion at Mik’s blog. I don’t necessarily agree that this is caused by people falling behind and not being able to catch up (although that is probably also a problem).  If that was the case, you would probably see a skewed single peak distribution, as one of the commenters suggest. Rather, I think the either/or explanation is the right. Now does that mean people in the left hump will never be able to learn, or are doomed to a life of poor understanding of programming? I think not, but how to move[…]