As I talked about in my NCWIT Summit Flash talk, the second step in changing a state’s K-12 computing education policy is figuring out where you are and how you move K-12 in your state.
Rick Adrion found a terrific set of resources that help to get a handle on what’s going on in each state.
- How is your state education system governed? Elected or appointed officials? Turns out that there are just a handful of common models: http://www.ecs.org/clearinghouse/01/08/70/10870.pdf
- Who decides high school graduation requirements in your state? In some states, like California and Michigan, there’s a minimum decided at the state level, so you really have to work at the district level to get CS to count. Here’s a list of the state-level high school graduation requirements in all 50 states, and here’s a state-by-state map so you can look up easily just your state. Amazingly, Massachusetts, Pennsylvania, Iowa, Colorado, and Nebraska have no state-level requirements at all. All the decisions are made at the district level. That makes it really hard to get CS to count.
Resources like these make it more clear why efforts like NGSS and Common Core are in trouble. In quite a few states, most decisions are pushed down to the district level. If states aren’t willing to make decisions for their whole state, how could they even consider requiring national standards?
The below note was posted by Jeff Forbes to the SIGCSE Members list. What an interesting idea — funding to change a whole department!
NSF has posted a new solicitation for proposals, IUSE/Professional Formation of Engineers: Revolutionizing Engineering Departments (RED).
RED focuses on efforts to effect significant, systemic departmental change that impacts undergraduate student success in their formation as computer scientists or engineers. This program is particularly interested in efforts that address the middle two years of the four year undergraduate experience, during which students receive the bulk of their formal technical preparation. RED proposals need to engage the entire department, and the effort must be led by the chair/head of the department.
See http://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505105 for more information.
Note: “Engineering departments” in the solicitation refers to both engineering and computer science departments, regardless of whether those departments are in a school of Engineering.
Letters of Intent are due October 28, 2014.
Perhaps we succeeded in preventing the MOOCopalypse, despite the claims that “Computer Science MOOCS march forward!” Since the MOOC phenomenon was mostly fed by the media, the decline of interest from the media may be a good sign.
The news media’s appetite for MOOC stories has been insatiable. So when the University of Pennsylvania sent an email inviting several hundred education reporters to a seminar on massive open online courses, it anticipated a healthy turnout.
But as the catering deadline approached at the National Press Club, in Washington, organizers realized that they had barely enough registered attendees to justify a platter of finger food.
“We didn’t have a set thing in mind as to how many would attend, but what we were thinking was 15 to 20 from, let’s call them, ‘established’ media outlets,” said Ron Ozio, director of media relations at Penn. “And we got four.”
The university canceled the event.
Really interesting point from Joanna Goode. “CS for All” should not mean “One Kind of CS that All have to take.” Her notion of “CS for Each” goes further than the multiple CS1’s that we have at Georgia Tech. Seymour Papert talked about the value of a personal relationship with a discipline, and I think that’s the direction that Joanna is steering us.
But, as all the students gain access to computer science learning, teachers are charged with the task of teaching each student based on the lived experiences, prior knowledge, and the wonders of the world that the child brings to the classroom. Developing a computer science classroom that welcomes each child requires a culturally responsive pedagogy that views diversity as a strength that should be integrated within the curriculum. Additional instructional supports for English language learners and students with disabilities should be developed and shared to support teachers in a CS for Each model.
Pretty exciting new direction for Scratch! I’m really curious about the research that’s going to come out using ScratchJr. What can students learn to do with ScratchJr, and what’s the distribution (e.g., all kids learn X, but only 10% reach Y)? What do students transfer forward from learning ScratchJr?
ScratchJr is an introductory programming language that enables young children ages 5-7 to create their own interactive stories and games. Children snap together graphical programming blocks to make characters move, jump, dance, and sing. Children can modify characters in the paint editor, add their own voices and sounds, even insert photos of themselves — then use the programming blocks to make their characters come to life.ScratchJr was inspired by the popular Scratch programming language http://scratch.mit.edu, used by millions of young people ages 8 and up around the world. In creating ScratchJr, we redesigned the interface and programming language to make them developmentally appropriate for younger children, carefully designing features to match young children’s cognitive, personal, social, and emotional development.ScratchJr is now available as a free iPad app. We expect to release an Android version later in 2014 and a web-based version in 2015.
via ScratchJr – About.
Below is the article on Facebook’s diversity figure release. (Google really did lead the pack here.) Here’s Twitter’s, LinkedIn’s, and EBay’s. For those of us doing this work, these are not surprising results. But they are super important for showing us where we are now. We have very little diversity in the computing industry. This gives us a sense of what we need to work on, and how to measure progress.
Sadly, Facebook’s numbers look a lot like the other four. I’ll let the figures speak for themselves:Globally the company is 69 percent male, 31 percent female. In terms of ethnicity the company is 57 percent white, 34 percent Asian, 4 percent Hispanic, 3 percent two or more races, 3 percent black and 0 percent other.Scrutinized further, in the tech force of Facebook, 85 percent are male and 15 percent are female. In terms of ethnicity in the tech division 53 percent are white, 41 percent are Asian, 3 percent are Hispanic, 2 percent are two or more races, 1 percent is black and 0 percent is other.
The August issue of Communications of the ACM (see here) includes a paper in the Viewpoints Education column by Uri Wilensky, Corey E. Brady, and Michael S. Horn on “Fostering Computational Literacy in Science Classrooms.” I was eager to get Uri’s perspective on CS education in high schools into the Viewpoints column after hearing him speak at the January CS Education Research workshop.
Uri suggests that the best way to get computational literacy into high schools is by adding computer science to science classes. He’s done the hard work of connecting his agent-based modeling curriculum to Next Generation Science Standards. In Uri’s model, Computer Science isn’t a “something else” to add to high school. It helps science teachers meet their needs.
Uri isn’t the only one pursuing this model. Shriram and Matthias suggested teaching computer science through mathematics classes in CACM in 2009. Bootstrap introduces computer science at the middle school level as a way to learn Algebra more effectively. Irene Lee’s GUTS (“Growing Up Thinking Scientifically”) introduces computation as a tool in middle school science.
In most states today, computer science is classified as a business/vocational subject, called “Career and Technical Education (CTE).” There are distinct advantages to a model that puts CS inside science and mathematics classes. Professional development becomes much easier. Science and mathematics teachers have more of the background knowledge to pick up CS than do most business teachers. CS becomes the addition of some modules to existing classes, not creating whole new classes.
It’s an idea well worth thinking about. I can think of three reasons not to pursue CS through math/science model, and the third one may be a show-stopper.
(1) Can science and math teachers help us broaden participation in computing? Remember that the goal of the NSF CS10K effort is to broaden access to computing so as to broaden participation in computing. As Jane Margolis has noted, CTE teachers know how to teach diverse groups of students. Science and mathematics classes have their own problems with too little diversity. Does moving CS into science and mathematics classes make it more or less likely that we’ll attract a more diverse audience to computing?
(2) Do we lose our spot at the table? I’ve noted in a Blog@CACM post that there are computer scientists annoyed that CS is being classified by states as “science” or “mathematics.” Peter Denning has argued that computer science is a science, but cuts across many fields including mathematics and engineering. If we get subsumed into mathematics and computer science classes, do we lose our chance to be a peer science or a peer subject to mathematics? And is that going against the trend in universities? Increasingly, universities are deciding that computer science is its own discipline, either creating Colleges/Schools of CS (e.g., Georgia Tech and CMU) or creating Colleges/Schools of Information/Informatics (e.g., U. Washington, U. Michigan, Drexler, and Penn State).
(3) Do we lose significant funding for CS in schools? Here’s the big one. Currently, computer science is classified as “Career and Technical Education.” As CTE, CS classes are eligible for Perkins funding — which is not available for academic classes, like mathematics or science.
I tried to find out just how much individual schools get from Perkins. Nationwide, over $1.2 billion USD gets distributed. I found a guide for schools on accessing Perkins funds. States get upwards of $250K for administration of the funds. I know that some State Departments of Education use Perkins funding to pay for Department of Education personnel who manage CTE programs. To get any funding, high schools must be eligible for at least $15K. That’s a lot of money for a high school.
The various CS Education Acts (e.g., on the 2011 incarnation and on the 2013 incarnation) are about getting CS classified as STEM in order to access funding set aside for STEM education. As I understand it, none of these acts has passed. Right now, schools can get a considerable amount of funding if CS stays in CTE. If schools move CS to math and science, there is no additional funding available.
Perkins funding is one of the reasons why CS has remained in CTE in South Carolina. It would be nice to have CS in academic programs where it might be promoted among students aiming for college. But to move CS is to lose thousands of dollars in funding. South Carolina has so far decided that it’s not in their best interests.
Unless a CS education act ever passes Congress, it may not make economic sense to move CS into science or mathematics courses. The federal government provides support for STEM classes and CTE classes. CS is currently in CTE. We shouldn’t pull it out until it counts as STEM. This is another good reason to support a CS education act.
First the good news: STEM enrollment is up. Then the surprising news: Humanities are not losing students to STEM. Rather, it’s the professional fields like education that are losing enrollment. That makes CS Ed (and other STEM discipline-based education research (DBER) fields) the odd winner-losers. Yay, there are more students, but there will be fewer STEM teachers in the future to teach them.
Policy makers regularly talk about the need to encourage more undergraduates to pursue science and technology fields. New data suggest that undergraduates at four-year institutions in fact have become much more likely to study those fields, especially engineering and biology.
And while much of the public discussion of STEM enrollments has suggested a STEM vs. liberal arts dichotomy (even though some STEM fields are in fact liberal arts disciplines), the new study suggests that this is not the dynamic truly at play. Rather, STEM enrollments are growing while professional field enrollments (especially business and education) are shrinking.
The ComputerWorldK agrees. They claim that the smart students were going into business, then Wall Street collapsed, and now they’re going into CS and that’s why we’re having sky-rocketing enrollments.
The number of computer science graduates will continue to increase. Computer science enrollments rose by nearly 30% in the 2011-12 academic year, and they increased 23% the year before that.
The trend of enrollment increases since 2010 bodes well for a “future increase in undergraduate computing production,” according to the report.
The recession that hit in 2008 sent IT unemployment soaring, but it may have done more damage to the finance sector, especially in terms of reputation. That prompted some educators at the time to predict that the recession might send math-inclined students from the world of hedge funds to computer science.
Last year’s IUSE solicitation was wonderfully vague and welcomed all new ideas. The program now has a full solicitation, which is a bit more limiting, but is still an importance source for computing education funding.
The Improving Undergraduate STEM Education IUSE program invites proposals that address immediate challenges and opportunities that are facing undergraduate STEM education, as well as those that anticipate new structures e.g. organizational changes, new methods for certification or credentialing, course re-conception, cyberlearning, etc. and new functions of the undergraduate learning and teaching enterprise. The IUSE program recognizes and respects the variety of discipline-specific challenges and opportunities facing STEM faculty as they strive to incorporate results from educational research into classroom practice and work with education research colleagues and social science learning scholars to advance our understanding of effective teaching and learning.Toward these ends the program features two tracks: 1 Engaged Student Learning and 2 Institutional and Community Transformation. Two tiers of projects exist within each track: i Exploration and ii Design and Development. These tracks will entertain research studies in all areas. In addition, IUSE also offers support for a variety of focused innovative projects that seek to identify future opportunities and challenges facing the undergraduate STEM education enterprise.
The International Computing Education Research (ICER) conference 2014 is August 11-13 in Glasgow (see program here). My involvement starts Saturday August 9 when we have the welcome dinner for the doctoral consortium, which will be run all day on Sunday August 10 (Sally Fincher and I are chairing). The main conference presentations continue through noon on Wednesday August 13. The rest of August 13 and into Thursday August 14 will be a new kind of ICER session: Critical Research Review for work-in-progress. I’m presenting on some new work that I’m getting feedback on related to constructionism for adults. I’ll blog about that later.
Briana Morrison is presenting her paper on developing an instrument to measure cognitive load (early version of paper available here), with co-authors Brian Dorn (my former student, now a chaired assistant professor at U. Nebraska-Omaha) and me. Briana’s research is looking at the impacts of modality on program understanding for students. Does audio vs. video vs. both have an impact on student understanding? She’s controlling for time in all her presentations, and plans to measure performance…and cognitive load. Is it harder for students to understand audio descriptions of program code, or to try to read text descriptions while trying to read text programs?
There wasn’t a validated instrument for her to use to measure the components of cognitive load — so she created one. She took an existing instrument, and adapted it to computer science. She and Brian did the hard work of crunching all the correlations and load factors to make sure that the instrument is still valid after her adaptation. It’s an important contribution in terms of giving computing education researchers another validated tool for measuring something important about learning.
An interesting and insightful reflection by a female at Stanford about why she thinks women don’t go into computing.
I find the question about getting more women in technology an interesting and relevant one. Harvey Mudd’s President, Maria Klawe offered an explanation: “We’ve done lots of research on why young women don’t choose tech careers, and number one is they think it’s not interesting. Number two, they think they wouldn’t be good at it. Number three, they think they will be working with a number of people that they just wouldn’t feel comfortable or happy working alongside.”
Klawe’s findings are just one of many attempts to answer the women-in-tech question. Several articles cite surveys that find girls are avoiding tech careers—ostensibly because we’re shallow and afraid of the stereotype affiliations of being socially awkward, or we’re singularly focused on computers, or we’re physically unattractive. However, I find the female vanity explanation out of touch with the reality of what I’ve experienced as a female undergrad interested in pursuing a career in technology.
At our ECEP meeting after the NCWIT summit earlier this summer, Cheryl Kiras presented some data on community college enrollment that was really eye-opening for me.
This is from a fact sheet American Association of Community Colleges (available here). This is describing the percentage of all undergraduates in a group that are enrolled in community colleges. 56% of all Hispanic undergraduates were enrolled in community colleges in Fall 2012. 48% of all Black students, and 59% of all Native American students. Wow — that really supports the argument that if we want to broadening participation in University level computing, we need to improve the transfer and recruitment paths from Community Colleges into Universities. We can make it better at the University (and we should), but that’s only reaching half the students.
Philip Guo did an analysis of what top CS departments teach in their introductory courses (see link below) and found that Python now tops Java. MATLAB tops C and C++ (though not if these are combined), and Scheme and Scratch are near the bottom.
It’s reasonable to say that an AP will only succeed (e.g., students will take it) if they can get credit or placement for the exam in college or university. Typically, colleges and universities give credit for courses that are currently taught. Will we see colleges and universities start teaching CS Principles? Will they give credit for a course that they don’t teach? For languages they don’t teach? Maybe we’ll see more of an influx of CSP languages and courses into colleges and universities. I predict that we won’t.
Scratch is the only visual, blocks-based language that made this list. It’s one of the most popular languages of this genre, which include related projects such as Alice, App Inventor, Etoys, Kodu, StarLogo, and TouchDevelop. The creators of these sorts of languages focus mostly on K-12 education, which might explain why they haven’t gotten as much adoption at the university level.
Last year, Peter Denning approached me about contributing a post to an on-line Symposium that he was going to hold in the ACM Ubiquity magazine. The opening statement was written by Candace Thille — I am a big fan of Candace’s work, and I really liked her statement. I agreed to provide a response for the symposium.
Back in May, when I originally wrote the ending, I was concerned that so many Computer Scientists were working in MOOCs. MOOCs don’t address the critical needs of CS education, which are broadening participation and preparing more teachers. The real worry I had was that MOOCs would suck all the air out of the room. When all the attention is going to MOOCs, not enough attention is going to meeting our real needs. MOOCs are a solution in search of a problem, when we already have big problems with too few solutions.
My original ending took off from Cameron Wilson’s (then director of public policy for ACM, now COO of Code.org) call for “All Hands on Deck” to address issues of broadening participation and teacher professional development. Extending the metaphor, I suggested that the computer scientists working on MOOCs had gone “AWOL.” They were deserters from the main front for CS education.
This was the first article that I’ve ever written where the editor sent it back saying (paraphrased), “Lighten up, man.” I agreed. I wrote the new conclusion (below). MOOCs are worth exploring, and are clearly attractive for computer scientists to work on. Researchers should explore the avenues that they think are most interesting and most promising.
I’m still worried that we need more attention on challenges in computing education, and I still think that MOOCs won’t get us there. Critiquing MOOC proponents for not working on CS ed issues will not get us to solutions any faster. But I do plan to keep prodding and cajoling folks to turn attention to computing education.
Here’s the new ending to the paper:
MOOCs may be bringing the American university to an end—a tsunami wiping out higher education. Given that MOOCs are least effective for our most at-risk students, replacing existing courses and degrees with MOOCs is the wrong direction. We would be tailoring higher education only to those who already succeed well at the current models, where we ought to be broadening our offerings to support more students.
Computer science owns the MOOC movement. MOOC companies were started by faculty from computing, and the first MOOC courses were in computer science. One might expect that our educational advances should address our educational problems. In computing education, our most significant educational challenges are to educate a diverse audience, and to educate non-IT professionals, such as teachers. MOOCs are unlikely to help with either of these right now—and that’s surprising.
The allure of MOOCs for computer scientists is obvious. It’s a bright, shiny new technology. Computer scientists are expert at exploring the potential of new computing technology. However, we should be careful not to let “the shoemaker’s children go barefoot.” As we develop MOOC technology, let’s aim to address our educational problems. And if we can’t address the problems with MOOC technology, let’s look for other answers. Computing education is too important for our community and for our society.
The ITICSE’14 paper referenced below is getting discussed a good bit in the CS Education community. Is it really the case that enhancing error messages doesn’t help students?
Yes, if you do an ineffective job of enhancing the error messages. I’m disappointed that the paper doesn’t even consider the prior work on how to enhance error messages in a useful way — and more importantly, what has been established as a better process. To start, the best paper award at SIGCSE’11 was on an empirical process for analyzing the effectiveness of error messages and a rubric for understanding student problems with them — a paper that isn’t even referenced in the ITICSE paper, let alone applying the rubric. That work and the work of Lewis Johnson in Proust point to the importance of bringing more knowledge to bear in creating useful error messages–by studying student intentionality, by figuring out what information they need to be successful. Andy Ko got it right when he said “Programming languages are the least usable, but most powerful human-computer interfaces ever invented.” We make them more usable by doing careful empirical work, not just tossing a bunch of data into a machine learning clustering algorithm.
I worry that titles like “Enhancing syntax error messages appears ineffectual” can stifle useful research. I already spoke to one researcher working on error messages who asked if new work is even useful, given this result. The result just comes from a bad job at enhancing error messages. Perhaps a better title would have been “An approach to enhancing syntax error messages that isn’t effective.”
Debugging is an important skill for novice programmers to acquire. Error messages help novices to locate and correct errors, but compiler messages are frequently inadequate. We have developed a system that provides enhanced error messages, including concrete examples that illustrate the kind of error that has occurred and how that kind of error could be corrected. We evaluate the effectiveness of the enhanced error messages with a controlled empirical study and find no significant effect.