« Modeling Effective CS Professional Development | Main | Google Offers Power Searching Course »

Who teaches CS?

In a previous blog post (3/10/2012), Thinking Big About Computer Science Education, Baker Franke addressed two tightly-coupled problems: where does computer science (CS) fit in American education and who will teach it? This blog focuses primarily on the second of these two questions...who will teach computer science if and when we educate students on the importance of learning computer science before they graduate high school. This blog looks at a different approach.

I recently consulted at an AP CS Summer Institute where I was joined by 12 very motivated AP computer science teachers. We spent the week talking Java and pedagogy, working in pairs, working in teams, sharing stories and learning new things. Everyone in the institute walked away with some knowledge that they didn't have at the beginning of the week. This workshop was a great experience for me. In one room there were teachers of all levels of CS-teaching experience and content knowledge. That, in itself, is not unusual. But this workshop was fortunate to have a first-year AP CS teacher who was actually a current computer professional. We'll call him JT. JT added a new dimension to the group by bringing his life-experiences to our professional development workshop. JT wasn't a retired programmer looking for a second profession. JT actually taught AP CS (block scheduling) twice a week before going to work. He arranged his schedule by working late on teaching days and/or adding time to the non-teaching days. JT shared experiences and advise (especially on team work and documentation) and took away pedagogical ideas that will probably alter the way he teaches his course. After all, teaching high school students is a bit different than speaking to people out there in the business world...or is it?

Our week of activities ended with a presentation by one of the other participants on advocating computer science as a discipline. Yes, it was preaching to the choir but the presentation made us aware some startling facts about CS Education in this country and what some people are doing about it. Some facts:

  • In 2010, only 0.6% of all AP exams taken were AP CS.
  • While AP US History, AP Calculus, AP Biology, and AP Environmental Science are on the rise, AP CS lingers almost flat lining.
  • In 2010, there were 12, 501 CS graduates with 13% women and 4% Black.
  • 41 states do not count CS as math or science credit
  • There are 1.06 million public high school teachers; 6,357 teach CS fulltime; 2,000 are college AP CS Audited and approved.
  • The facts presented are primarily from a TEALS (Technology Education And Literacy in Schools) presentation that was attended by one of the participants and is posted on the TEALS website. "TEALS is a grassroots employee driven program that recruits, mentors, and places high tech professionals who are passionate about digital literacy and computer science education into high school classes as part-time teachers in a team teaching model where the school district is unable to meet their students' Computer Science needs on its own."

    This is the same idea as JT teaching AP CS except that TEALS teachers always team teach with a teacher; "the school teachers learn the course material and eventually teach the course by themselves later on in the day." My question is, "Where does the tech-professional learn about CS pedagogy?"

    Many of the blog posts prophesize that professional development is important and meaningful to teachers. This is my personal belief. But, what if you can't find teachers to teach computer science? Is tapping the technology professionals in our communities a viable solution? Can the tech-pros help us develop competent CS teachers? Are they willing to reach out for help with CS pedagogy as JT did?

    What's the ideal solution?


    Fran Trees
    CSTA Chapter Liaison


    I think more teachers like JT is part of the answer. I have been a software professional for 20 years, and have recently volunteered and started helping my local district with their curriculum now that my kids are old enough that I noticed how poor it was firsthand. As I've gone through this process I have had numerous friends that are great developers voice an interest in teaching. Interest is there, but I think a big problem is actually making it happen. I never once considered a career in education. Even though I think it is a vitally important field, it just isn't something I wanted to do myself. Great developers like building cool things that millions of people will use. Many love helping others and teaching, but are unwilling to give up their primary passion (that by the way pays really really well) in order to teach full time. Figuring out how to welcome eager professional developers as part time teachers should be near the top of the priority list. The volunteers are out there if you go looking for them.

    I keep running into CS professionals who want to give back and who are willing to work side by side with teachers. For the most part these are people who know what they don't know and are willing to listen to people who do know. The people who really think they know better than teachers how to teach never seem to be willing to actually put their claims to the test. I hope it stays that way.

    Kevin Wang of Microsoft offers more information on TEALS:
    We are in 4 schools in VA (TAs only to cut down on student / teacher ratio) and 2 public charter schools in DC (0 AP CS last year) where we provide AP CS (teacher and TAs). Rest assured that we do not just drop engineers into classrooms. TEALS teachers and TAs attend a summer 12 week long training course (~100 hours of work) to make sure they are ready to teach CS at the high school level. All of our teachers are prepared to teach in the fall, otherwise I doubt the superintendents and the CTE directors would let us into the schools. We work with UC Berkeley to adjust their CS10 Intro CS curriculum for high school students and that is what we will use in the fall.

    When I embarked on a teaching credential in northern California -- silicon valley -- I was surprised to find that California doesn't recognize a CS teaching credential. I became a chemistry and ap chemistry teacher. Curiously, there was little demand for CS at my silicon valley high school.

    Post a comment

    (If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)