Posts tagged ‘computing education’
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.
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.
According to the article linked below, there is a large effort to fill STEM worker jobs in Northern Virginia by getting kids interested in STEM (including computing) from 3rd grade on. The evidence for this need is that there will be 50K new jobs in the region between 2013 and 2018.
The third graders are 8 years old. If they can be effective STEM workers right out of high school, there’s another 10 years to wait before they can enter the workforce — 2024. If they need undergrad, 2028. If they need advanced degrees, early 2030’s. Is it even possible to predict workforce needs out over a decade?
Now, let’s consider the cost of keeping that pipeline going, just in terms of CS. Even in Northern Virginia, only about 12% of high schools offer CS today. So, we need a fourfold increase in CS teachers — but that’s just high school. The article says that we want these kids supported in CS from 3rd grade on. Most middle schools have no CS teachers. Few elementary schools do. We’re going to have to hire and train a LOT of teachers to fulfill that promise.
Making a jobs argument for teaching 3rd graders CS doesn’t make sense.
The demand is only projected to grow greater. The Washington area is poised to add 50,000 net new STEM jobs between 2013 and 2018, according to projections by Stephen S. Fuller, the director of the Center for Regional Analysis at George Mason University. And Fuller said that STEM jobs are crucial in that they typically pay about twice as much as the average job in the Washington area and they generate significantly more economic value.
It is against this backdrop that SySTEMic Solutions is working to build a pipeline of STEM workers for the state of Virginia, starting with elementary school children and working to keep them consistently interested in the subject matter until they finish school and enter the workforce.
Gas station without pump’s post on Garth’s complaint “Teaching programming is not getting easier” intrigued me. Garth does a good job of pulling together a lot of the themes of what makes teaching CS hard today. I think that we can improve the situation. I’m particularly interested in learning how to scaffold the development of programming knowledge, and we have to find ways to create professional communities of CS teachers. There are techniques to share (worked examples, peer instruction, pair programming, Parson’s problems, audio tours), and we’re clearly not doing a good job of it yet.
In programming there are 4 homework problems over the period of a week, none of which are “easy”, and all require some problem solving and thinking. There is somewhat of an incremental progression to the problems but that step from written problem to code is always a big one. It is somewhat similar to solving word problems in math, every student’s favorite task. For programming there are no colleagues available that have as much or more experience to pull teaching ideas from, if there are any other programming teachers at all. There are no pedagogical resources anywhere online for teaching strategies. After watching a number (3) of programming teachers teach it seems the teaching strategy is pretty consistent; show and tell and hope.
My May 2014 Blog@CACM post, “What it takes to be a successful high school computer science teacher” sneaks up on a radical suggestion, that I’ll make explicitly here. High school computer science teachers need to be able to read and trace code. They don’t necessarily need to know much about writing code, and they certainly don’t need to know how to be software developers.
As we are developing our CSLearning4u ebook, we’re reviewing a lot of our prior research on the practices of successful CS teachers. What do we need to be teaching teachers so that they are successful? We don’t hear successful CS teachers talking much about writing code. However, the successful ones read code a lot, while the less-successful ones do not. Raymond Lister has been giving us evidence for years that there’s a developmental path from reading and tracing code that precedes writing code.
Yes, I’m talking about taking a short-cut here. I’m suggesting that our worldwide professional development efforts for high school teachers should emphasize reading and tracing code, not writing code. Our computer science classes do the reverse of that. We get students writing code as soon as possible. I’m suggesting that that is not useful or necessary for high school teachers. It is easier for them to read and trace code first (Lister’s studies) and it’s what they will need to do most often (our studies). We can reduce costs (in time and effort) of this huge teacher development effort by shuffling our priorities and focusing on reading.
(We do know from studies of real software engineers that they read and debug more than they write code. Maybe it would be better for everyone to read before writing, but I’m focusing on the high school teachers right now.)