Computer science is marginalized

K–12 schools don’t teach students “the fundamental computer science knowledge and skills they need for future success,” argues Running on Empty: The Failure to Teach K-12 Computer Science in the Digital Age, a report by the Association for Computing Machinery (ACM) and the Computer Science Teachers Association (CSTA).

Most states treat high school computer science courses as an elective and not part of a student’s core education, the report complains.

At a time when computing is driving job growth and new scientific discovery, it is unacceptable that roughly two-thirds of the entire country has few computer science standards for secondary school education, K–8 computer science standards are deeply confused, few states count computer science as a core academic subject for graduation, and computer science teacher certification is deeply flawed.

 Computing in the Core, a newly formed coalition, will lobby for making computer science a core academic subject.

Many computer science courses teach keyboarding and use of the Internet but don’t teach “understanding and applying algorithmic and computational thinking.”  According to CSTA, schools are offering fewer  computer science courses at both the introductory and Advanced Placement (AP) level.
I’m not convinced that everyone needs computer science to succeed in the digital age.  I use computers without knowing much about programming. (I did take a programming class in high school — to meet boys.)  I drive a car without knowing auto mechanics.
About Joanne


  1. I agree. Knowing how it all works down in the silicone is very interesting, but no more important to being able to use a computer than understanding the Carnot cycle is vital to driving a car.

    A computer is a tool, not a paradigm for life.

  2. Mark Roulo says:

    I’m not convinced that everyone needs computer science to succeed in the digital age.

    I’ve been programming professionally for the past 20 year.

    Everyone does not need computer science.

    But, more to the point, what many/most high schools teach is a combination of programming (which is fine) and a very wide, very shallow introduction to parts of computer science.

    Computer science is an interesting/strange intersection of math and actual computers. Rigorous computer science often involves proofs (like those scary things in the Euclidean geometry class). Most people don’t need this. Even most programmers don’t *NEED* this, although knowing it makes one a better programmer.

    Given that the core foundation of computer science is some fairly rigorous math, I’d much rather see the high schools teach either:
    (a) Some more math courses (maybe abstract algebra), *OR*
    (b) Go all-out and teach programming in depth (as a vocational skill)

    Classes splitting the difference don’t strike me as important and should *NOT* be treated as on par with Math, Science, History or Literature.

    -Mark Roulo

  3. I had a major in information systems and could once use 7 different programming languages. None of that helps me in my daily computer use. Maybe I understand a little better how to problem solve.

    And IT jobs have been going overseas for quite some time.

  4. People don’t need to understand the details of the Carnot cycle to drive a car—but I think people should known in concept how a car engine works, at least at the level of “piston goes down and sucks the air in, piston goes up and compresses the air, fuel is injected and spark plug fires”, just in the name of understanding the world around them. Without such understanding, technology is a form of magic.

    The same argument could be made for elementary computer programming. Some thoughtful people, such as the renowned management consultant Michael Hammer, have also argued that learning computer programming is an intellectual discipline which aids the ability to think logically *in general*.

    Seems more of an issue for college than for high school, though, especially given that so many K-12 schools are having difficulties with much more basic kinds of things.

  5. Cranberry says:

    I was amused to see that our state received 100%, due to computer science requirements in the k-12 system. I remember a cousin relating her son’s experience in the high school computer course. The big essay? “How to make the computer lab safer.” The school was required to offer a course in computer science, but they didn’t have anyone to teach it. Most of the students didn’t have the math background required to do anything meaningful. It was a waste of time.

    Which part of the standard, college-prep curriculum should schools jettison to make space for the computer science courses? The courses they don’t have the personnel to teach, for which there’s no established curriculum. Anyone qualified to teach the course could earn much more money using her skills, in an office where she wouldn’t have to ride herd on adolescents. This isn’t a subject matter that one can hand to the PE teachers. There aren’t enough math teachers as it is, let alone expecting them to go back to school to learn computer languages.

    As a parent, and a citizen in this country, I don’t place a higher value on computer programmers than on scientists, doctors, actuaries, or architects. We need them all. The pool of people able to learn advanced professional skills is very limited. Rather than call upon the government to upend the education system (again!), I’d much rather the computing companies and societies lead the way. Expand the pool of people able to do the math. Build a curriculum which works, rather than demand the government impose one from above. Perhaps, even, use the computer companies’ money (rather than taxpayer money) to create magnet schools for the engineers of tomorrow. Subsidize after school computer clubs. Direct action now will pay dividends much sooner than waiting for the federal government to fulfill this report’s demands.

  6. Perhaps, even, use the computer companies’ money (rather than taxpayer money) to create magnet schools for the engineers of tomorrow.

    The computer companies find it much easier to lobby Congress to increase the number of H1B visas.  The results are quicker, cheaper and far more certain.

    Of course, being rendered unemployable in the field due to H1B’s working for crap wages is a strong disincentive to spend money and time studying computer science.  Or nursing.  Or anything which can be outsourced.

  7. The complaint seems to be that “understanding and applying algorithmic and computational thinking.” is not taught.
    I had a course on that in grade 8 without any computers, and it was called “logic”.
    I’m still not sure if it was supposed to be a math course or a philosophy course, but the skills learned there have certainly been useful, both in working out why my lawnmower won’t start and in completing my PhD dissertation.

  8. Quote: ”I’m not convinced that everyone needs computer science to succeed in the digital age. I use computers without knowing much about programming. (I did take a programming class in high school — to meet boys.) I drive a car without knowing auto mechanics.”

    I completely agree with this statement as I too have been using a PC and laptop for 15 years now to run my entire business single handed with it and I don’t have a single qualification in computing. Yet, I have learnt a great deal about computing, computer repairs and maintenance and the use of the www and all of this was self taught using the Internet, picking various techs’ brain (Microsoft techs included) and generally pocking around and asking dumb questions ’til I got the right answer.

    But I also agree the subject does need to be taken seriously in schools and colleges and taught as a practical subject to give the kids the hands on skills they need to be competitive in the commercial world and be successful in life in general. It’s now the 3Rs and IT!

    Regards, Kevin Walker.