States requiring CS for all students may be making a mistake: Responding to unfunded mandates

April 2, 2018 at 7:00 am 24 comments

As of this writing, New Jersey and Wyoming are the latest states to require CS for all their students (as described in this article) or to be offered in all their schools (as described in this post and this news article), respectively.  Wyoming has a particularly hard hill to climb.  As measured by involvement in AP exams, there’s just not much there — only 8 students took the AP CS A exam in the whole state last year, and 13 took AP CS Principles.

In 2014, I wrote an article titled “The Danger of Requiring Computer Science in K-12 Schools.”  I still stand by the claim that we should not mandate computer science for US schoolchildren yet. We don’t know how to do it, and we’re unlikely to fund it to do it well.

I can’t find any news articles describing what funding New Jersey and Wyoming are going to put toward the goal of teaching CS across their state.  How do you teach every student CS or teach CS in every school without any increase in funding?

Based on what we’ve seen in other US states, I predict one of three things will happen:

  • States will have to loosen the definition of “computer science,” as happened in South Carolina.  90 classes count for the CS requirement in South Carolina, and only 6 of which have programming in them.  Most of them are about keyboarding skills or application software use. If a state doesn’t fund real CS, something else will have to count as real CS.
  • States will rely heavily on virtual high schools and on-line classes to provide CS class “access” without hiring more CS teachers, as we are seeing in several states. That is particularly concerning since recent studies are showing that remedial students do poorly in on-line classes.
  • Independent CS classes will be deemed too expensive. Instead, the mandate to teach CS to all will lead to integration into math and science classes, which are already funded. School will have changed the reform, again (see Papert’s “Why School Reform is Impossible.”)

Neither of the first two options furthers the goal of having high-quality CS education for all students. The third one may be the best position, if funding doesn’t appear.

Entry filed under: Uncategorized. Tags: , .

How to Study for a CS Exam Teaching to develop a mental model of program behavior: How do students learn the notional machine

