Posts tagged ‘teachers’
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.
I’m teaching our introductory course in Human-Centered Computing for new PhD students this Fall. I have a huge reading list to review, including Latour, Geertz, Russell & Norvig, Goffman, Tufte, and so on.
I got to re-read Herbert Simon’s Sciences of the Artificial. I was struck by this quote at the end of Chapter 5.
Those of us who have lived close to the development of the modern computer through gestation and infancy have been drawn from a wide variety of professional fields, music being one of them. We have noticed the growing communication among intellectual disciplines that takes place around the computer. We have welcomed it, because it has brought us into contact with new worlds of knowledge—has helped us combat our own multiple-cultures isolation. This breakdown of old disciplinary boundaries has been much commented upon, and its connection with computers and the information sciences often noted.
Simon, Herbert A. (1996-09-26). The Sciences of the Artificial (MIT Press) (p. 137). The MIT Press.
I believe that the early days of computing were interdisciplinary and multi-cultural. Those interdisciplinary and multi-cultural forces created computer science, but once created, new cultures formed without continuing interdisciplinary and multi-cultural influences. What Simon did not foresee was the development of unique technology-centric culture(s), such as the Reddit culture and Silicon Valley Culture (as described in Forbes and New Yorker). Valuing multiculturalism and diverse perspectives in the early days of computing is in sharp contrast to today’s computing world. (Think Gamergate.)
Note who is considered a computer scientist today. In the early days of computer science as a discipline, faculty in the computer science department would have degrees from mathematics, electrical engineering, philosophy, and psychology. Today, you rarely find a computer science faculty member without a computer science degree. When I first started my PhD in Education and Computer Science at the University of Michigan, one of the CS graduate advisors tried to talk me out of it. “No CS department is going to hire you with an Education degree!” Fortunately for me, he was wrong, but not far wrong. There are few CS faculty in the US today who have a credential in education — that’s not a successful add-on for a CS academic. That’s a far cry from the world described in Simon’s quote.
Annie Murphy Paul is talking about inclusive teaching here, but she could just as well be talking about active learning. The stages are similar (recall the responses to my proposal to build active learning methods into hiring, promotion, and tenure packages). These are particularly critical for computing where we have so little diversity and CS teachers are typically poor at teaching for diverse audiences.
Stages of Inclusive Teaching Acceptance
Denial: “I treat all my students the same. I don’t see race/ethnicity/gender/sexual orientation/nationality/disability. They are just people.”
Anger: “This is all just social science nonsense! Why won’t everyone just get over this PC stuff? When I went to grad school, we never worried about diversity.”
Bargaining: “If I make one change in my syllabus, will you leave me alone?”
Depression: “Maybe I’m not cut out to teach undergraduates. They’re so different now. Maybe I just don’t understand.”
Overwhelmed: “There is so much I didn’t know about teaching, learning, and diversity. How can I possibly accommodate for every kind of student?”
Acceptance: “I realize that who my students are and who I am influences how we interact with STEM. I can make changes that will help students learn better and make them want to be part of our community.”
The Connected Learner is an interesting project led by Mary Lou Maher at the University of North Carolina Charlotte. Her blog post quoted below points to one of the difficulties in talking about teaching among CS faculty.
It seems relatively uncommon for research-track CS faculty to discuss their teaching at conferences and research meetings (no, I’m not saying it never happens, but it is rarely the focus, except at CS education conferences like SIGCSE and ICER). So, while we are likely aware of our colleagues’ research projects, we may not realize that our colleagues are experimenting with innovative teaching methods, trying out new learning technologies or adapting some best practices related to active learning. Because we don’t talk about it, we may think it’s not happening and this can lead to us not wanting to talk about our own innovations. We think our colleagues only value core research, so that is what we focus our own discussions on.
I recently posted a piece about my personal plans for the future, and I talked about how great it would be to be at a place where there were three or more CS Ed faculty — a critical mass. Kevin rightly called me out on that in the comments, suggesting that it would be hard to get more than a couple Computing Education researchers in a US CS department. (Outside the US, there are multiple institutions with critical mass CER communities, including U. Kent at Canterbury and U. Adelaide.)
With this year’s hires, there are now two US campuses with that kind of depth! In both cases, they’re avoiding the problem Kevin describes by spreading across multiple departments, not just in CS.
University of Nebraska at Omaha: I knew that my PhD student, Briana Morrison (dissertation proposal is described here, and her award-winning ICER paper is described here) was joining (my former student) Brian Dorn (here’s a post on his dissertation) in the CS department at UNO. Then I learned that Michelle Friend (whose work with middle school girls in CS was presented at ICER 2013 and mentioned in this post) just finished her PhD at Stanford is also joining UNO in teacher education. They are well-situated to become a (the?) major player in research on CS teacher professional development.
University of California – San Diego: Leo Porter (winner of many SIGCSE and ICER best paper awards, including work described in this post) is in CS, Christine Alvarado (who was key to the growth of women in computing at Harvey Mudd), Scott Klemmer (who gave the keynote at ICER 2012) is in the Design Lab, and Beth Simon (whom still probably has the most ICER publications of anyone) has just returned to UCSD (from Coursera) to join Education. And now, Philip Guo just announced that he’s joining UCSD in Cognitive Science. Philip built the Python Tutor that we use in our ebooks, blogs frequently on CS Ed issues, and has been publishing a ton recently (including four papers at VL/HCC last year) on issues related to learning programming.
While I’m jealous that I’m not part of a critical mass CER group, it’s a great thing for the field — more students, more CS teachers, more development and evaluation of interventions and curricula, more answers for the growing demand for computing education research, and more attention to the issues of computing education.
As readers of this blog know, I started in computing education working in Logo. My first published paper ever was at Logo84, the International Logo Conference at MIT, and an early paper I wrote on using Logo to teach music to young children is still available. I did a post here on all the great interdisciplinary curricula that existed for Logo. There are still Logo workshops available for teachers, and there are slots open for this summer.
The Logo Summer Institute is an intensive workshop in creative computing for K12 teachers, parents, and technology integrators. Our project-based approach supports computational thinking and STEAM learning and teaching. The program is highly individualized to accommodate novices as well as more experienced participants, teachers of different subjects, and those who work in informal settings as well as in classrooms.Learn to code as you explore and create projects using Scratch, Makey Makey, Hummingbird, Arduino, LEGO and a many other hardware and software platforms.The Logo Summer Institute provides a relaxed atmosphere with a small group of colleagues and a great deal of personal attention from experienced workshop leaders. We have a low participant to facilitator ratio and daily advisory meetings to insure that participants’ individual needs are met.
My Blog@CACM post this month is on the AAAS symposium I attended on undergraduate STEM education (see post here). The symposium set up for me a contrast between computing education and other STEM education. In math and science education, faculty are more likely to get continuing professional development and to value education more than CS faculty.
Why is it different in CS? In the blog post, I suggest that part of the issue is maturation of the field. But I have another hypothesis — I suggest that most CS teachers, especially at the undergraduate level, don’t think of themselves as teachers.
In my book Learner-Centered Design of Computing Education, I use Lave & Wenger’s situated learning theory as a lens for understanding motivations to pursue computing education. Lave & Wenger say every learner aims to join a community of practice. Learners start out on the periphery of the community, and work their way towards the center, adopting the skills, values, and knowledge that those in the center hold. They might need to take classes because that’s what the community values, or maybe they do an apprenticeship. The community of practice provides the learner and the practitioners a sense of identity: “I belong with this group. I do this practice. This is who I am.”
Lijun Ni taught me the value of teacher identity. Someone who says “I’m a math teacher” (for example) will join math teacher organizations, will seek out professional development, and will more likely be retained longer as a teacher. That’s their identity.
I believe that many science and math teachers (even at the undergraduate level) feel a sense of identity as teachers. Even at research universities, those teaching the intro courses in mathematics and science are likely teachers-first. They know that they are mostly no preparing future mathematicians, biologists, chemists, and physicists. They are preparing students for their chosen professions, perhaps in engineering, medicine, or computer science. The math and science teachers belong to a community of practice of teachers, e.g., they have a goal to be like the best teachers in their profession. They have an identity as teachers, e.g., they strive to be better math and science teachers.
I suspect that CS teachers feel a sense of identity as software developers. They see themselves as programmers primarily. They see themselves as producing future programmers. They take pride in what they can do with code. They have a sense of guardianship — they want the best and brightest in their field.
There’s a difference between CS teachers as programmers vs CS teachers. Programmers train other programmers. They learn new programming languages, new techniques of programming, the latest tools. Teachers teach everyone, and they learn how to be better at teaching. We need CS teachers to be teachers. It’s less important that they know the latest industry gadgets. It’s more important that they learn how to teach “all” about CS, and how to teach that CS better.
When Grady Booch came to SIGCSE 2007, I was surprised at how excited everyone was — people still talk about that visit (e.g., see the explanation for the BJC approach to computing). I realized that, for most of the people in the room, Grady was a role model. He was at the center of community that they most cared about. Note that Grady is not a teacher. He’s an exceptional software engineer.
There are serious ramifications of a teacher with an identity as a software engineer. I had a discussion a few months ago with one of our instructors, who told me, “I just don’t get why women would even want to be in computer science. Working in a cubicle is not a great place for women to be! They should get a better job.” I was shocked. I didn’t tackle the gender issues first. I started out trying to convince him that computer science doesn’t just lead to a cubicle. You could study computer science to become something other than a software developer, to work somewhere other than a cubicle. He wasn’t buying my argument. I realized that those cubicle jobs are the ones he wants to prepare students for. That’s where he imagines the best programmers working. He doesn’t want to teach computer science for whatever the students need it for. He prepares future programmers. That’s how he defines his job — a master software engineer with apprentice software engineers.
I am calling out undergraduate CS teachers in this post, but I suspect that many high school CS teachers see themselves as software developers (or as trainers of software developers), more than as teachers of computer science. I hear about high school CS teachers who proudly post on the wall the t-shirts of the tech companies who employ their former students. That’s a software developer focus, an apprenticeship focus. That’s not about teaching CS for all.
What would it take to shift the community of practice of CS teachers to value teaching over software development? It’s an important change in perspective, especially if we care about CS for all. Not all of our students are aiming for jobs in software development.
How did other STEM disciplines do it? How did they develop a culture and community of practice around teaching?