Wednesday, June 25, 2014

Lowering the barriers to learning programming

At Velocity 2014, I gave a talk to the attendees, a room full of web developers and backend ops, about why we need to lower the barriers to programming, and ways we can do that.

Since the goal of the talk was to give everyone an action item to lower a barrier in some way, here's a run-down of the ways you can help:

  1. Donate hardware:
    You can donate your own unused laptops to local schools or organizations (like Boys & Girls Club, YMCA, or coding specific ones).
  2. Fund a DonorsChoose.org project:
    You can search on DonorsChoose.org for projects that are funding laptops to teach CS in their classrooms. You can also filter by topic, poverty level, or location, and you can turn your donations into a gift in the name of a friend or family member.
  3. Contribute to online programming environments:
    You can contribute to existing open-source environments like repl.it, jsbin.com, or to the tools that power them like JSHint, ACE editor. You could also build curriculum around existing environments, or create an entirely new environment, like for Arduino, Objective-C, or 3D games.
  4. Make CS count in your K-12 state/district:
    You can visit code.org/promote, select your state, and follow the instructions to sign a petition or email a politician. You could also write letters to your local high school, especially if you have a student there, and offer to explain to the administration why it's important. Perhaps you could even volunteer to teach yourself (like via the TEALS program or mentor a teacher.
  5. Volunteer at a local coding club:
    Search on code.org/local/learn for local coding clubs, and volunteer as a mentor or teacher. If you can't find one, start one (like a CoderDojo chapter). You can use online self-guided curriculum like Khan Academy, so you don't even have to feel comfortable teaching.
  6. Encourage your kids:
    According to recent Google research, encouragement - especially parental - is very important. Encourage your kids, especially daughters, but do not pressure them.
  7. Clear up misconceptions about CS as a career:
    Many students don't know what CS is like as a career and realize that it can have social impact. Share stories of CS in the real world, like from Khan Academy's Meet the Computing Professional, Computing is Everywhere, Made With Code. Share those with kids you know, and encourage teachers to highlight one a week.

If you're interested in the whole talk, you can watch the video recording, see the slides embedded below or see slides here with speaker notes. Think of other ways that industry professionals can help? Let me know in the comments!


Monday, June 23, 2014

CS4HS @ Cal: Meeting CS high school teachers in person!

This past Friday, on June 20th, I was invited and honored to stop by CS4HS @ Cal, a gathering of local high school Computer Science teachers. As you can see from their group photo, they were a lively bunch:

I presented slides giving an overview of the Khan Academy programming curriculum, community, and challenges, plus our future plans:

It was lovely to speak with teachers that were using our curriculum or thinking of using it, and informative to hear about the struggles (and joys!) they face as CS teachers. If you're a CS teacher, you might be interested in reading through the extensive notes they took during the meeting.

We look forward to more opportunities to connect with CS teachers in the future! Thanks again to the inimitable Dan Garcia for inviting us.