Laura Blankenship teaches computer science at the Baldwin School, a K-12 all girls school in the Philadelphia suburbs. I've known Laura for a long time, and as we share a similar Literature Phd-to-tech-geek background, I have tons of respect for the work she now does). I've wanted to talk to her about my research project for Mozilla as I think she has some interesting insights into getting girls interested in programming.
If Scratch is met with such disdain, I was curious to hear about getting girls to work on the Web.
The notes of our talk follow...
The importance of grade level: "8th graders hate everything," Laura joked, in response to my questions about her class's experiences with Scratch. She noted that the students had complained that they already knew everything they'd need to know about teach. So in lieu of Scratch, she assigned the 8th graders some things from the DS106 Daily Create -- assignments that would involve manipulating photos and text with something like Photoshop. The students were stumped.
How comfortable are middle-schoolers with the Web?: One assignment for the 8th graders had required students manipulate a template for a Google Site, and many didn't realize there was code involved. But what was interesting, she noted, was that these particular students hadn't ever been taught HTML or CSS -- something that she now teaches beginning with 6th graders. "They get it." The 6th graders are tasked with building websites: they get to do some research, evaluate other websites that are out there on their topic of choice, make a banner for it (i.e. learn some basic photo editing), learn HTML and CSS basics. The class then shifts to using Google Sites for Web-building, which does use a WYSIWYG editor, but the students do tend to tweak them with CSS and so on.
How do girls feel about the building for the Web versus other types of programming? "Their whole world is online now," and students are very engaged in what they do there (e.g. posting photos to Tumblr) -- but they don't really understand how the Web works or how they can really build things (e.g. the difference between building your own website and signing up for Tumblr). How do we help students understand technology and what's at stake with, for example, relying on iPads versus laptops on the classroom, what's the difference between native and Web apps, and so on. Are girls less likely to look "under the hood" of tech, and how are the stakes getting higher now with the lack of control we have over our own data, our own hardware, and so on?
What about other programming languages?: How does Mozilla's project run counter to the AP CS curriculum, for example, or to what most CS students are taught? How does the former's emphasis on Java affect what's taught, what's stressed (and arguably who's exposed to programming and how)?