Posts filed under ‘Uncategorized’
I’ve heard this from former students in Silicon Valley. It’s hard to stay in the game for long, because you “age out.”
But one set of statistics has been noticeably absent: the age of those companies workers.Silicon Valleys conversation about diversity has revolved chiefly around gender and race, although the stereotype of the techie as white, male and young has written out the over-40 set as well.”Walk into any hot tech company and you’ll find disproportionate representation of young Caucasian and Asian males,” said Ed Lazowska, who holds the Bill & Melinda Gates chair in Computer Science & Engineering at the University of Washington. “All forms of diversity are important, for the same reasons: workforce demand, equality of opportunity and quality of end product.”
The issues raised about education are particularly relevant to this blog. State cutbacks of funding to universities send a message about what’s valued and what’s not. CS departments in state schools (and elsewhere) are facing enormous increases in enrollment, and without additional resources, are going to be imposing caps — which will serve to reduce the diversity of computing, as it did in the 1980’s. Where we place our resources indicates our values.
Originally posted on Spaf's Thoughts:
There is an undeniable, politically-supported growth of denial — and even hatred — of learning, facts, and the educated. Greed (and, most likely, fear of minorities) feeds demagoguery. Demagoguery can lead to harmful policies and thereafter to mob actions.
I’ve written on this topic here before. I also have cited an excellent essay from Scientific American about how the rising tide of anti-intellectualism threatens our democracy and future (you should read it).
What prompts this post is a recent article about a thinly-veiled political probe of the National Science Foundation, combined with the pending national election in the US. (Some of these issues apply elsewhere in the world, but this is a US-centric post.)
This view is also reinforced by my current experience — I am on a combined speaking tour and family vacation in Poland. I recently visited a memorial to the Katyn massacre, remembering when Soviet…
View original 1,026 more words
Fascinating analysis! It turns out that the number of women getting degrees in CS actually rose in the early 2000’s, but the percentage shared dropped because so many men women were taking CS, too.
Here’s the number of women getting CS degrees:
Here’s the percentage view:
The gains by women actually weren’t keeping up with the overall increase in the population of CS grads. More men were filling those seats than women. As a share of all CS bachelor’s degrees granted that year, females had slipped almost 10 points, from 37% in 1984/1985 to 27% in 2003. The overall trendline was clearly downward, as seen below.
Annie Murphy Paul has a nice article about autodidacts — yes, there are some, but most of us aren’t. MOOCs are mostly for autodidacts. The paper from Educational Psychologist is excellent, and I reading the original as well as Paul’s review.
In a paper published in Educational Psychologist last year, Jeroen J.G. van Merriënboer of Maastricht University and Paul A. Kirschner of the Open University of the Netherlands challenge the popular assumption “that it is the learner who knows best and that she or he should be the controlling force in her or his learning.”
There are three problems with this premise, van Merriënboer and Kirschner write. The first is that novices, by definition, don’t yet know much about the subject they’re learning, and so are ill equipped to make effective choices about what and how to learn next. The second problem is that learners “often choose what they prefer, but what they prefer is not always what is best for them;” that is, they practice tasks that they enjoy or are already proficient at, instead of tackling the more difficult tasks that would actually enhance their expertise. And third, although learners like having some options, unlimited choices quickly become frustrating—as well as mentally taxing, constraining the very learning such freedom was supposed to liberate.
Why the ‘coding for all’ movement is more than a boutique reform – Margolis and Kafai respond to Cuban in Washington Post
Highly recommended reading — Jane Margolis and Yasmin Kafai respond to the concerns of Larry Cuban about the “coding for all” movement (that I blogged on here). They address a wide range of issues, from the challenges of changing school to the importance of education about coding for empowerment.
On a functional level, a basic understanding of code allows for an understanding of the design and functionalities that underlie all aspects of interfaces, technologies, and systems we encounter daily. On a political level, understanding code empowers and provides everyone with resources to examine and question the design decisions that populate their screens. Finally, on a personal level, everyone needs and uses code in some ways for expressive purposes to better communicate, interact with others, and build relationships. We need to be able to constructively, creatively, and critically examine designs and decisions that went into making them.
We’ve talked about this problem before — that it looks like we’re graduating fewer CS undergraduates, despite rising enrollment. Interesting analysis in The Chronicle:
Aside from looking remarkably like the Cisco logo itself a representation of San Francisco’s iconic Golden Gate Bridge, the chart clearly shows fluctuation in interest among undergraduates and graduates in computer science.The reason for that fluctuation isn’t clear from the graph, but we have a couple of theories:
1. The pipeline was primed: In the 1970s and 1980s, many elementary, middle, and high schools taught computer programming to students, according to Joanna Goode. As an associate professor of education studies at the University of Oregon, Ms. Goode has researched access for women and students of color in computer science.“But, as the PC revolution took place, the introduction to the CD-ROMS and other prepackaged software, and then the Internet, changed the typical school curriculum from a programming approach to a ‘computer literacy’ skill-building course about ‘how to use the computer,’”…
2. The job market: Fluctuations in college-degree attainment are often connected to fluctuations in the job market in certain industries.
This is my third blog post in a series inspired by a thread in the SIGCSE-Members list and by the Slate article which argued that “Practice doesn’t make perfect.” Macnamara et al did a meta-analysis of studies of expertise, and found that a relatively small percentage of variance in expertise can be explained through hours of practice. The Slate authors argue that this implies that genetics explains the rest of the variance.
- In the first post (see here), I argued that the practice+genetics is too simple to explain expertise. First, practice can be deliberate, lazy, or teacher-led. Second, there is experience that leads to expertise which is between genetics and practice. The most significant flaw of both Macnamara et al. and Ericsson et al. is ignoring teaching.
- In the second post (appearing yesterday in Blog@CACM), I addressed a claim in the SIGCSE-Members list that programmers are “wired” differently than others. Most CS teachers agree with the Slate authors, that students can NOT be more successful with more work. The evidence that better teaching leads to better learning is overwhelming. In fact, there is significant evidence that teaching can even overcome genetic/innate-ability differences.
Lots of CS teachers believe in the Geek Gene Hypothesis, and for good reason. It’s frustrating to have seemingly no impact on some, especially the lower-end, students. Even the award-winning Porter, Zingaro, and Lister paper points out that the earliest assessments in the class they studied correlate very highly with the final grade. Gas Station without Pumps voiced a similar sentiment in his blog post in response to the Slate article:
But the outcomes for individual students seem to depend more on the students coming in than on what I do. Those students who come in better prepared or “innately” smarter progress faster than those who come in behind, so the end result of the teaching is that differences among the students are amplified, not reduced. Whether the differences in the students coming in are due to prior practice, prior teaching, or genetics is not really knowable, but also not really relevant.
I agree. It’s not really knowable where the difference comes from and it’s not really relevant. The point of my Blog@CACM post is: we can do better. If we can teach spatial ability and subitizing, two skills that have a much stronger claim to being innate than programming, then we can certainly teach people to program better.
If we follow common practice and it’s unsuccessful, it’s not surprising that we think, “I tried. I explained carefully. I gave interesting assignments. I gave good feedback. It’s got to be an innate trait. Some students are just born wired to program.”
I watch my children taking CS classes, along with English, Chemistry, Physics, and Biology classes. In the CS classes, they code. In the other classes, they do on-line interactive exercises, they write papers, they use simulations, they solve problems by-hand. Back in CS, the only activity is coding with feedback. If we only have one technique for teaching, we shouldn’t be surprised if it doesn’t always work
Here’s a reasonable hypothesis: We get poor results because we use ineffective teaching methods. If we want to teach CS more effectively, we need to learn and develop better methods. If we don’t strive for better methods, we’re not going to get better results.
A first step is to be more methodical with how we choose methods. In a 2011 paper by Davide Fossati and me (see here), we found that CS teachers generally don’t use empirical evidence when making changes in how we teach. We act from our intuition, but our students aren’t like us, and our intuition is not a good indicator of what our students need.
Next, we need to experiment with more methods. We want to get to a place where we identify known problems in our students’ understanding, and then used well-supported methods that help students develop more robust understandings. We probably don’t have a wide range of different techniques for teaching assignment, iteration, recursion, and similar concepts? We should try well-supported techniques like pair programming, peer instruction, or Media Computation (see CACM article on these). We should try to expand our techniques repertoire beyond simply grinding at code. We could try techniques like worked examples, Problets, CodingBat, games with learning outcomes like Wu’s Castle, multiple choice questions like in Gidget, the Parson’s Problems in the Runestone Interactive ebooks, or even computing without computers as in CS Unplugged.
We do not make it easy for CS teachers to pick up new, better, more proven methods. Sure, there are the SIGCSE Symposium proceedings, but that’s not a systematic presentation of what to use when. This is on the CS education research community to do better. But it’s also on the CS teaching community to demand better, to seek out better methods and studies of techniques.
If we taught better, there are a lot of problems in CS that we might impact. We might bring in a more diverse group of students. We might make our current students more successful. We might change attitudes about computing. Perhaps most importantly, maybe we as teachers will come to believe that we can teach anyone to program.