News for hackers. Stuff that matters.
Re:Why did we ever think a student's first programming langu... by josephg on Sunday June 27, 2021 @02:24AM (#27649111)
I've spent about 2.5 years teaching programming. Students really do seem to have some innate programming difficulty slider, which absolutely matters. Some of my students worked their absolute butts off to learn programming, and asked for help constantly (which I gave gladly). And they still barely scraped by.

Other students seem to learn programming extremely easily. I would show them something one day, and the next day they've already used what I showed them in their code.

I'm open to the hypothesis that its my fault that some of my students failed to learn programming. I certainly felt terrible for them when they worked really hard and still failed. But I don't think its all me. I certainly can't take equal credit for the students who did very well. My star students seemed like they barely needed me to teach them anything at all.

And for what its worth, the perspective that talent doesn't matter is an awful thing to teach struggling students if its wrong. Students hear that as "If I struggle at programming it must be my fault". I don't think it is. I think some people just have brains wired to make programming easier or harder to learn. There's no shame in encouraging some people to pick a different career. If programming really isn't right for someone, the sooner they swap to something else, the better.

Re:Why did we ever think a student's first programming langu... by benrbray on Sunday June 27, 2021 @02:53AM (#27649242)
I don't disagree with a lot of what you said. Practically speaking, some students are simply "behind" where they should be, at it might be too much effort to catch up, so the pragmatic choice is to pursue something else. I guess it's usually that I attribute their struggle more to external factors than internal factors.

* The student might have other stuff going on in their life at the time. Heavy course load, personal drama, etc..

* The student might have other interests, so they don't devote as much time to studying as they should.

* The student might not yet have had a good math education, so their abstract reasoning skills lag behind. I think it can still be learned, but someone in a college compsci course just doesn't have time to catch up.

I've been an undergrad/grad TA as well as a tutor for high school students in math/programming. My own experience tells me that learning is very "path-dependent". Students will be more receptive to my way of teaching if their background is similar to my own. Part of my job as a teacher is (was) to try to recognize the gaps in their background, but sometimes I do have a lot of trouble understanding what path a student took before coming to me, so it's harder for me to help them.

Re:Why did we ever think a student's first programming langu... by watwut on Sunday June 27, 2021 @03:18AM (#27649362)
I was the one who appeared to learn it super fast. In retrospect, I had comparatively large amount of preexisting knowledge - my parents shown me very basics (in basic) before and we had some programming games.

And looking at my kids, this stuff matters a lot. A kid that comes in with complete zero experience has massive disadvantage against one with some experience.

Re:Why did we ever think a student's first programming langu... by swiftcoder on Sunday June 27, 2021 @04:06AM (#27649590)
This is very key. By the time I entered undergrad CS, the kids who had owned computers growing up, and played or even modded videogames, had a massive starting advantage over the ones who hadn't.

The entire first year of CS courses was mostly there to instill fundamental computer skills (not CS skills!) in the ones without that preexisting knowledge.

Re:Why did we ever think a student's first programming langu... by josephg on Sunday June 27, 2021 @10:19AM (#27651756)
I haven't seen any data on video games helping with programming. But having a strong math background definitely seems to help. I don't think its knowledge - there's something about how you internally model a system that math teaches you. Approaching programming with the same mindset makes learning much easier.

I read a paper over a decade ago talking about this. They gave a survey to freshman students and looked for correlations with their end of semester marks. They found the students who assumed there was a consistent set of rules underpinning programming (even if they didn't know what those rules were) dramatically outperformed the students who thought the computer would "work it out somehow".

Re:Why did we ever think a student's first programming langu... by swiftcoder on Sunday June 27, 2021 @01:13PM (#27653279)
Video games definitely help develop overall computer literacy. The basic computer skills that are missing in folks who didn't grow up around computers are so foundational they might surprise you: - Filesystem basics, aka "where does a file go when you save it, and how do you find it again?". Do you know how many people just save everything to the documents folder, and scroll through the list of every file they've ever accessed every time? - Window management. I clicked on something, and now my document has disappeared. Help! - Drag-and-drop. Particularly on a laptop with a trackpad, this requires a fuckton of coordination.
Re:Why did we ever think a student's first programming langu... by watwut on Sunday June 27, 2021 @02:00PM (#27653689)
Modding video games is real entry point. It is low key programming. But also how to edit files, filesystem, most importantly that you can and no one will yell at you. Basic computer literacy, simple administration are also something kids without free access to computer lacked.

This stuff is not taught here. You either know it or are seen as lost cause.

Even more importantly, I had those games that introduced you to loops, ifs, variables, programming in general.

Re:Why did we ever think a student's first programming langu... by eyelovewe on Monday June 28, 2021 @09:22PM (#27670549)
I recall struggling in algebra as I didn’t follow the particular process that the teacher went through, while some friends seemed to readily follow this same teacher, and yet upon one on one discussion, I had no problem comprehending the same.