multipart-message nevyn bengtsson's blog

featured articles 🦄, about, archive, tags

Teaching Ruby to High School Girls

Teaching Ruby to High School Girls

andymatuschak:

Sarah Mei bravely stood in front of a class of high school girls and helped them make a pixelly Etch-a-Sketch. The awesome part? They loved it.

Her detailed transcript of the experience is enthralling. She has some very clever insights about teaching this stuff:

Ruby purists may protest that I didn’t talk about objects, or classes, but for the ones who keep going with programming, they’ll get that soon enough. In this class, I just wanted them to have fun and see what they could do with code. […]

I realize now […] that you can’t be too fussy about style. If they want to skip indentation altogether and give all their variables one-letter names, that’s fine, as long as they’re still excited about what they’re doing.

If they keep going with it, they’ll realize that there’s a reason you indent and give your variables descriptive names, and they’ll start doing it. But […] nothing ensures that they drop it like a hot potato better than harping on them to write maintainable code.

Sarah’s totally got it: kids have to be inspired before they’ll care.

When I was a kid, I got drawn in by the prospect of making games—that’s really common, right?—but games are a tricky inspirational goal because they’re really freaking complicated to make.

If it’s just a matter of inspiration, though, a student could start by modding existing games or building them through drag-and-drop tools. If the kid is really interested, he’ll outgrow that stuff and find himself with a real hunger for knowledge.

Back in high school, we had to do 50 hours of “CAS” each year (“Creativity, Activity and Service”); S was my favorite, because I could hold courses in stuff I loved, like programming, gnuplot, and other nerdy stuff. It was so great! I ‘tricked’ people who didn’t know computers and never got along with them into learning and successfully using a frickin’ command line unix tool! Mmm, gnuplot…

I held one course in QuickBASIC, to teach basic programming, which which I made all my friends attend. QB is fun to experiment with because of the built-in turtle graphics. My last task I gave them was to spend the entire class drawing a picture. One of them managed to draw a whole scene with colors and animation and everything, which was a very proud moment :)

Tagged