Teaching how to code is broken
121–130 of 258 posts
Re: Teaching how to code is broken
#122The lessons are based on building a simple role-playing game. They try to quickly get to something to make the students feel, "I wrote a program!". I try to get them creating a screen, displaying a little data on it, and adding a button that makes a change they can see on the screen.
However, a big problem is that this approach avoids a lot of good architectural decisions. I don't want to spend the first twenty lessons describing abstract application architecture. So, as the lessons progress, and students ask for more-advanced features, I inevitably need to do a big series of refactoring lessons - which loses a good percentage of the students.
Another struggle has been with the language and tools changing over the years. I really wish people stopped using the lessons I wrote in 2014, with Windows Forms, .Net Framework 4.5, and Visual Studio 2013. Most of my support has been for version issues. Unfortunately, I don't have the time/energy to re-do all those lessons and videos.
Re: Teaching how to code is broken
#123I have always struggled with how to advise my friends & family on this path of learning. It seems like everyone wants to be a WFH developer these days, but I don't know how to enable them to succeed on that path. "Go build something you want to build!" is something I keep reiterating (as does this article). But most don't seem to be interested in that for whatever reason (presumably because its fucking hard). Maybe I…
I feel like I have a reasonably good track record of helping people get into tech (and was myself helped) and I'd note two things I've found very helpful: 1. It is very useful to let people know that the first ~500 hours of programming are the worst (not unusual for hard skills). I've seen now successful developers reduced to scream crying by the feelings lack of agency and overwhelming complexity during this period.…
Re: Teaching how to code is broken
#124I must share the very wonderful video by Seymour Papert on teaching LOGO. He makes a similar observation: imagine if we taught people dancing by sitting them at a desk and explaining all the steps to them, making them memorize them and write them down, but they were never allowed to actually move or try the steps. We find when teaching people a language for example that immersion works very well. So Papert suggests t…
Re: Teaching how to code is broken
#125Earlier quoted context omitted.
> This is especially important in CS especially when boys are encouraged from a young age to do "techy" and "geeky" things in ways that girls usually aren't. Just be aware that this is not everyones experience. Many places boys are held back and girls are pushed forward. And then afterwards boys gets told they are somehow "privileged" and would never be were they are if it wasn't for "male privilege". Obviously this…
What places?
Re: Teaching how to code is broken
#126Earlier quoted context omitted.
> 1. Girls in STEM: society needs to quit telling people "math is hard, tee hee" and quit shopping in the Pink Aisle at the toy store and reinforcing that culture. Buy your kids Lego and Raspberry Pi circuit kits and see what happens. Girls in STEM =/= Girls becoming professional programmers. There are plenty of girls in STEM fields such as medicine, biology, geology, physics, Math, civil engineering... The fact that…
> Girls in STEM: society needs to quit telling people "math is hard, tee hee" To me, the very existence of "Girls in STEM" groups is sending a weird message to girls (and I’m apparently not the only one to think that). Something along the lines of “sure you can do STEM, you’re just not good enough to do it the regular way so we created a group just for you”. Honestly that’s the message a lot of diversity initiatives…
Re: Teaching how to code is broken
#127Earlier quoted context omitted.
Yes, learning is much easier if you have motivation. How do you motivate kids, if they rather play games rather than coding (and they even ignore in-game scripted coding such ad Minecraft or Roblox coding)?
Try a game like Factorio or Satisfactory. Even just Minecraft can be good enough to train their problem solving and critical thinking skills. They don't need to start with redstone to learn to code. They should play the game and naturally realize that redstone is a way to solve their problem (like making an automatic sliding 2x2 door) and then solve it. I feel like those skills will take you much further in life beca…
But.... I can finally program.
Re: Teaching how to code is broken
#128Earlier quoted context omitted.
I've attempted to teach multiple family members/friends over the years "how to code", and they give up almost immediately. They "just don't get it", and I'd argue one needs to seriously find enjoyment in building things, and knowing how long things can take, to get started.
I'm not trying to level this against your friends and family, just an observation that I've been meaning to share, spurred by "just don't get it": When I was in community college I had to take "Critical Thinking" as a pre-req for Symbolic Logic. We spent the first 1/3 of the class, 8 weeks, analyzing truth statements, basically and, or and not. I was bored to tears, but attendance was mandatory, so I got to see how p…
Re: Teaching how to code is broken
#129I have opinions™, but mostly agree with this article. Most intro coding classes and course materials read more like a glossary than a lesson. This contributes (rather directly) to the failure to retain a diverse student base in intro CS program. We've gotten a lot better at recruiting CS students from underrepresented groups (women and BIPOC chiefly), but numbers drop off quickly[1]. Studies in math education have sh…
Do you know of any comparative studies with other countries? Or is this a predominately US/Canada issue? For example, do BIPOC students in Botswana drop out at similar rates? Do non-BIPOC students in Taiwan experience similar drop out rates? What are the classes and course materials like in these countries in comparison to the US/Canada? What about drop out numbers from international students? For example, do Polish…
Re: Teaching how to code is broken
#130Earlier 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.
Yes, learning is much easier if you have motivation. How do you motivate kids, if they rather play games rather than coding (and they even ignore in-game scripted coding such ad Minecraft or Roblox coding)?
But you will do better teaching-wise if you do find something that has intrinsic motivation, not turning it into a chore.
It just might not be the right time! They've basically got until they are 18-20ish to decide to get into it. The programming books my parents gave me after 8th grade never interested me. The 11th grade programming class didn't either. The junior year of college tangentially-related course where I was like "oh I could write a program to help with this homework!" That did the trick for me.
So just keep trying, see if you can find programming-related aspects of other hobbies. And just try to focus on them learning things around those hobbies or obsessions, even if it doesn't seem to have a practical application. Get in the habit of going deep on subjects and practicing learning.