A reaction to the appalling way educators act like computing isn’t important.
The National Research Council (NRC) recently released a policy document A Framework for K-12 Science Education: Practices, Crosscutting Concepts, and Core Idea (ISBN-13: 978-0-309-21742-2) which, for all of its positives, completely lacks computing topics.
I am appalled. I am resinged to the “we didn’t have to learn it, so why should our kids?” attitude of educators and policymakers. I’m growing accustomed to people ignoring the sixty thousand job openings created each year in the computing fields for which there are no qualified applicants. But the NRC? I think I have been asked non-trivial computer science questions by more than half of my non-CS graduate student friends. Often this involved my fixing code they had hacked together without little or no training, fixes they could have made themselves if they’d taken basic CS classes. I’ve had such a request every few months for the past six years. I admittedly spend a lot of time with researchers in other disciplines and work to cultivated an approachable demeanor, but I’d still wager that most if not all science research uses some programming. If the NRC isn’t pushing for computing, who will?
I have thus decided to start brainstorming ideas for a public awareness campaign. I was inspired in this by (at least) three things: Joanne Cohoon showing an ad (on an unrelated topic) in one of her talks on recruiting CS students; Seth Reichelson saying that he tells high-school students aiming for a college engineering degree that “everyone will laugh at you if you didn’t take CS”; and the existence (but not content) of dotdiva.org.
Because I would love for these ideas to be used by anyone, the following ad ideas are released into the public domain to be modified, extended, and used freely with or without attribution.
This first set of ad ideas is designed to mock people who can’t program, but hopefully in a nice way that doesn’t offend.
Scene: someone is giving someone else a ride in a car.
Passenger: “Turn left up here.”
Driver: “Oh, I only use the car. I don’t know how to make it turn.”
Passenger laughs. Driver misses the turn.
Passenger: “Hey, you missed the turn!”
Driver: “I told you I don’t know how to turn.”
Passenger: “What? Just turn the wheel the direction you want to go.”
Driver leans out of window and reaches for tire. Car crashes into a brick wall.
Fade to black. Text, with sonorous voice: “Don’t drive your computer into a wall. Learn to Program.”
Person 1 is writing, obviously frustrated. Finally shouts “Argh! This stupid thing just won’t work!”
Person 2: “What’s wrong?”
Person 1: “This pencil is stupid! It won’t write! It worked fine yesterday; I have no idea what’s wrong with it.”
Person 2: (picks up the pencil) “Just sharpen it.”
Person 1: “Woah, I’m no pencil mechanic. It’s supposed to work!” Person 2 starts to sharpen the pencil as person 1 continues to rant: “This happened with my last pen and someone showed me how to fix it by taking off the cap, but I can’t figure out how to do that with this one so I guess now I’ll have to go and take it to the shop and…” (person 2 tried out the sharpened pencil, then returns it) “Wow, you are such a genius! You fixed it! Thank you so much!”
Fade to black. Text, with sonorous voice: “Programming. Without it all you can do is remove the cap.”
This second set is designed to emphasize that programming is a useful thing to have in your bag of tricks. I don’t have even skeleton scripts yet, just ideas.
Have a person doing some sort of mindless text correction, like un-capitalizing a large document. Show a line or two of code that does the task in a moment. Tagline, something like “Give yourself back your time. Learn to program.”
Have a row of kids playing some online game, but one kid’s avatar is different in appearance or ability. When asked how, she says “Oh, I just added a few lines of code to the X method.” Tagline, something like: “Make your world obey you. Learn to program.”
I have no idea if taxes is the right problem here, but the idea is: “Doing my taxes myself: 223 minutes, 48¢” “Hiring someone to do my taxes: 141 minutes, $54.51” “Using a tax program I bought: 852 minutes, $29.99” “Writing a program to do my taxes: 98 minutes, free” Tagline, something like: “Save time and money. Learn to program.”
The fact that there are more than twice as many jobs in computing as there are educated persons to accept those jobs can lead to an excellent series of infomercials. These might include:
This is the job pool (bar or circle). This is the people competing for those jobs (bar or circle). This is the jobs that need programming skills (highlight area). This is the people competing for those jobs (highlight area). Tagline: “Work where the economy needs you. Learn to program.”
Clips of leaders of various companies talking about their need for programmers. dotdiva.org-like clips of various programmers talking about what they do. Tagline: “Get in on a good thing. Learn to program.”
Clips to dispel myths without mentioning them directly. “Anyone can program. If you can explain how to do something, anything, then you can program.” Kids talking about how programming is more fun that subject X. People talking about coding parties, laughing at inside jokes, etc.