Posts tagged ‘computing education’
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.)
Computing education (CE21) researchers are explicitly encouraged in this solicitation. It’s a nice idea to try to deal with the low success rates of NSF proposals these days.
With the goal of encouraging research independence immediately upon obtaining one’s first academic position after receipt of the PhD, the Directorate for Computer and Information Science and Engineering (CISE) will award grants to initiate the course of one’s independent research. Understanding the critical role of establishing that independence early in one’s career, it is expected that funds will be used to support untenured faculty or research scientists (or equivalent) in their first two years in an academic position after the PhD. One may not yet have received any other grants in the Principal Investigator (PI) role from any institution or agency, including from the CAREER program or any other award post-PhD. Serving as co-PI, Senior Personnel, Post-doctoral Fellow, or other Fellow does not count against this eligibility rule. It is expected that these funds will allow the new CISE Research Initiation Initiative PI to support one or more graduate students for up to two years.
Elliot gets it right in his NYtimes quote from this last weekend. Young kids who code are probably not learning much computer science that might lead to future jobs. Rather, they’re “programming” as if it’s a video game. That’s not at all bad, but it makes less believable the argument that we need coding in skills to improve the future labor force.
The spread of coding instruction, while still nascent, is “unprecedented — there’s never been a move this fast in education,” said Elliot Soloway, a professor of education and computer science at the University of Michigan. He sees it as very positive, potentially inspiring students to develop a new passion, perhaps the way that teaching frog dissection may inspire future surgeons and biologists.
But the momentum for early coding comes with caveats, too. It is not clear that teaching basic computer science in grade school will beget future jobs or foster broader creativity and logical thinking, as some champions of the movement are projecting. And particularly for younger children, Dr. Soloway said, the activity is more like a video game — better than simulated gunplay, but not likely to impart actual programming skills.
Remarkable debate on the NYTimes website about “Should coding be part of the elementary school curriculum?” All the debaters have very short statements, and they’re disappointing.
- Hadi Partovi claims “By high school, it can be too late” and “Students learn fast at a young age, before stereotypes suggest coding is too difficult, just for nerds, or just for boys” — I don’t agree with either statement. We have lots of examples of women and under-represented minority students discovering CS in high school. It’s not at all clear that students learn everything quickly when they’re young — quantum physics and CS might both be beyond most second graders.
- But John C. Dvorak’s claim that “This is just another ploy to sell machines to cash-strapped school districts” is also clearly wrong. The computer manufacturers are not playing a significant role in the effort to push computing into schools.
Take a look and see what you think. It’s exciting to have this kind of debate in the NYTimes!
Despite the rapid spread of coding instruction in grade schools, there is some concern that creative thinking and other important social and creative skills could be compromised by a growing focus on technology, particularly among younger students. Should coding be part of the elementary school curriculum?
A really fun article, with videos of lots of classic Basic systems running.
Kemeny believed that these electronic brains would play an increasingly important role in everyday life, and that everyone at Dartmouth should be introduced to them. “Our vision was that every student on campus should have access to a computer, and any faculty member should be able to use a computer in the classroom whenever appropriate,” he said in a 1991 video interview. “It was as simple as that.”
The Economist does a nice job of capturing succinctly the history of teaching computing in schools, the explosion of interest worldwide, and the greatest challenges to making it work.
Above all, the new subject will require teachers who know what they are doing. Only a few places take this seriously: Israel has about 1,000 trained computer-science teachers, and Bavaria more than 700. Mathematics and computer-science graduates generally choose more lucrative trades; the humanities and social-science graduates who will find themselves teaching coding will need plenty of support. Britain is skimping: it is introducing its new curriculum in a rush, and preparing teachers has mostly been left to industry groups such as Computing at School, which helped put together the syllabus. If coding is to take its rightful place in the classroom, it cannot be done on the cheap.
Really interesting new study out of Computing Research Association (CRA). How long does it take to get a PhD in CS? How does that compare to other STEM disciplines? How does it differ based on gender or minority status?
Table 3 and Figure 1 show the median time to complete a Ph.D. since first beginning a graduate program, for each subgroup, for each cohort.
Gender . Women take longer than men. This is true in both cohorts; there is a larger difference (almost a year) in the second cohort.
Citizenship status. In the earlier cohort, students on temporary visas take less time than citizen or permanent resident students. In the later cohort, the median times of the two groups are exactly the same.
Minority status. Students from underrepresented minorities (URM) – that is, racial and ethnic groups underrepresented in computing – take longer than majority students to complete a Ph.D.. In the first cohort, the difference is almost two years; in the second cohort it is close to one year.
Carnegie Class. Eighty percent of doctorates in computing are granted by “Very high research activity” institutions; students at those institutions take noticeably less time to complete their degrees than those at the less-research-intensive institutions.
Cameron Fadjo at Google has been leading the development of a customized search engine for identifying K-12 computer science materials. He asked me to share it with all of you:
Are you a K-12 classroom teacher or after school program volunteer looking for computer science education materials (such as lessons, tutorials, worksheets, or videos)? Visit CS4HS (http://cs4hs.com/resources/) or Google for Education (http://www.google.com/edu/tools-and-solutions/index.html#stem-cs) to access the ‘Search Engine for K-12 Computer Science Education’, a new customized search developed by Google to help you find K-12 coding, computer programming, or computer science resources for your classroom or extra-curricular program.
If states offer career and technical education in pathways (typically 3-4 courses) with a pathway completion exam, they are eligible for Perkins legislation funding to pay for staff and equipment. If AP CS is one of those courses, it’s easier to build the pathway (2-3 courses to define, rather than 3-4) and the pathway is more likely to lead to college-level CS, if a student so chooses. But as the below report mentions, many states believe that Perkins legislation disallows the AP to count. It can, and here’s the report describing how.
If you’re hearing this story in your state, be sure to send your department of education this report!
Career and Technical Education and Advanced Placement (July 2013, PDF)
Traditionally Advanced Placement® (AP) courses and exams have not been recommended for students in Career Technical Education (CTE) programs. This paper, jointly developed and released by NASDCTEc and the College Board aims to bust this myth by showing how AP courses and exams can be relevant to a student’s program of study across the 16 Career Clusters®.
Nice post from Ran Libeskind-Hadas, Chair of Computer Science at Harvey Mudd College, on the importance of computer science for everyone on campus.
College students across all fields are quickly recognizing two important facts: Every well educated citizen should understand something about the computationally-pervasive world in which we live. Second, computing skills are likely to be useful across virtually all disciplines including the arts, humanities, and social sciences.
Many of these students discover computing late in their college lives and/or have other constraints that prevent them from taking more than one or two computing courses. Those students, I believe, are not ideally served by traditional CS 1 and 2 courses which are often designed as the stepping stones of a computer science major. While implementing a queue as a doubly-linked list is probably important for a CS major (although one could reasonably argue that it still doesn’t have to be presented in CS 1), it’s almost certainly not the highest priority for a social scientist or a biologist.
I’ve mentioned before that Yasmin Kafai and Michael Kölling will be keynoters there. Barbara and I will also be there, offering a MediaComp Python workshop.
2014 CSTA Annual Conference
July 14-15, 2014 Pheasant Run Resort, St. Charles, Illinois
The CSTA annual conference is a professional development opportunity for computer science and information technology teachers who need practical, classroom-focused information to help them prepare their students for the future.
- Explore issues and trends relating directly to your classroom
- Learn, network and interact
- Choose from various workshops and breakout sessions
Some of this year’s session topics include:
- Advanced Placement Computer Science
- Computational Thinking
- Increasing Enrollment in Computer Science
- Yasmin Kafai, Professor of learning sciences at the University of Pennsylvania.
- Michael Kölling, Professor at the School of Computing, University of Kent, in Canterbury, UK.
Pre-registration is required and will be accepted for the first 500 teachers. The registration deadline is June 26, 2014. Also, please note that you must complete the payment portion of the online form in order to be fully registered for the conference!
Thanks to the generous donations of our sponsors, the registration fee of $75 (+$60 per workshop) includes lunch, resource materials, and a closing session raffle. The 2014 CSTA Annual Conference is made possible by the generous support of Oracle and Universal Technical Institute.
Please note that all workshops are “bring your own laptop” and that workshop registration is limited to 30-40 participants; so be sure to register early to get your workshop choice.
Register at: www.cstaconference.org
For more information contact: email@example.com
Interesting and detailed response to the decision in Texas (and proposed in New Mexico and Kentucky) to count programming as a foreign language.
When these policy makers look at schools, they see that computer science is not part of the “common core” of prescribed learning for students. And then they hear that Texas has just passed legislation to enable students to count a computer science course as a foreign language credit and it seems like a great idea.
But all we have to do is to look at Texas to see how this idea could, at the implementation level, turn out to be an unfortunate choice for computer science education. Here are the unintended consequences
1. If a course counts as a foreign language course, it will be suggested that a new course must be created.
2. If a new course is created, chances are that it won’t fit well into any of the already existing course pathways for college-prep or CTE.
3. This new course will be added to the current confusing array of “computing” courses which students and their parents already find difficult to navigate.
4. There will be pressure brought to ensure that that course focuses somehow on a “language”. For the last ten years we have been trying to help people understand that computer science is more than programming. Programming/coding is to computer science as the multiplication table is to mathematics, a critical tool but certainly not the entire discipline.
5. If this new course is going to be a “language” course, we have to pick a language (just one). And so the programming language wars begin.