Posts tagged ‘computing for everyone’
Google has just released a new report on K-12 CS Education. It’s linked at the bottom. I’m going to quote from a new Wired article that describes one of the big bottomlines.
In a big survey conducted with Gallup and released today, Google found a range of dysfunctional reasons more K-12 students aren’t learning computer science skills. Perhaps the most surprising: schools don’t think the demand from parents and students is there.
Google and Gallup spent a year and a half surveying thousands of students, parents, teachers, principals, and superintendents across the US. And it’s not that parents don’t want computer science for their kids. A full nine in ten parents surveyed viewed computer science education as a good use of school resources. It’s the gap between actual and perceived demand that appears to be the problem.
Searching for Computer Science: Access and Barriers in U.S. K-12 Education
To understand perceptions of computer science and associated opportunities, participation, and barriers, we worked with Gallup, Inc. to survey over 1,600 students, 1,600 parents, 1,000 teachers, 9,600 principals, and 1,800 superintendents. We found:
Exposure to computer technology is vital to building student confidence for computer science learning.
Opportunities to learn computer science at schools is limited for most students. When available, courses are not comprehensive.
Demand for CS in schools is high amongst students and parents, but school and district administrators underestimate this interest.
Barriers to offering computer science in schools include testing requirements for other subjects and limited availability and budget for qualified teachers.
ICER 2015 at the University of Nebraska, Omaha was fantastic. Brian Dorn did a terrific job hosting all of us.
The Doctoral Consortium went really well. We had 20 students from US, Chile, Germany, and UK. Below is a picture from the “Up against the wall bubble sort” where experienced students went to one side, and newer students went to the other, and the former gave advice to the latter.
Georgia Tech had even more going on at ICER and RESPECT than I mentioned in my earlier blog posts (like here and here). The GVU Center did a nice write up about all of us here. The biggest thrill at ICER for the GT crowd was Briana Morrison receiving the Chairs Award (one of two best paper awards at ICER) for the paper that I blogged about here. Below is the whole GT contingent at ICER (including chair Brian Dorn, GT alum).
The other best paper award, the peoples’ choice John Henry Award, went to Kristin Searle and Yasmin Kafai (see paper here) about the e-textiles work with American Indians that I blogged about here. Kristin had so many interesting insights, like the boys in her project telling her that “I don’t own” the projects they made because they felt no ownership over the programming environment they were using.
The quality of the papers was very good (you can see the list of all of them here). My favorite paper from my review packet was presented Monday morning, Spatial Skills in Introductory Computer Programming. Steve Cooper and Sheryl Sorby with two undergraduates at Stanford did the study that I’ve been wanting to see for ages (see blog post where I talk about it). Training an experimental group in spatial skills improved performance over a control group. Surprisingly, SES and race differences disappeared in the experimental group! This is an important result.
But one session blew me away — it changed how I think about blocks programming.
- The first paper was from Thomas Price and Tiffany Barnes showing that students using blocks were able to achieve programming tasks faster than those using text, but with no difference in learning or attitudes afterwards (paper here). This was an interesting result, but it was a limited study (short intervention, no pre-test) so it mostly supported a finding from Chris Hundhausen from years previous that graphical, direct-manipulation languages lead to faster start-up than text languages (see paper here).
- David Weintrop presented his remarkable paper with Uri Wilensky (see paper here). Below is the graph that changed my thinking about blocks. David carefully developed an isomorphic test in blocks and text, and gave it to the same population. Students did much better on the blocks-based test. MODALITY MATTERS! Blocks and text are not equivalent. He did careful analyses at each level of the test. For example, David replicated the result that else clauses in text are really hard for novices (which I talked about here), but students perform much better in blocks-based if-else.
- Diana Franklin presented their paper describing fourth graders reading Scratch programs (see paper here). I was expecting a paper on program comprehension — it wasn’t. Instead, it was a paper about user interfaces, and how the user interface interfered or supported students exploring and coming to understand the program.
I came away from that three papers realizing that blocks programming is likely the best modality to use in elementary school programming, and perhaps even when starting to program in high school, and maybe even for end-user programmers. But even more important, I realized that Andy Ko’s comments about programming languages as being a powerful and unusable user interface (see his blog post here) is the critical insight about programming today. David showed us that blocks can dramatically increase readability of programs. Diana showed us that the user interface dramatically influences the readability of the blocks. At the novice programming level, blocks-based languages are the most promising direction today, and designing good blocks languages is as much a user interface design problem as it is a programming language design problem.
Our second RESPECT paper is by Barbara Ericson and Tom McKlin. Barb has been developing this cool intervention based on the Texas-based Advanced Placement Incentive Program (APIP) from AP Strategies (see paper about that work) and Betsy DiSalvo’s Glitch (see blog post here). Barb is offering financial incentives to African American students to encourage them to take advantage of additional learning opportunities (e.g., attend webinars and face-to-face workshops), and then pass the AP CS exam. NMSI has also offered grants to states to replicate the Texas APIP project (e.g., blog post at NMSI).
Barb has published on Project Rise Up 4 CS at SIGCSE (see my blog post on that paper). This new paper, “Helping African American Students Pass Advanced Placement Computer Science: A Tale of Two States,” describes Barb’s efforts to replicate the project in another state, and Tom’s efforts to measure what happened.
The bottomline is that in both states where she tried this, the participants had significant improvements in attitudes towards computing from pre to post. Probably the most important attitude change is that the participants had a significant increase in their perceived ability to pass the exam, and some of the students said that they couldn’t have passed the AP CS exam without Project Rise Up 4 CS. Both states had their highest-ever African American AP CS pass rates, though it would be hard to ever make a causal argument that this is due to Project Rise Up 4 CS.
The significant contribution of the paper is the deep understanding of what the project meant to the students, based on interviews. Students talked about their classes and teachers, what worked in Project Rise Up 4 CS, and how the project helped their confidence and knowledge. Barb used undergraduate students to host the webinars and workshops, who served as “near-peer” mentors and role models for the students. Those near-peer mentors were a critical piece in making Project Rise Up work.
Barb’s paper is being highlighted as one of four “Exemplary” papers at RESPECT.
On Friday, August 14, the first RESPECT conference will be held in Charlotte, NC — the first international meeting of the IEEE Special Technical Community on Broadening Participation with technical co-sponsorship by the IEEE Computer Society (see conference website here). RESPECT stands for Research on Equity and Sustained Participation in Engineering, Computing, and Technology.
We have two papers in RESPECT which I’ll summarize in a couple of blog posts. I’m less familiar with IEEE rules on paper referencing and publishing, so I’ll make a copy available as soon as I get the rules sorted out.
Miranda Parker has just finished her first year as a Human-Centered Computing PhD student at Georgia Tech, working with me. She’s done terrific work in her first year which I hope to be talking more about as she publishes. At RESPECT 2015, she’ll be presenting her first paper as a PhD student, “A critical research synthesis of privilege in computing education.”
Miranda defines privilege as:
Privilege is an unearned, unasked-for advantage gained because of the way society views an aspect of a student’s identity, such as race, ethnicity, gender, socioeconomic status, and language.
Her short paper is a review of the literature on how we measure privilege, where its impact has been measured in other STEM fields, and where there are holes in the computing education literature. She’s using studies of privilege in other STEM fields to help define new research directions in computing education. It’s just the sort of contribution you’d want a first year PhD student to make. She’s surveying literature that we don’t reference much, and using that survey to identify new directions — for her, as well as the field.
In my research, I’m most interested in the non-CS majors, the ones who learn computing because it makes them more productive (see where I make that argument) or because they want to make themselves more marketable (see Eric Robert’s post) or because they will live and work (as I predict) in the fat line between programmers and users (see post here). A recent article in the CACM suggests that all non-CS majors need to be learn (let’s not use the “be exposed” euphemism — there’s no sense in “exposing” someone to something unless you’d like them to learn from it) “functional programming languages [and] the declarative programming paradigm.” I’m willing to consider that, but why? The quote below says, “they allow programmers to do more with less and enable compilation to more efficient code across a wide range of runtime targets.” I’ve been studying non-CS majors who program for a lot of years, and I’ve never heard any of them say even once that they want to “enable compilation to more efficient code across a wide range of runtime targets.”
So let’s consider the “more with less.” Do we buy that what what non-CS majors is to be able to get more expressive power with fewer keystrokes? I don’t see the argument for that.
- Brian Dorn studied graphic designers who program, and found that assignment was fairly hard for them to learn (see his CHI 2010 paper). Surely, there’s not much that has fewer characters than that.
- Neil Brown has been mining the BlueJ Blackbox data for empirical data on what students get wrong most often (see his ICER paper). I was surprised to learn that confusing & for && and | for || is pretty common. Those are pretty easy to type, short, and seemingly error-prone expressions.
- We have Thomas Green’s fascinating result that that IF P THEN … END P; IF NOT P THEN … END NOT P. is not just better than IF P THEN…ELSE.… It’s ten times better — novices do better by a magnitude if they avoid ELSE.
My suspicion is that non-CS major programmers value understandability and fewer errors, over fewer keystrokes and more power.
I like functional programming and would be interested in a good argument for it for non-CS majors. I don’t see it here.
Second, would-be programmers (CS majors or non-majors) should be exposed as early as possible to functional programming languages to gain experience in the declarative programming paradigm. The value of functional/declarative language abstractions is clear: they allow programmers to do more with less and enable compilation to more efficient code across a wide range of runtime targets. We have seen such abstractions gain prominence in DSLs, as well as in imperative languages such as C#, Java, and Scala, not to mention modern functional languages such as F# and Haskell.
I’m currently reading Nobel laureate Daniel Kahneman’s book, “Thinking Fast, Thinking Slow” (see here for the NYTimes book review). It’s certainly one of the best books I’ve ever read on behavioral economics, and maybe just the best book I’ve ever read about psychology in general.
One of the central ideas of the book is our tendency to believe “WYSIATI”—What You See Is All There Is. Kahneman’s research suggests that we have two mental systems: System 1 does immediate, intuitive responses to the world around us. System 2 does thoughtful, analytical responses. System 1 aims to generate confidence. It constructs a story about the world given what information that exists. And that confidence leads us astray. It keeps System 2 from asking, “What am I missing?” As Kahneman says in the interview linked below, “Well, the main point that I make is that confidence is a feeling, it is not a judgment.”
It’s easy to believe that University CS education in the United States is in terrific shape. Our students get jobs — multiple job offers each. Our graduates and their employers seem to be happy. What’s so wrong with what’s going on? I see computation as a literacy. I wonder, “Why is our illiteracy rate so high? Why do so few people learn about computing? Why do so many flunk out, drop out, or find it so traumatic that they never want to have anything to do with computing again? Why are the computing literate primarily white or Asian, male, and financially well-off compared to most?”
Many teachers (like the comment thread after this post) argue for the state of computing education based on what they see in their classes. We introduce tools or practices and determine whether they “work” or are “easy” based on little evidence, often just discussion with the top students (as Davide Fossati and I found). If we’re going to make computing education work for everyone, we have to ask, “What aren’t we seeing?” We’re going to feel confident about what we do see — that’s what System 1 does for us. How do we see the people who aren’t succeeding with our methods? How do we see the students who won’t even walk in the door because of how or what we teach? That’s why it’s important to use empirical evidence when making educational choices. What we see is not all there is.
But, System 1 can sometimes lead us astray when it’s unchecked by System 2. For example, you write about a concept called “WYSIATI”—What You See Is All There Is. What does that mean, and how does it relate to System 1 and System 2?
System 1 is a storyteller. It tells the best stories that it can from the information available, even when the information is sparse or unreliable. And that makes stories that are based on very different qualities of evidence equally compelling. Our measure of how “good” a story is—how confident we are in its accuracy—is not an evaluation of the reliability of the evidence and its quality, it’s a measure of the coherence of the story.
People are designed to tell the best story possible. So WYSIATI means that we use the information we have as if it is the only information. We don’t spend much time saying, “Well, there is much we don’t know.” We make do with what we do know. And that concept is very central to the functioning of our mind.
I believe the result described in the article below, that a critical limitation of teacher’s ability to use technology is too little understanding of technology. In a sense, this is another example of the productivity costs of a lack of ubiquitous computing literacy (see my call for a study of the productivity costs). We spend a lot on technology in schools. If teachers learned more about computing, they could use it more effectively.
In 2010, for example, researchers Peggy A. Ertmer of Purdue University, in West Lafayette, Ind., and Anne T. Ottenbreit-Leftwich of Indiana University, in Bloomington, took a comprehensive look at how teachers’ knowledge, confidence, and belief systems interact with school culture to shape the ways in which teachers integrate technology into their classrooms.
One big issue: Many teachers lack an understanding of how educational technology works.
But the greater challenge, the researchers wrote, is in expanding teachers’ knowledge of new instructional practices that will allow them to select and use the right technology, in the right way, with the right students, for the right purpose.