I spend a lot of time these days thinking about computer science education. In particular, I think about what we should be doing about the rapid decline in enrollment in computer science programs in the United States and indeed in most countries around the globe (India and China being notable exceptions). This is an issue that other educational fields have struggled with over the years, though CS in some ways has its own unique aspects that make it worthy of deeper discussion.
Let's put aside the question of whether we should reverse the trend – I believe there are very good reasons to reverse it and not simply let those professions migrate to China and India. While that is a very valid discussion topic and not without its own controversies, it's one for another day. Suffice it to say that the global demand for well educated IT professionals over the next 10 years will far exceed the capacity of the existing educational systems to provide them, so if we want to keep the economy moving forward, we need to ensure that the workforce is there.
What really interests me are the questions around why kids aren't attracted to the field in the first place, or once in it choose to leave. This is super important, because we can't fix it until we know what's broken.
So here's an interesting data point: while enrollment by women in CS and IT was never good, it turned south a few years before the general trend did, and today the number of women is at an all-time low as an overall percentage of the population. When this started happening, two CMU professors did a study to understand what was driving the drop of women in the field, and eventually wrote a book on their findings. In a nutshell:
- Women were attracted to the field because they saw the potential impact that CS and IT could have on the world. Contrast this with men, who were attracted to the field because they liked taking the box (physical or virtual) apart and understanding how computers work.
- The first couple of years of a CS program centers on taking the box apart and understanding how computers work, with very little practical application and little visible impact. This alone was the reason why many women left the field.
- As computer science is taught today (right or wrong), there is much emphasis on writing code that is heavily critiqued. Many women found this process very discouraging, while many men seemed to shrug it off. Since CS is largely taught as a solitary discipline with little or no support network, this also drove many women out. And I want to be clear: I do NOT think in any way that this implies that men are stronger than women (nor do the authors believe this); it simply suggests that their rewards systems are wired differently. There's also no data to suggest whether that might be “nature” or “nurture”. For the purposes of this discussion, that point is moot.
So here's my key insight: as I talk to students today, I hear both men and women saying what the women were saying five years ago. As near as I can tell, women were the leading indicator for the field – and shame on us for missing that.
So the good news is that the CMU study suggests some practical fixes to some parts of this. Early CS classes can be restructured to emphasize the practical applications and impact without in any way de-emphasizing concepts or quality of the curriculum. Also, the right support networks can be put in place to make sure that when the going gets tough, students don't get discouraged and stick with it.
That's work, but it's straightforward work that can be replicated across different universities. But we're far from done, because there are other recent studies that show that many people are being turned off from CS and IT much earlier – grade 8 or 9 seems to be the key turning point where we are losing them.
Why? It seems to be a combination of factors, all revolving around the key influencers in a kid's life at that age. That includes:
-Parents. A lot of parents are scared off by the news reports that all the IT jobs are being offshored to India and China. It's not true, and we need to get them better information.
-Guidance counselors. I try very hard not to simply blast guidance counselors, because despite being the butt of many jokes over the years many guidance counselors are very well-intentioned and trying to be helpful. But the reality is that when it comes to the IT industry, they are giving out bad information. Part of the blame is ours, because we haven't ensured that they have the good information to give out.
-Peers. This is the biggest irony of them all. Kids today (I have two of my own) are into cell phones and music players (iPods or otherwise). But few of them seem to realize that inside the boxes they carry around are computers and software – and in fact it's the computer and software that make the devices so cool and magical. Once again, it's largely our fault, because we've done nothing to help them to understand that the cool people who are changing the world aren't the ones who design the plastic case; they're the ones who design the stuff inside.
So hopefully by now you've sensed the running theme in my blathering: this isn't someone else's fault or someone else's problem. If you work in the IT industry, or you teach computer science, this is your problem. It's collectively our problem, and we need to step up to fixing it. Also, there isn't one thing that's going to fix it; there are several levers that need to move in order for us to change the direction of our field. We need to talk directly to parents, guidance counselors, and students, and help them understand that this is a cool field that changes the world, with good, high-paying jobs that won't all disappear. We need to make learning computer science fun, engaging, and practical – without sacrificing quality. We need to be mentors and supporters for people learning this field, so that people feel like they are part of a community and want to stay in it.
There are lots of people working hard on re-vamping computer science curriculum, particularly at the college level. I get to see much of it in my job, and it makes be very excited. I worry more about the kids that we lose before college, because there's a “scale-out” problem there that requires thousands of people to reach the parents and guidance counselors and sway their opinion about computing and IT as a career. This really needs to be a grassroots movement; every one of us who cares should minimally seek out the guidance counselor at our kids' schools and have a conversation with him or her about careers in IT.
Let me just end with a statement and a question: I and several other stakeholders at the leading companies in the industry are willing to pitch in to get materials made that would help to “get the facts” out to parents and guidance counselors, in support of a grassroots effort. My question to you: if you were to go talk to a guidance counselor, what facts, figures and materials would you want to have in-hand?