Posts tagged ‘Code.org’
Opportunities to explore research questions with Code.org: Guest post from Baker Franke
I wrote my Blog@CACM column this month as a response to the 60 Minutes segment on Code.org with Hadi Partovi, “Five Research Questions Raised by a Pre-Mortem on the 60 Minutes Segment on Code.org.” Baker Franke, research and evaluation manager at Code.org (see Felienne’s blog post about Baker here) responded on Facebook with an invitation to engage with Code.org on these (and other) research questions. He provided me with a longer form of his Facebook post, which I’m sharing here with his permission. Thanks, Baker!
Hi Mark,
These are all of course great questions and ones we really hope the community takes up. Some are things we’re actively tracking or working on with other research partners. So, some questions are actually more at the mid-mortem stage 🙂 or at least we can see trends. If you’d like me to share something I’m more than happy to.
But for anyone out there who would like to dig in a little bit more please consider becoming a research partner. I recently gave a flash talk at the SPLICE workshop at SIGCSE ‘19 about how we do research partnerships. Here is a working document about Research Partnerships at Code.org. It explains with a bit more detail how we work with researchers and the kinds of data we do and don’t have. If you have ideas for killer research projects that make use of our platform let us (read: me) know.To offer a little something, I’ll take the bait on Mark’s first hypothesis: “Students with Code.org accounts don’t actually use the Code.org resources.” Answer: depends how you count! Actually it’s more like: depends where you want to draw the line on a full spectrum of activity we can log. We do try to track the difference between just visiting the site, logging in, doing an activity, starting a course with a teacher, and doing more. (Of course nothing would replace a well-designed implementation study, did I mention our research partnership program?)
For example, in CS Fundamentals (K5), we’ve been looking at students who “start” the course (defined in next paragraph) v. those who reach a basic level of “coding proficiency,” but understanding and defining this is tricky and is an ongoing project (click this link to learn more about how we define it)
We also track what we call “course started” v. “fully enrolled”. “Course started” is defined as a student user who (1) completes any single activity within one of our full courses (i.e. CSF, CSD, CSP, but not hour of code) and (2) who is in a teacher-section with 5 or more other students. Some exploratory analysis has shown that >= 5 students filters out a lot of noise that is probably not school-related activity. “Fully enrolled” is a metric that we’re also continuing to refine, and is a bit of misnomer because we can’t actually see what course the student is enrolled in at their school, but it means something like: “system activity data is indicative of this person probably actually going through the course in a classroom with a teacher.” We calculate it based on a student account (1) being in a section of >= 5 students (2) reaching a threshold of activity within each unit of the course — different thresholds for each unit depending on size, amount of unplugged, etc. — (3) over all units in the course. I think the important thing to highlight about these metrics is that they’re focused on activity indicative of students in classrooms, not just any old activity. Here are the numbers for the most recently completed school year.
Right now, our definition for “fully enrolled” is admittedly rough, and we’re going to refine it based on what we’re seeing in actual classrooms and publish a definition later this year with better numbers, but these numbers give a high level idea of what we’re seeing.
So do students with Code.org accounts use the resources? Yeah, a lot do. It’s tempting to compare these numbers to, say, MOOC completion rates, but we’re not really a MOOC because our curricula aren’t actually online courses. It would be hard for a student to go through our courses without a teacher and a classroom of schoolmates. The difference between “started” and “fully enrolled” could be a teacher only using one unit of a course or a few activities. So where’s the line? Another way to slice this would be to look at started v. completed for students of teachers who went through our PD program. Wouldn’t that be interesting? Want to find out more? Did I mention our Research Partnership Program?
Baker
baker@code.org
Need for Reviewers for US Department of Education CS Education Grants – Guest Post from Pat Yongpradit
Pat Yongpradit of Code.org asked me to share this with everyone.
The US Department of Education has announced the EIR grant competition for FY 2019. This year EIR incorporates an exclusive priority for computer science with a focus on increasing diversity and equity in access, as compared to last year where the highlight was that CS was merged with STEM as a combined priority. See more detail in our blog.
There are many moving parts to the federal grant review and award process, including a merit-based review process. In order to adequately score grants featuring computer science, the US Department of Education must have enough reviewers with K-12 computer science education experience. There is more information on the merit-review process and the Department’s mechanism for selecting reviewers in this blog.
Code.org has been asked to put interested folks in touch with leaders of the EIR grant program. If interested, please send your CV to EIRpeerreview@ed.gov.
Having CS knowledgeable reviewers participating in the federal grant review process is crucial to maximizing the opportunity these grants present the field and our collective goal of expanding access to K-12 computer science.
Best,
Pat
Hadi Partovi’s keynote at CrossRoads 2018: CS Ed Research needs to up its game
I was scheduled to be on a panel at last year’s InfoSys Crossroads 2018 conference, but my father passed the week before, so I couldn’t make it. Several people told me that I had to see the video of Hadi Partovi’s talk, because “he talks about CS Education Research.” The facial expression suggested I should feel warned.
I enjoyed the talk. Hadi made some critical and completely fair statements about CS Ed Research today. I recommend watching.
The really research-y stuff is around 30 minutes into the talk. He talks about CS competing with other fields (a point that Joan Ferrini-Mundy also made to ECEP), and that CS has to make the argument for itself. I most appreciated the point (around 31:50) that no CS Ed research meets the “What Works Clearinghouse” standards for “works without reservations.” He’s right, and it’s a fair criticism. Maybe it’s too early, but at some point, we have to be able to compete at the evaluation standards applied to all other subjects. Code.org is stepping up their game, with the first evaluation demonstrating that their CSP curriculum significantly increases the rate at which students take and pass the AP CSP exam (see paper here).
I learned a lot from his talk, especially his points about how to scale. I love the advice to “Execute first, raise funding after.” Since I’m trying to re-start my research program at Michigan, I am thinking about that advice a lot. I hear Hadi saying that I need to be executing on something interesting to fund first, before trying to sell the something interesting I want to do. Writing proposals about things I’m not executing on will probably not be convincing, and delays me making progress on the things I’m passionate about.
Of course, I vehemently agree with his argument that the future of CS Ed is to integrate CS into other subjects.
Analyzing CS in Texas school districts: Maybe enough to take root and grow
My Blog@CACM for this month is about Code.org’s decision to shift gradually the burden of paying for CS professional development to the local regions — see link here. It’s an important positive step that needs to happen to make CS sustainable with the other STEM disciplines in K-12 schools.
We’re at an interesting stage in CS education. 40-70% of high schools have CS, but the classes are pretty empty. I use Indiana and Texas as examples because they’ve made a lot of their data available. Let’s drill a bit into the Texas data to get a flavor of it, available here. I’m only going to look at Area 1’s data, because even just that is deep and fascinating.
Brownsville Intermediate School District. 13,941 students. 102 in CS.
Of the 10 high schools in Brownsville ISD, only two high schools have anyone in their CS classes. Brownsville Early College High School has 102 students in CS Programming (no AP CS Level A, no AP CSP). That probably means that one teacher has several sections of that course — that’s quite a bit. The other high school, Porter Early College High School has fewer than five students in AP CS A. My bet is that there is no CS teacher there, only five students doing an on-line class. That means for 10 high schools and 13K students, there is really only one high school CS teacher.
Edinburg Consolidated Independent School District, over 10K students, 92 students in CS.
This is a district that could grow CS if there was will. There are 6 high schools, but two are special cases: One with less than 5 students, and the other in a juvenile detention center. The other four high schools are huge, with over 2000 students each. In Economedes, that are only 9 students in AP CS A — maybe just on-line? Edinburg North and Robert R Vela high school each have two classes: AP CS A and CS1. With 21 and 14, I’m guessing two sections. The other has 43 and 6. That might be two sections of AP CS A and another of CS1, or two sections of AP CS A and 6 students in an on-line class. In any case, this suggests two high school CS teachers (maybe three) in half of the high schools in the district. Those teachers aren’t teaching only CS, but with increased demand and support from principals, the CS offerings could grow.
It’s fascinating to wander through the Texas data, to see what’s there and what’s not. I could be wrong about what’s there, e.g., maybe there’s only one teacher in Edinburg and she’s moving from school-to-school. Given these data, there’s unlikely to be a CS teacher in every high school, who just isn’t teaching any CS. These data are a great snapshot. There is CS in Texas high schools, and maybe there’s enough there to take root and grow.
A high-level report on the state of computing education policy in US states: Access vs Participation
Interesting analysis from Code.org on the development of policies in US states that promote computing education — see report here, and linked below. The map above is fascinating in that it shows how much computing education has become an issue in all but five states.
The graph below is the one I found confusing.
I’ve been corrected: the first bar says that where the school’s population is 0-25% from under-represented minority groups, 41% of those schools teach CS. Only 27% of mostly-minority schools (75%-100% URM, in the rightmost column) offer CS. This is a measure of which schools offer computer science.
The graph above doesn’t mean that there are any under-represented minority students in any CS classes in any of those high schools. My children’s public high school in Georgia was over 50% URM, but the AP CS class was 90% white and Asian kids. From the data we’ve seen in Georgia (for example, see this blog post), few high schools offer more than one CS class. Even in a 75% URM high school, it’s pretty easy to find 30 white and Asian guys. Of course, we know that there are increasing numbers of women and under-represented minority students in computer science classes, but that’s a completely different statistic from what schools offer CS.
I suspect that the actual participation of URM students in CS is markedly lower than the proportion in the school. In other words, in a high school with 25% URM, I’ll bet that the students in the CS classes are less than 25% URM. Even in a 75% URM high school, I’ll bet that CS participation is less than 75% URM.
Access ≠ participation.
Source: The United States for Computer Science – Code.org – Medium
South Carolina requires CS to fulfill high school requirement, and Keyboarding is no longer CS
Pat Yongpradit of Code.org shared some great news with me. Well, it’s not really “new” — it happened back in March 2018. But it was something that both of us worked on, and it was great to finally see it happen.
South Carolina was one of the first ECEP (Expanding Computing Education Pathways) Alliance states. They had one of the first statewide summits on computing education (see blog post here). They were one of the first states to require computer science for all high school students.
The problem was that they didn’t actually require computer science. They allowed some 90 classes to count as CS, and only six actually contained CS content (like programming or algorithms). Even a course on “keyboarding” counted as “CS” under the South Carolina system. South Carolina resisted changing this requirement, as Tony Dillon of the state Department of Education argued (see this blog post). I’ve worried that other states that mandate CS would fall into a similar trap (see blog post here on that).
That changed March 28, 2018 with this memo. South Carolina has computer science standards. Keyboarding no longer counts.
It’s an interesting question how this happened. I know that Pat and others at Code.org have been working a lot in South Carolina. I know that our South Carolina ECEP collaborators, like Eileen Kraemer, Tiffany Barnes, and Mary Lou Maher, have been working tirelessly on the state. I also know that my involvement from Georgia had limited success. As one Department of Education official said when I was working in Columbia, “No professor from Georgia Tech is going to tell me about AP CS.”
My suspicion is that this happened because there was significant internal and external pressure. South Carolina wasn’t going to do much when it was just external pressure. But when it was both, there were changes made.
Pat has promised me that Code.org is going to be helping South Carolina fulfill their plans for new CS requirements.
Are you talking to me? Interaction between teachers and researchers around evidence, truth, theory, and decision-making
In this blog, I’m talking about computing education research, but I’m not always sure and certainly not always clear about who I’m talking to. That’s a problem, but it’s not just my problem. It’s a general problem of research, and a particular problem of education research. What should we say when we’re talking to researchers, and what should we say when we’re talking to teachers, and where do we need to insert caveats or explain assumptions that may not be obvious to each audience?
From what I know of philosophy of science, I’m a post-positivist. I believe that there is an objective reality, and the best tools that we humans have to understand it are empirical evidence and the scientific method. Observations and experiments have errors and flaws, and our perspectives are biased. All theory should be questioned and may be revised. But that’s not how everyone sees the world, and what I might say in my blog may be perceived as a statement of truth, when the strongest statement I might make is a statement of evidence-supported theory.
It’s hard to bridge the gap between researchers and education. Lauren Margulieux shared on Twitter a recent Educational Researcher article that addresses the issue. It’s not about getting teachers access to journal articles, because those articles aren’t written to speak to nor address teachers’ concerns. There have to be efforts from both directions, to help teachers to grok researchers and researchers to speak to teachers.
I have three examples to concretize the problem.
Recursion and Iteration
I wrote a blog post earlier this month where I stated that iteration should be taught before recursion if one is trying to teach both. For me, this is a well-supported statement of theory. I have written about the work by Anderson and Wiedenbeck supporting this argument. I have also written about the terrific work by Pirolli exploring different ways to teach recursion, which fed into the work by Anderson.
In the discussion on the earlier post, Shriram correctly pointed out that there are more modern ways to teach recursion, which might make it better to teach before iteration. Other respondents to that post point out the newer forms of iteration which are much simpler. Anderson and Wiedenbeck’s work was in the 1980’s. That sounds great — I would hope that we can do better than what we did 30 years ago. I do not know of studies that show that the new ways work better or differently than the ways of the 1980’s, and I would love to see them.
By default, I do not assume that more modern ways are necessarily better. Lots of scientists do explore new directions that turn out to be cul-de-sacs in light of later evidence (e.g., there was a lot of research in learning styles before the weight of evidence suggested that they didn’t exist). I certainly hope and believe that we are coming up with better ways to teach and better theories to explain what’s going on. I have every reason to expect that the modern ways of teaching recursion are better, and that the FOR EACH loop in Python and Java works differently than the iteration forms that Anderson and Wiedenbeck studied.
The problem for me is how to talk about it. I wrote that earlier blog post thinking about teachers. If I’m talking to teachers, should I put in all these caveats and talk about the possibilities that haven’t yet been tested with evidence? Teachers aren’t researchers. In order to do their jobs, they don’t need to know the research methods and the probabilistic state of the evidence base. They want to know the best practices as supported by the evidence and theory. The best evidence-based recommendation I know is to teach iteration before recursion.
But had I thought about the fact that other researchers would be reading the blog, I would have inserted some caveats. I mean to always be implicitly saying to the researchers, “I’m open to being proven wrong about this,” but maybe I need to be more explicit about making statements about falsifiability. Certainly, my statement would have been a bit less forceful about iteration before recursion if I’d thought about a broader audience.
Making Predictions before Live Coding
I’m not consistent about how much evidence I require before I make a recommendation. For a while now, I have been using predictions before live coding demonstrations in my classes. It’s based on some strong evidence from Eric Mazur that I wrote about in 2011 (see blog post here). I recommend the practice often in my keynotes (see the video of me talking about predictions at EPFL from March 2018).
I really don’t have strong evidence that this practice works in CS classes. It should be a pretty simple experiment to test the theory that predictions before seeing program execution demonstrations helps with learning.
- Have a set of programs that you want students to learn from.
- The control group sees the program, then sees the execution.
- The experimental group sees the program, writes down a prediction about what the execution will be, then sees the execution.
- Afterwards, ask both groups about the programs and their execution.
I don’t know that anybody has done this experiment. We know that predictions work well in physics education, but we know that lots of things from physics education do not work in CS education. (See Briana Morrison’s dissertation.)
Teachers have to do lots of things for which we have no evidence. We don’t have enough research in CS Ed to guide all of our teaching practice. Robert Glaser once defined education as “Psychology Engineering,” and like all engineers, teachers have to do things for which we don’t have enough science. We make our best guess and take action.
So, I’m recommending a practice for which I don’t have evidence in CS education. Sometimes when I give the talk on prediction, I point out that we don’t have evidence from CS. But not always. I probably should. Maybe it’s enough that we have good evidence from physics, and I don’t have to get into the subtle differences between PER and CER for teachers. Researchers should know that this is yet another example of a great question to be addressed. But there are too few Computing Education Researchers, and none that I know are bored and looking for new experiments to run.
Code.org and UTeach CSP
Another example of the complexity of talking to teachers about research is reflected in a series of blog posts (and other social media) that came out at the end of last year about the AP CS Principles results.
- UTeach wrote a blog post in September about the excellent results that their students had on the AP CSP exam (see post here). They pointed out that their pass rate (83%) was much higher than the national average of 74%, and that advantage in pass rates was still there when the data were disaggregated by gender or ethnicity.
- There followed a lot of discussion (in blog posts, on Facebook, and via email) about what those results said about the UTeach curriculum. Should schools adopt the UTeach CSP curriculum based on these results?
- Hadi Partovi of Code.org responded with a blog post in October (see post here). He argued that exam scores were not a good basis for making curriculum decisions. Code.org’s pass rates were lower than UTeach’s (see their blog post on their scores), and that could likely be explained by Code.org’s focus on under-represented and low-SES student groups who might not perform as well on the AP CSP for a variety of reasons.
- Michael Marder of UTeach responded with two blog posts. One conducted an analysis suggesting that UTeach’s teacher professional development, support, and curriculum explained their difference from the national average (see post here), i.e., it wasn’t due to what students were served by UTeach. A second post tried to respond to Hadi directly to show that UTeach did particularly well with underrepresented groups (see post here).
I don’t see that anybody’s wrong here. We should be concerned that teachers and other education decision-makers may misinterpret the research results to say more than they do.
- The first result from UTeach says “UTeach’s CSP is very good.” More colloquially, UTeach doesn’t suck. There is snake oil out there. There are teaching methods that don’t actually work well for anyone (e.g., we could talk some more about learning styles) or only work for the most privileged students (e.g., lectures without active learning supports). How do you show that your curriculum (and PD and support) is providing value, across students in different demographic groups? Comparing to the national average (and disaggregated averages) is a reasonable way to do it.
- There are no results saying that UTeach is better than Code.org for anyone, or vice-versa. I know of no studies comparing any of the CSP curricula. I know of no data that would allow us to make these comparisons. They’re hard to do in a way that’s convincing. You’d want to have a bunch of CSP students and randomly assign them to either UTeach and Code.org, trying to make sure that all relevant variables (like percent of women and underrepresented groups) is the same in each. There are likely not enough students taking CSP yet to be able to do these studies.
- Code.org likely did well for their underrepresented students, and so did UTeach. It’s impossible to tell which did better. Marder is arguing that UTeach did well with underrepresented groups, and UTeach’s success was due to their interventions, not due to the students who took the test. I believe that UTeach did well with underrepresented groups. Marder is using statistics on the existing data collected about their participants to make the argument about the intervention. He didn’t run any experiments. I don’t doubt his stats, but I’m not compelled either. In general, though, I’m not worried about that level of detail in the argument.
All of that said, teachers, principals, and school administrators have to make decisions. They’re engineers in the field. They don’t have enough science. They may use data like pass rates to make choices about which curricula to use. From my perspective, without a horse in the race or a dog in the fight, it’s not something I’m worried about. I’m much more concerned about the decision whether to offer CSP at all. I want schools to offer CS, and I want them to offer high-quality CS. Both UTeach and Code.org offer high-quality CS, so that choice isn’t really a problem. I worry about schools that choose to offer no CSP or no CS at all.
Researchers and teachers are solving different problems. There should be better communication. Researchers have to make explicit the things that teachers might be confused about, but they might not realize what the teachers are confused about. In computing education research and other interdisciplinary fields, researchers may have to explain to each other what assumptions they’re making, because their assumptions are different in different fields. Teachers may use research to make decisions because they have to make decisions. It’s better for them to use evidence than not to use evidence, but there’s a danger in using evidence to make invalid arguments — to say that the evidence implies more than it does.
I don’t have a solution to offer here. I can point out the problem and use my blog to explore the boundary.
Unpacking models of what the $USD1.3B might achieve in Computing Education: We need long-term vision and will
I wrote my Blog@CACM post for September on the massive investments in CS Education announced last week (see post here): $200M/year from the US Department of Education announced by the White House on Monday, then $300M over five years from the Tech industry announced on Tuesday. I have read analyses saying that the money isn’t really promised or isn’t new (see concerns in this post), and others are shunning the initiative because of White House policies (see link here). I took the promises at face value. My post starts congratulating Hadi Partovi and Cameron Wilson of Code.org and Ivanka Trump who were behind these initiatives, then I offered two back-of-the-envelope models of what $1.3B in five years could do:
- I extrapolated the New York City model (of a significant computing education experience to every child in every school within grade bands) to the whole of the US, which would likely take more than a magnitude more funding.
- The funding is enough to pay for a CS teacher in every school, but I argued that it wouldn’t really work. We face a shortage of STEM teachers, and those few are the teachers that we can most likely recruit to CS. CS teacher attrition is so high that we couldn’t keep up with the losses, since we have so few mechanisms of pre-service CS teacher preparation.
I received many responses, queries, and criticisms of that blog post (from email, Facebook, and Twitter). I am explaining and unpacking the CACM blog post here. I am not going to delete or change the CACM blog post. My mentor, Janet Kolodner, told me once not to dwell on any paper, trying to make it a masterpiece before publishing it. Rather, she suggested that we should just keep publishing. Explore lots of ideas in lots of papers, and publish as a way of thinking with a community. It’s okay to publish something you thought was right, and later find that it’s wrong — it documents the explored trails.
What I learned about the effort in NYC
I said that NYC was aiming to provide a quality computing learning experience for every student in every grade in every school, as I learned last October (and blogged about it here). I learned that the goal is now mandating a computing learning experience in every grade band, so not every year. It’s still a markedly different model than one teacher per school, and doesn’t change the costs considerably.
I learned that (as one might expect) that the effort in NYC is in both the NYC Department of Education and in CSNYC. It’s great that there are many people in the NY DoEd working on CS education! I was told on Twitter that some of what I attributed to CSNYC is actually in NY Department of Education. I don’t know what I mis-attributed, but I’m sure that it’s because I get confounded over “CSNYC” representing “the effort to provide CS education across NYC” and “the organization that exists to provide CS education across NYC.” I don’t understand the split between NYC DoEd and the CSNYC organization, and I’m not going to guess here. I am sure that it’s important for the people involved, but it’s not so important for the model and national analysis.
Explaining my Estimates in Contrast to Code.org’s
Code.org has made their model of the one-time cost of expanding access to K-12 computer science (CS) available at this Google doc. According to their model, it’s clear that the $1.3B is enough to make CS education available in every elementary and secondary school. They have more empirical data than anyone else on putting CS in whole districts, and their data suggest that costs are decreasing as they gain more efficiencies of scale.
Hadi challenged several points in my blog post on Facebook. I won’t replicate all of our exchange, and only include three points here:
- I argue that we will probably have to pay future CS teachers more in the future, at least as teacher stipends. That prediction is based on trends I see in the states I work with and economics. States are facing teacher shortages, especially in STEM. Aman Yadav shared an article (see link here) that students studying to be teachers fell by 40% from the 2010-2011 academic year to the 2014-2015 academic year. If the supply of teachers is growing more slowly than the rate at which we’re trying to grow CS, we will have to provide incentives to make CS more attractive. Lijun Ni’s dissertation explored the barriers for teachers to become CS teachers (e.g., it’s a lot easier and more pleasant to stay a math teacher). Costs are likely to grow as the labor shortage increases.
- Some of my costs are too high, e.g., I estimated the cost to develop a high school CS teacher as $10K, where NSF’s studies found it was closer to $8.6K. I used a ballpark 50% of high school CS teacher development for the costs of elementary school CS teacher development. Since it’s clear that there is enough to prepare one CS teacher per school, I think my numbers are close enough.
- I believe that extrapolating the NYC model across the country would be even more expensive than it is in NYC. Travel costs in NYC are much less than in rural America. While NYC is very diverse, the rest of the United States is just as diverse. I got to see Ann Leftwich at Indiana University on Saturday. She told me that some of the schools she works with resist teaching science at all! It’s really hard to convince them to teach CS. I expect that there is a similar lack of will to teach CS across the US.
Not all of my estimates are research-based. We don’t have research on everything. Changing all US schools happens so rarely that we do not have good models of how it works. I don’t think that the empirical data of what we have done before in CS Ed is necessarily predictive of what comes next, since most of our experience with CS Ed at-scale is in urban and suburban settings. Getting everywhere is harder. I have observed about “Georgia Computes!” — 1/3 of the high schools in GA got someone that Barbara trained in CS, and that’s likely the easiest 1/3. The next 2/3 will be harder and more expensive.
What I Missed Entirely
As Hadi correctly called me on, the biggest cost factor I missed is the development of curriculum. Back in July, I blogged about Larry Cuban’s analysis that suggested that we need to re-think how we are developing and disseminating CS curriculum in the United States (see link here). We have to develop a lot more curriculum in collaboration with schools, districts, and states nationwide. The US will never adopt a single curriculum nationwide for any subject — it’s not how our system was developed, and it’s why Common Core did not reach all 50 states. The US education system is always about tailoring, adapting, and working with local values and politics. Curriculum is always political.
Mike Zamansky just posted a blog post critiquing some of the curriculum he’s seeing in NYC (see post here). I don’t agree with Mike’s post, but I wholeheartedly agree with his posting. We should argue about curriculum, negotiate what’s best for our students, and create curriculum that works for local contexts. There is going to be a lot of that nationwide as we take steps towards providing computing education to all students. The iteration and revision will be expensive, but it’s a necessary expense for sustainable, longterm computing education.
What should we do with the money
At a talk I gave at Indiana University on Friday, Katie Siek asked me my opinion. What do I want to see the funding be used for?
It would be great if some of that funding could start more pre-service CS teacher preparation programs. I have argued that we should fund chairs of CS Education in top Schools of Education (see post here). Germany uses this model — they create CS Education professors who will be there for a career, producing CS teachers, supporting local communities of CS teachers, and serving as national models. An endowed chair is $1-3M at most universities. That is not very expensive for a longterm impact.
I prefer an NYC-like model of reaching every student to the model of a teacher for every school. The data I’ve seen from our ECEP states suggests that most CS teachers teach only a single computing class, and that class is typically mostly white/Asian and male. One CS teacher per school doesn’t reach all the female and under-represented minority students. Equity has to be a top priority in our choices for these funds, since CS education is so inequitable.
My greatest wish is for computational literacy to be woven into other disciplines, especially across all of STEM. I devoted my career to computing education because I believe in the vision of Seymour Papert, Cynthia Solomon, Alan Kay, and Andrea diSessa. Computational literacy can improve learning in science, mathematics, art, language, and other disciplines, too.
I don’t argue that computer science is more important than other STEM subjects. Rather, computing makes learning in all the other STEM subjects better.
I want us to teach real computational literacy across subjects, not just in the CS class hidden away, and not just in an annual experience. I recognize that that’s a long-term, expensive vision — probably two orders of magnitude beyond the current initiative. We need more long-term thinking in CS education, like building up the CS teacher development infrastructure and making the case to people nationwide for CS education. We are not going to solve CS for All quickly.
When the K-12 CS Framework effort launched back in 2015, I told the story here about a conversation I had with Mike Lach (see post here). He pointed out that the last time we changed all US schools, it was in response to the Civil Rights movement. That’s when we started celebrating MLK Jr Day and added African-American History month. He asked me to think about how much national will it took to make those changes happen. We don’t have that kind of national will in CS education in this country — yet. We have a lot more groundwork to do before we can reach CS education for all students or all schools, and funding alone is not going to get us there.
White House announces $200 million a year for computer science – Code.org #CSforAll
Looking forward to hearing more details at Code.org’s webinar this afternoon. Hadi Partovi posted on Facebook that the money will be provided as competitive grants to schools and non-profits through the Department of Education. Hadi has written a personal blog post about his motivations in supporting this announcement.
The White House memorandum on the announcement is here. I don’t understand all the details here, and the details of the funding are important. If it’s not new funding, then it puts CS in competition with other fields, e.g., if the money is set aside for CS when it was originally allocated for all of STEM. The White House memorandum says, “Establish promotion of high-quality STEM education, with a particular focus on Computer Science, as a Department of Education priority.” If it’s a preference (e.g., a school gets money if and only if they’re teaching CS), it may hurt schools that can’t afford to teach CS yet because they’re stretched thin teaching literacy and mathematics.
Here’s the webinar information: (9/26) at 11am PT, 2pm ET
By web: https://code.zoom.us/j/783490509
By phone: US: +1 646 558 8656 or +1 669 900 6833
Webinar ID: 783 490 509
Today, the White House announced a $200 million per year commitment to computer science education in America’s schools. Unlike similar proposals in previous years, today’s action delivers funding to schools, immediately. Besides expanding access to computer science in schools that previously didn’t teach it, the funds promise to increase participation by women and underrepresented minorities.This funding will jumpstart efforts to ensure every student in every school has the opportunity to learn computer science as part of a well-rounded education. For advocates of increased access and diversity in CS, this is the culmination of years of momentum that began in classrooms, spread to entire school districts, and won the support of business leaders and elected officials globally.
Source: $200 million a year for computer science – Code.org – Medium
A Weak Argument that Silicon Valley is Pushing Coding Into American Classrooms through Code.org
When the New York Times does an article on Code.org, it’s worth noting. I had my class on Computing and Society read the essay and critique it, and they were dubious. They have a bias — they’re all Georgia Tech students in STEM, and almost all majoring in Computer Science. They tend to think learning to code is a good thing. Still, they were concerned about the article, with good reason. They wondered, “Where exactly is Code.org doing something wrong?”
I had similar concerns. I read the quote from Jane Margolis (“It gets very problematic when industry is deciding the content and direction of public education”) and thought, “Jane didn’t just say that. She would have explained what she meant by ‘problematic.'” It felt to me like the quote was taken out of context.
Is Code.org really “deciding” what goes into public education? Or are they simply influencing those who do decide? Maybe Silicon Valley is having undue influence. This article didn’t really make the case.
Code.org’s multilevel influence machine also raises the question of whether Silicon Valley is swaying public schools to serve its own interests — in this case, its need for software engineers — with little scrutiny. “If I were a state legislator, I would certainly be wondering about motives,” said Sarah Reckhow, an assistant professor of political science at Michigan State University. “You want to see public investment in a skill set that is the skill set you need for your business?”Mr. Partovi, 44, said he simply wanted to give students the opportunity to develop the same skills that helped him and his backers succeed. He immigrated as a child to the United States from Iran with his family, went on to study computer science at Harvard, and later sold a voice-recognition start-up he had co-founded to Microsoft for a reported $800 million.
“That dream is much less accessible if you are in one of America’s schools where they don’t even tell you you could go into that field,” Mr. Partovi said.
Even so, he acknowledged some industry self-interest. “If you are running a tech company,” he said, “it’s extremely hard to hire and retain engineers.”
Why are underrepresented minorities and poor over-represented in Code.org courses?
Code.org has a blog post describing their latest demographics results showing that they have remarkably high percentages of women (45%) and under-represented minorities (48%). In fact, their students are 49% on free and reduced meals.
Only 38% of students in the US are on free and reduced lunch. 44% of students in the US are Black or Hispanic (using US Department of Education data).
What does it mean that Code.org classes are over-sampling under-represented groups and poorer students?
I don’t know. Certainly, it’s because Code.org targeted large, urban school districts. That’s who’s there. But it’s not like the classes are unavailable to anyone else. If the perception was these are valuable, shouldn’t more suburban schools be wanting them, too?
One explanation I can imagine is that schools that are majority poor and/or minority might be under-funded, so Code.org classes with their well-defined curriculum and clear teacher preparation models are very attractive. Those schools may not have the option of hiring (say) an AP CS teacher who might pick from one of the non-Code.org curriculum options, or even develop his or her own.
The key question for me is: Why aren’t the more majority and wealthier schools using Code.org classes? CS is a new-to-schools, mostly-elective subject. Usually those new opportunities get to the wealthy kids first. Unless they don’t want it. Maybe the wealthy schools are dismissing these opportunities?
It’s possible that Code.org classes (and maybe CS in high school more generally) might get end up stigmatized as being for the poor and minority kids? Perhaps the majority kids or the middle/upper-class kids and schools avoid those classes? We have had computing classes in Georgia that were considered “so easy” that administrators would fill the classes with problem students — college-bound students would avoid those classes. We want CS for all.
Code.org has achieved something wonderful in getting so many diverse students into computing classes. The questions I’m raising are not meant as any criticism of Code.org. Rather, I’m asking how the public at large is thinking about CS, and I’m using Code.org classes as an exemplar since we have data on them. Perceptions matter, and I’m raising questions about the perceptions of CS classes in K-12.
I do have a complaint with the claim in the post quoted below. The citation is to the College Board’s 2007 study which found that AP CS students are more likely to major in CS than most other AP’s, with a differentially strong impact for female and under-represented minority students. “Taking AP CS” is not the same as “learn computer science in K-12 classrooms.” That’s too broad a claim — not all K-12 CS is likely to have the same result.
Today, we’re happy to announce that our annual survey results are in. And, for the second year in a row, underrepresented minorities make up 48% of students in our courses and females once again make up 45% of our students…When females learn computer science in K-12 classrooms, they’re ten times more likely to major in it in college. Underrepresented minorities are seven to eight times more likely.
Source: Girls and underrepresented minorities are represented in Code.org courses
University CS graduation surpasses its 2003 peak, with poor diversity
Code.org just blogged that we have set a record in the number of BS in CS graduates.
University CS graduates have set a new record, finally surpassing the number of degrees earned 14 years ago.With a 15% increase in computer science graduates (49,291 bachelor’s degrees), 2015 had the largest number of CS graduates EVER! The previous high point was over a decade ago, in 2003.
Source: University computer science finally surpasses its 2003 peak!
But look at the female numbers there — they are less than what they were in 2003. We are graduating 2/3 as many women today as in 2003. (Thanks to Bobby Schnabel for pointing this out.) We have lost ground.
My most recent Blog@CACM is on the new CRA “Generation CS” report, and about the impacts the rise in enrollment are having on diversity. One of the positive messages in this report is that departments that have worked to improve their diversity have been successful. As a national statistic, this doesn’t feel like a celebration when CS is becoming less diverse in just 12 years.
Does pre-service CS education reduce the costs and make more effective in-service PD? Paths to #CS4All
What we’re trying to achieve in CS education in the United States is rarely done (successfully) and hasn’t been done in several decades (see previous post on this). We’re changing the education canon, what everyone is taught in schools. It’s a huge effort, involving standards and frameworks, convincing principals and legislators, and developing teachers and curricula.
Right now, we’re mostly developing the teachers we need with in-service education — which is expensive. We’re shipping around trainers, people providing professional development to existing teachers. We’re paying travel costs (sometimes) to teachers, and stipends (sometimes) for their time.
I have argued previously that we have to move to a pre-service model, where new teachers are prepared to be CS teachers from undergraduate education. It’s the only way to have a sustainable flow of CS teachers into the education system. NYC is working on developing per-service programs now, because it’s a necessity for their CS education mandate. No reform takes root in US schools without being in schools of education.
At a meeting of the Georgia CS Task Force, where talking about the high costs of in-service CS teacher education, we started wondering if the costs might be cheaper in the long-run by growing pre-service education, rather than scaling in-service. Of course, we have to build a critical mass cohort of in-service teachers (e.g., to provide mentors for student teachers) — in many states, we’ve already done that.
Creating pre-service programs at state universities creates opportunities for in-service education that are cheaper and maybe more effective than what we’re creating today. Pre-service programs would require CS Education faculty (and likely, graduate students) at state universities. These people are then resources.
- First, those faculty are now offering pre-service PD, which is necessary for sustainability.
- Regional high school and elementary school teachers could then go to the local university for in-service programs — which can be run more cheaply at the university, than at a downtown hotel or conference center with presenters shipped in from elsewhere.
- The CS Ed faculty are there as a resource for regional high school teachers for follow-up, and the follow-up is a critical part of actually instituting new curricula.
- Many education schools offer resources (e.g., curriculum libraries, help with teacher questions) that would be useful to CS teachers and are available locally with people who can answer questions.
Pre-service programs require more up-front costs (e.g., paying for faculty, setting up programs). But those costs likely amortize over the lifetime of the faculty and the program. Each individual professional development session offered by local faculty (either pre-service or in-service) is cheaper than each in-service session created by non-local presenters/developers. Over many years, it is likely cheaper to pay the higher up-front costs for pre-service than the long, expensive burn of in-service.
I don’t know how to figure out the cost trade-off, but it might be worthwhile for providers like Code.org and PLTW to play out the scenarios.
Top business leaders, 27 governors, urge Congress to boost computer science education – The Washington Post
I saw on Facebook that Hadi Partovi was at Congress. Now I see why — there’s an effort underway to get Congress to fund more in CS education. I’m wondering what they want to get funded. Incentives for teachers? Professional development? Pre-service education? Does someone know the details?
Despite this groundswell, three-quarters of U.S. schools do not offer meaningful computer science courses. At a time when every industry in every state is impacted by advances in computer technology, our schools should give all students the opportunity to understand how this technology works, to learn how to be creators, coders, and makers — not just consumers. Instead, what is increasingly a basic skill is only available to the lucky few, leaving most students behind, particularly students of color and girls.
How is this acceptable? America leads the world in technology. We invented the personal computer, the Internet, e-commerce, social networking, and the smartphone. This is our chance to position the next generation to participate in the new American Dream.
How to Participate in the K12 CS Framework Review Process
I’ve mentioned the K12 CS Framework Process a couple of times before (see this blog post). It’s now available for public comment.
Individuals and institutions are invited to be reviewers of the K-12 CS framework. Institutions, such as state/district departments of education and organizations (industry, companies, non-profits), are responsible for selecting an individual or a group to represent the institution. Reviewers can choose to participate in one or both of the two review periods:
- Feb 3 to Feb 17: Review of the 9-12 grade band concepts and practices
- March 14 to April 1: Review of the entire K-12 concepts and practices
There will be a public webinar (save this link) to launch the first review period on Feb 3 at 8pm ET / 5pm PT. Learn about the development of the framework and how to provide an effective review.
Find different instructions for individuals and facilitators of group reviews, including an informational session kit for review group facilitators at http://k12cs.org/review. Visit this page after 9 am on Feb 3rd and you’ll be able to access the framework draft and an online feedback form for the first public review
Sincerely,
Lian Halbert, K-12 CS Framework development staff
P.S. Are you attending SIGCSE 2016 in Memphis this March 2-5? We will hold a Birds of a Feather session on Thursday March 3 for all SIGCSE attendees – feel free to invite folks so they can learn about the K-12 CS framework.
Recent Comments