24 Comments Add your own

  • 1. Raul Miller  |  April 2, 2018 at 7:27 am

    What if on-line classes (as curriculum) were combined with integration with math and science classes (for instructor support and motivation)?

    Perhaps with keyboarding as an introduction to get things started?

    • 2. Raul Miller  |  April 2, 2018 at 7:34 am

      (Perhaps a format like Khan Academy rather than something focused on certificates. Fitting into and enhancing existing class goals will probably be especially important early on.)

      • 3. Raul Miller  |  April 2, 2018 at 7:41 am

        For computers for schools that do not have them, the raspberry pi series might be the way to go for schools that do not get donations of equipment and do not have a lot of funding. There are some tradeoffs there, of course…

        • 4. Mark Guzdial  |  April 2, 2018 at 8:29 am

          I disagree that Raspberry Pi’s are a solution for schools with too little funding. Pi’s still require keyboards and monitors and networks, and lack the infrastructure for supporting large numbers of them with a small tech support staff. I more easily see an argument for Chromebooks.

  • 5. alanone1  |  April 2, 2018 at 7:30 am

    I think it would be good to assess just how well the mandated subjects of -real math- and -real science- are being rendered and taught in the states. My prejudgment is “not well at all”, especially in the most important “epistemological years” of K-6 (or to -8).

    Another prejudgment is that — especially in the early years — science, math, engineering, and computing should be approached as a unified subject, with -real science- furnishing the base (this is because it is more profound and more at odds with human commonsense than the others). The similarities will provide large synergies, and will furnish context to help make the differences more understandable.

    (I’ve always been completely mystified as to why this approach isn’t easily seen as the most comprehensive, useful, and learnable all around.)

    Another boon from this approach is that computing in this context and these years does not — and should not — have to be motivated by what commercial computing is doing. And given how awful most of the first courses in computing in college are, and how they adversely affect AP and high school, the distance from the early years should also be used to insulate the kids from the later sins of academia.

    • 6. Mark Guzdial  |  April 2, 2018 at 8:51 am

      Hi Alan,

      That’s a fascinating idea. I don’t think we know how to do it, or even if it’s possible. Some of the open research questions for me:

      (A) “How much CS can we teach at how young an age?” There are experiments at K-3, but relatively little at scale, beyond a case study. Can we teach enough CS to use it to teach math, science, and engineering at young ages? What we’ve seen from Roy Pea’s studies in the ’80’s to Yasmin Kafai and Debbie Field’s work today is that students are not learning (or at least using) much CS in Logo and Scratch. Surely, they can learn more, but can they learn enough to be able to get to simulations and analysis with computing? I know that you got to differential equations for Physics with middle school students in Squeak e-toys, but how much younger can we go? (And I’m setting aside Maya Israel’s issues of how we get to special education students.)

      (B) “Can we get students to abstraction faster?” Piaget, Papert, and Bruner all believed that we could get kids to abstraction sooner than 11-13 yo with the right developmental activities, but I don’t know that anyone has shown that.

      (C) “How do we develop enough confidence in the computing to challenge commonsense experiences?” I agree with you that computing for STEM is “more profound and more at odds with human commonsense.” But then, how do we get students to believe it? Physical manipulatives help students learn mathematics because students believe their reasoning about the manipulatives. If students build something in computing that contradicts what their senses and experience tell them, why wouldn’t they disbelieve the computing rather than question their experience? I could see them questioning their understanding of the computing, rather than using it to challenge their commonsense experiences. At some point, scientists and mathematicians learn to trust the methods and notations and allow themselves to be challenged and contradicted. Getting kids to that point, at early ages — I’m not sure we know how to do that.

      • 7. alanone1  |  April 2, 2018 at 9:30 am

        Hi Mark

        (A) IMO the Pea and Kurland studies missed many of the things that need to be done to get a good study with a new curriculum — especially in elementary school — for example, in our experience over many years we found that a good trial required three years of curriculum and assessment.

        This is partly because teachers are so critical for most approaches to teaching and learning — whether “standard” or more along the lines of what Montessori teachers know how to do. It takes a while for them to learn and really get comfortable.

        It’s also partly because the curriculum itself needs debugging, and partly — if technology is involved — getting it to work smoothly and without gratuitous difficulties.

        On the other side of the fence, Papert et al also didn’t do enough multiple years with the same teacher, curricula, and technology. Also, Seymour was a fabulous teacher who really understood what was deeply behind the projects in the classrooms.

        (We didn’t use “differential equations” but “differential relations” with the 5th graders, and via a great 1st grade teacher we found that the idea was within the wheelhouses of 6 year olds. This learning on our part was spread out over many years in this school.)

        One big idea that both Jerry Bruner and Seymour embraced is to invent real versions of the subject matter that children at different development levels can handle. Some of these can be “found” (by looking at things that did work) and some can be guessed and then tested (the physics stuff we did, was originally designed by me for junior high school students, the teacher we worked with wanted to try it with her 5th graders, and my main advice was to take much more time with it, and interleave it with other things over a few months — this turned out to work.)

        One of Jerry’s and Seymour’s great points is that doing some version of the -real deal- is much more important than just what that is. In other words, finding versions of “real math” and “real science” that can be done deeply and fluently is better than surface versions of stuff that looks more familiar (this is a very tough point to get educators and parents to see — it also obtains in music learning).

        (B) Check out what it means to have Etoys scripts and UIs, etc as manipulable and scriptable objects. (I believe Scratch made a terrible error for many reasons when it disallowed this.) But note also that the way a collection of scripts deals with a collection of “sprites” in Etoys and Scratch is very much teaching abstraction. The broadcast ideas are an abstraction. Scripts using scripts in Etoys is an abstraction. Costumes are an abstraction. (As mentioned above, one needs to find the abstractions that work cognitively the best, and also to choose a small number that you want to put effort into helping children learn.)

        (C) You mainly have to learn science by actually doing science. Mathematics and its Siamese twin of Computing are in the realm of stories, most with the additional constraint of being consistent in specified ways. Science is a “negotiation” between “what’s out there?” — which we can only experience in terms of phenomena — and the kinds of representations we can make with and for our brains.

        Epistemologically, this is one of the most important distinctions for humans to learn — and to learn early. Especially because we are very much “story creatures” and don’t realize it most of the time. Stories are bigger than the universe — in fact, for any statement we make, we can also add “not” to. The good news about stories is that we can use them to speculate and to think about things outside of “reality”. But then we need to check carefully to see if there is something in the universe in accord with our story, or whether it is just a story (maybe just for now, maybe forever).

        I think “we” do know how to do a lot of “real science” and “real math” at most ages. And “real computing”. I don’t think that most teachers or even most educational systems do know how to do this. This disconnect comprises a very large set of really important issues, most beyond the scope of this comment.

        • 8. alanone1  |  April 2, 2018 at 9:33 am

          I meant to say “Math and its Siamese Twin Computing” …

          Also, Quora allows one to go back and fix typos etc, why not WordPress?

          • 9. rademi  |  April 2, 2018 at 9:51 am

            You have to install a plugin or the like for that. For example:

            • 10. alanone1  |  April 2, 2018 at 10:06 am

              Sounds like a modern interpretation of “end-user friendly” and “personal computing” to me! (I.e. Eeeecks! — or — WTF? Why?)

              • 11. rademi  |  April 2, 2018 at 10:43 am

                The original wordpress design had user ids for people who post, but only required an email address for comments. This is structural fallout from that decision.

                • 12. alanone1  |  April 2, 2018 at 11:22 am

                  This is just really bad design — which includes the non-WYSIWYG text entry and editing …

                  • 13. rademi  |  April 2, 2018 at 12:29 pm

                    You should probably think about how you would make content moderation meaningful with editable comments. Specifically you should think about what should happen when someone is moderating the comments and someone else is editing a comment (or when someone comes back later and edits a comment).

                    Freezing the comments (either right away, or – with that simple-comment-editing plugin – after five minutes) turns this from an intractable problem to a problem that can be understood by most people.

                    • 14. alanone1  |  April 2, 2018 at 12:35 pm

                      I think Quora’s solution — which, as you suggest, provides a reasonable settling period for changes and fixes, and then freezes — is workable.

                      My comment was that many things about WordPress (and trying to write more than a few sentences in most web media) are quite bad designs.

                      And as for the first paragraph here, shouldn’t there be a button that allows an author to interact with the moderator if something additional is needed?

            • 15. Mark Guzdial  |  April 2, 2018 at 10:48 am

              Or just have a blog moderator who is willing to make the edit. Humans work, even if the technology doesn’t.

              • 16. alanone1  |  April 2, 2018 at 12:37 pm

                Having to use that as a workaround for a bad design seems quite wrong to me.

  • 17. Mike Zamansky  |  April 2, 2018 at 8:05 am

    On option 1 –

    By saying this can be a “solution” implies that these classes are already being offered otherwise they’d demand the same funding. If they are offered, then we’re talking about replacing them with real CS classes. When all is said and done, you’d have a similar number of classes with similar expenses so the real expense is the ramp up. For that, as states start rolling out CS certification as NY just did schools start offering pre-service programs, the costs will be absorbed into teacher prep programs – do a CS teacher program instead of a Typing teacher program. Of course this is only if states do it right and allow the time needed.

    On option 2 –

    This is really about the attack on the teaching profession and many CS Ed advocates are paving the way – it’s a very real danger and very scary. I’ll add online charter scandals to your list of concerns.

    On option 3 –

    Not, IMO a real CS solution. As much as I’m a fan of Bootstrap, you can only shoehorn so much CS into another subject area that’s already subjected to way too much high stakes testing (which is really what standards are about).

    You can say that students are having trouble learning X so let’s ad some Y (CS) to the mix to help support learning X. It’s another thing to say that the kids are expected to learn twice as much (two separate subjects) in the same amount of time with the same resources.

    • 18. Mark Guzdial  |  April 2, 2018 at 8:33 am

      I agree with your analysis and concerns. Particularly, I see that integrations like Bootstrap mean that you get X+Y’ where Y’ has less content than Y. TANSTAAFL — There Ain’t No Such Thing As A Free Lunch.

      I find that to be an acceptable compromise. I want to get real CS into schools so that students can see the value of CS and see whether they want to pursue more CS. It doesn’t have to be a LOT of CS to achieve that goal.

      • 19. rademi  |  April 2, 2018 at 10:02 am

        I am not sure what “real CS” is that would fit in k-12…

        But counting things, making something change, dealing with measurements and building repeated operations? Those seem both doable and relevant.

        I don’t have any experience with bootstrapworld (if that was what you are talking about), but I would be much less interested in rigor than in familiarity for the grade school and high school levels.

        • 20. Mark Guzdial  |  April 2, 2018 at 10:47 am

          “Counting things, making something change, dealing with measurements and building repeated operations” is certainly do-able for K-4 children. Specifying those things in a notation for a non-human agent is much more challenging. Building all of that into an education system (e.g., with teacher professional development) is an even greater challenge.

          • 21. rademi  |  April 2, 2018 at 10:56 am

            While true, the biggest obstacle here is that trying is scary.

          • 22. alanone1  |  April 2, 2018 at 11:23 am

            Radia Perlman’s “Button Box” and Danny Hillis’ “Slot Machine” were both excellent solutions for young children, and the first led to the second.

  • 23. Grant Hutchison  |  April 2, 2018 at 11:30 am

    I agree that the 3rd option is most likely if there is a mandated requirement for learning computational skills (with some coding elements).

    There is a pilot ( ) running here in Ontario using this approach in our Grade 10 Math program.

    I would like to see a breadth and depth course offered in each high school as electives, but any mandated course shouldn’t be a complete CS focus in my view. If it was integrated into an existing core course like Math or if school boards have a digital literacy style of course then simply ensure there is some computational elements to encourage “interested” students of all genders and socio-economic levels to explore the “more senior” electives.

  • […] States requiring CS for all students may be making a mistake: Responding to unfunded mandates […]


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 9,052 other followers


Recent Posts

Blog Stats

  • 2,030,647 hits
April 2018

CS Teaching Tips

%d bloggers like this: