Wednesday, February 17, 2016

What do I mean by CS for All?

Let me start with a statement of belief about computer science education in K-12 schools.
Teaching computer science is no more about creating more software developers than teaching English is about creating more novelists.
This is important. A lot of justification for more computer science is about jobs. That is a popular “reason” by politicians and people in industry and it is a popular target for critics. Audrey Watters did so at “What Do We Mean By 'Computer Science for All'?” on her blog. Gary Stager took it on at President “Obama Discovers Coding – Yippee!” Both well written attacks on a straw man in many ways.

Jobs are hardly the reason most CS education activists are trying to get more computer science into the school curriculum. Even the companies I have been interacting with see CS education as more than about jobs or even about people learning on their software. Sure politicians like to pull out jobs as a way to get funding for things. It’s an easy excuse for just about anything. There actually are good jobs in the field and not just for people doing full-time development. And companies are looking for good employees. But there is more to it than that.

We need people to understand computing. We don’t teach physics, biology and chemistry to create more physicists, biologist, and chemists even though there are good jobs in those fields and we do need people to do them. No, we teach them so that students understand the world around them.

Unless you have been hiding under a rock there seem to be more and more computers in the world around us these days. Shouldn’t people understand them somewhat? What I mean by CS for All is a lot more than jobs. And I think that is true for most of the people I know who are celebrating Obama’s CS for All announcement. It is about:
  • Opportunity for everyone. Right now we have an abundance of white and Asian males in the field. That is horribly limiting both for underrepresented groups and for us old white males who would like more creativity and innovation in computing. Is it fair that only students in well-off schools get the opportunity to learn computer science?
  • Understanding the abilities and limitations of technology. How can you have a discussion about Apple’s current disagreement with the FBI over building a way to break into iPhones if you don’t understand software and computer science?
  • Becoming literate in a modern liberal art. Part of being an educated person today has to be understanding some computer science along with the other sciences and disciplines that make up a well-educated person.
Computer Science is more than just coding and it is more than just about jobs. It is about being a fully participating member of society.


Arlene B. Morgan said...

That's right. I was checking your internal links for further information, but it was giving 404 errors. I'm suggesting you to follow this article for a better source

Alfred C Thompson II said...

Broken link fixed. Thanks for the heads up.

Garth said...

CS in schools is going to have a major problem until a major school book publisher jumps on the wagon. If I want to teach sophomore high school chemistry I can get half a dozen sample text books, review them to find what is closest to what I want, and get a course that fits what most people will agree is sophomore chemistry. CS is still a warm and fuzzy. It is getting there (CSTA) but most schools think CS and programming are synonymous. CS also has to break into the core curriculum of English, sciences, history, etc. These traditional core subjects have built a wall that is almost impossible to break. Until it is broken and CS becomes a core subject and not a geek-based elective CS it going to have a problem. Is CS now more important than 4 years of English or chemistry or Math or some other traditional core subject? Probably but we have to get a publisher like Pearson to realize this. Then there is the task of training teachers. The core subjects have been around for at least 100 years. I think CS has a hard fight to get where it needs to be.

Anonymous said...

Pearson? Really?! That's exactly what we don't need. Teach it using OER materials.