Live data from Hacker News

Teaching how to code is broken

neil.computer

131–140 of 258 posts

Re: Teaching how to code is broken

#131
post #78

Earlier quoted context omitted.

E'ybody wants to be a bodybuilder, but don't nobody want to lift no heavy-ass weights. https://youtu.be/4UlgXIL0-3g?t=10

I know it's a pithy saying, but is it true? People tend to report the actual lifting of the weights as pretty pleasurable. It's the whole supporting lifestyle grind of consistently making it to the gym, only and always eating food whose ingredients you have weighed, etc. where you lose most people.

> People tend to report the actual lifting of the weights as pretty pleasurable.

well yeah, those are the people who are actually lifting the weights. the rest of us get sorted into the "don't want to lift no" category

Re: Teaching how to code is broken

#132
post #47

Earlier quoted context omitted.

Any teaching, training, has to hook with the experience of students. Otherwise, it will lead to cramming, etc; that's what we see in grade-driven teaching. You are doing a great service by using the client data to solve "mini-problems" of your students.

> grade-driven teaching I've never understood the modern theory that one can master a subject yet not be able to answer questions about it.

I think you've got that backward. I think parent poster is complaining about teaching methods where the belief is that "answering questions" -> "mastery." "Grade-driven teaching" here refers more to the "all we're gonna do is give you homework and a test." It's like industrialization of teaching - no mentoring or individual conversation, just tests and reading material. When you've got 1 teacher and 20-40 kids, it's about all you can do.

Lots of passing of tests from short-term memorization that's then promptly forgotten.

Re: Teaching how to code is broken

#133
post #71

Earlier quoted context omitted.

Yes, I remember back in the day the girls would always try to come into the computer lab to play video games. My friends and I were always like, "GET OUT! WE HATE WOMEN!" Then they left. The girls wanted to learn how to code so badly, but we wouldn't let them. My friends and I were getting lots of sexual attention from women, but we thought that was boring, and preferred to spend our time alone on computers. The girl…

Is this GPT-3? It looks like it is.

It's a parody of the ridiculous notion that geeky men try to keep women out of their hobbies. Reality is that geeky men are practically gagging for women to share their interests.

Re: Teaching how to code is broken

#134

My approach is to employ folks with enthusiasm. If they're teachable, they'll figure out whatever pile of tools they get thrown into on the first task. Then they'll have some skills and the next task will seem less daunting. Of course some mentoring is useful. But just the stuff that's pertinent to the task at hand; concrete help that gets them moving forward. Because, somebody is paying for results. And because prod…

Have you actually been through this before ?

I ask because my experience wasn't the same so I'm interested in other perspectives.

One experience that jumps to mind right away - a few years back I was in charge of mentoring a group of interns. The thinkering/enthusiastic guy was smart and reminded me of myself at that stage - but I was a terrible employee at that point and it took a lot of failing to get productive, and this guy had all the same faults - overcomplicated things, didn't focus at task at hand, wasn't paying attention to requirement details... all this made him unreliable and a pain to work with.

There was one guy in the group who was average capability/enthusiasm but was hard working and focused. Wasn't the fastest to figure things out but if I left him with a problem I could see he put effort and tried to pay attention.

Re: Teaching how to code is broken

#135
post #36

(Disclosure: I do corporate training (Python and Data Science) for a living.) I generally don't teach coding to newbies, so a lot of the coding I teach is correcting poor mental models and teaching features (somewhat) unique (or different) in Python. My best Pandas courses have been when the client opts to use their data for the course (instead of my canned data). The students are already subject matter experts with…

I always thought the best way to learn programming is to find a program you want to create, and then figure out how to make that happen. This is still how i learn (most effectively) today. If i want to learn a new language or something, i write something that i always wanted to write in it anyways. That way it doesn't get boring. I think what you're describing might be similar in that canned-data is not interesting.

This is true. You do have to watch for the "adult piano beginner" syndrome, though.

I'll explain: many piano teachers won't take adult beginners, purely because they have unrealistic ideas of how good they're going to be. They want to play a Chopin Etude or the Goldberg Variations or a Brahms Intermezzo, and don't want to spend time struggling with Clementi.

Well, sorry. You won't be that good for a long, long time, if ever. It could be that some beginning programmers also have wild ideas of doing a game as good as GTA, all by themselves.

Re: Teaching how to code is broken

#136
post #36

Earlier quoted context omitted.

I always thought the best way to learn programming is to find a program you want to create, and then figure out how to make that happen. This is still how i learn (most effectively) today. If i want to learn a new language or something, i write something that i always wanted to write in it anyways. That way it doesn't get boring. I think what you're describing might be similar in that canned-data is not interesting.

But you need some concept of what kinds of problems are solvable with a computer before you could really be inspired to program one. And more than that, you need to have a concept of the difficulty of a given problem for a beginner or expert. Obviously a beginner will be wildly off, but probably needs some concept of the level of difficulty. For example, lots of people have motivation to write a game. But few have th…

> But few have the level of obsession to follow through with it.

If the goal is to release a complete product, then you're right that that's a problem. However, if the goal is learning, half a game is a great way to learn about a variety of systems and how to program for them!

Re: Teaching how to code is broken

#137
One of the paradoxically oddest and best ways I've seen programming taught was from a games programming class I took in high school. We were tasked with transcripting a game (custom engine) from a booklet with its code already written. So it was more-or-less just typing what was in the book. Thing was, the code was filled with typos and broken code so that if you copied it verbatim, it wouldn't work.

I'm not sure if that was intentional, but as you'd go through the book and correct typos, you'd kind of just... pick up how to code. It almost became a reflex to understand and correct the code whenever you saw any errors. Most of us in the class came out of that with basic coding skills and we didn't need to go the path of normal exercises you'd see in most programming classes.

Re: Teaching how to code is broken

#138
Pretty much our take at Scrimba. Except the most self-motivated students the content needs to take small steps, be relevant, be engaging and have low barriers to getting your hands on the code. So many students say they get an AHA moment with this approach.

Re: Teaching how to code is broken

#140
post #47

Earlier quoted context omitted.

Any teaching, training, has to hook with the experience of students. Otherwise, it will lead to cramming, etc; that's what we see in grade-driven teaching. You are doing a great service by using the client data to solve "mini-problems" of your students.

> grade-driven teaching I've never understood the modern theory that one can master a subject yet not be able to answer questions about it.

/watches straw man fall over without putting up a fight.

Would you rather work with someone who added a major subsystem to one of your compilers for fun or someone who had never coded but could recite the ISO standard by heart? Who believes the former person “would not be able to answer questions about [the subject]”?

If measurements tend to become targets over time then the goal of “develop expertise” measured by “pass a test” shifts to a goal of “pass the test”, and the test is limited to what you can ask hundreds of students in a couple of hours, and they’ve seen practise papers and last year’s papers and you can’t talk to them, and you can’t see them work or the results of their work.

Is that then a good way, to develop and validate their expertise? Is it the best available way?

Post reply on HN