http://bit.ly/1YFwWv0 November 15, 2015
In May 2017, the Advanced Placement (AP) examination in CS Principles (AP CSP) will be offered for the first time (see the AP CS Principles website at http://apcsprinciples.org/). The first high school classes to prepare students for the exam will be starting this coming Fall 2016. The existing AP CS Level A exam is not going away (see the AP CS website at http://bit.ly/1QcgLSZ).
The AP CSP course and exam were created to provide a more welcoming, a more generally useful, and a less programming-intense introduction to computer science. Individual states make up elementary and secondary school policy in the U.S. Creating a new AP course in CS is a way of providing a new path into CS to everyone. U.S. high schools want to offer AP courses to their students. Having more high schools offering a more accessible AP computing class can help to increase access to high-quality computing education at the high school level—if students take the class.
It is in the interest of computing departments in higher education to support AP CSP, in order to get a more diverse student body interested in CS and coming to our campuses. For AP CSP work, CS faculty at colleges and universities need to take action. Let me explain what I mean in terms of three questions—whose answers I do not know.
Question 1: Will colleges and universities offer CSP-equivalent classes?
The Wikipedia page on Advanced Placement (at https://en.wikipedia.org/wiki/Advanced_Placement) explains the program this way:
Advanced Placement (AP) is a program in the U.S. and Canada, created by the College Board, which offers college-level curricula and examinations to high school students. American colleges and universities often grant placement and course credit to students who obtain high scores on the examinations. Some colleges use AP test scores to exempt students from introductory coursework, others use them to place students in higher designated courses, and some do both.
In general, AP courses are designed to replicate existing college-level introductory courses. AP CS A is explicitly designed to be like existing introductory computer science courses ("CS1") across the U.S. and Canada. CSP is different, because it is being created from scratch by the College Board, with U.S. National Science Foundation (NSF) funding.
Will CS departments start offering CSP-like courses? Based on Philip Guo's recent analysis of introductory courses at universities (at http://bit.ly/W0vtox), there is not much sign that CSP courses are being created (see the blog post at http://bit.ly/21sTYYt). I am not even sure those who initially offered CSP will keep doing so. My institution was one of the pilot sites that offered CSP at the college level (you may access a list of pilot sites at http://www.csprinciples.org/home/pilot-sites). There are no current plans at Georgia Tech to offer the course ever again. Since it was not a requirement for anyone, few students signed up for the pilot offering. Given the massive enrollment surge, there is little appetite for creating and offering additional classes—especially when no degree programs on our campus require anything like CSP.
Question 2: Will colleges and universities give placement or credit for a course they do not offer?
I do not know how all universities deal with AP credit. At Georgia Tech, we can only give credit for an existing course. An AP course might count as taking some course, or might allow you to skip to a more advanced course. If we do not offer a CSP-like course, we cannot give credit for it.
We do offer a Media Computation introductory course in computing for non-CS majors (http://coweb.cc.gatech.edu/mediaComp-teach.
If a student was admitted to Georgia Tech having passed the AP CSP exam, we might give them credit for the Media Computation. The problem is that our non-majors course has much more programming in it than AP CSP, and there is a pathway from the Media Computation course into other CS courses. If students come in with CSP credit and choose to take more CS courses on that pathway, they will not have the background to succeed.
Question 3: Will high school students take AP CSP if it doesn't count for credit or placement?
Students take AP classes for a variety of reasons. My daughter is a high school senior, and she has been taking AP classes to demonstrate to college admissions officers that she can handle rigorous courses, but she is picking AP classes that she thinks are relevant to her college plans.
Some high school teachers have told me their students choose AP courses in order to decrease their future college costs. Taking equivalent classes at the high school level buys college credits at a lower cost.
Some high school teachers have told me their students choose AP courses in order to decrease their future college costs. High school AP classes are typically far cheaper than college classes. Taking equivalent classes at the high school level buys college credits at a lower cost. If the AP class has no college credit equivalent, it may be less attractive to the students who care about the credit or placement.
U.S. college and university CS departments need to figure out their plans for how they will handle students who are admitted having passed the AP CS Principles exam. We need to be able to explain how AP CSP will count in our programs. In my institution, some possible options (like creating new classes, or getting other degree programs to offer credit for new classes) take a long lead time.
For students who care whether AP courses count for credit or placement, we should have answers for them soon, as they plan to register for the Fall 2016 school year. We need to be able to tell high school principals and teachers it is worthwhile to offer the course, and tell high school students it is worthwhile to take the course. The time to figure that out is now.
From the outset, I have liked the content of the Principles course.
But from the outset, I have raised the objection that Principles will be something of an orphan course because it is not and will not be an intro course in the CS major.
There was a time when all of this might have been worked out. Way back at SIGCSE 2011 in Dallas, there was a presentation on the not-yet-finished new version of the CS curriculum guidelines.
I argued then that the Powers That Be who were looking at curriculum in the universities ought to be figuring out where Principles might fit in, and the Principles people needed to be working with the curriculum people in order to negotiate a place.
Apparently that did not happen. The two groups seem to have followed independent paths. Did the Principles people get involved in Curricula 2013? Did they then get rebuffed? If so, on what basis?
I do not think it makes sense to say that higher education MUST change just because there is this new course. If change is necessary, then change should be justified based on educational merits that could have been argued years ago. I would like to hear the history of why the content of Principles did not make it into Curricula 2013.
You could have asked question 4: Why do university CS programs demand Calculus and Physics, but not CS at high school?
Duncan, higher education should take this as an opportunity. AP CS Principles is a good course. By giving some kind of credit or placement in higher education, we encourage more schools to offer AP CSP and encourage more students to take AP CSP, which gives us more and more diverse students in higher education. It is a good deal for us.
Andrew, if university CS programs were to demand CS at high school, we would accept very few students. For example, less than 10% of high schools in New York City offer any CS at all (see http://nyti.ms/1NGh8Xe) and less than 10% of high schools nationwide offer AP CS. I ask a different question, Andrew. Why aren't we requiring CS of all undergraduates? It is cheaper and easier to do than changing elementary and high schools, and leads to greater long-term change—see http://cacm.acm.org/blogs/blog-cacm/108448-if-you-want-high-school-cs-require-undergraduate-cs/fulltext.
©2016 ACM 0001-0782/16/02
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and full citation on the first page. Copyright for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or fee. Request permission to publish from firstname.lastname@example.org or fax (212) 869-0481.
The Digital Library is published by the Association for Computing Machinery. Copyright © 2016 ACM, Inc.
When speaking of credit in the context of AP, people often assume they are not just getting a genericgraduation credit, but are making progress towards the major, and in particular (maybe) starting at a higher point in the major. It seems extremely unlikely that CSP will provide that sort of credit, as you yourself admit. The question is, will the College Board say that explicitly? I wonder how many students taking CSP in high school will realize that without the CB saying so, and if it does say so (which I think would be the responsible thing to do), what that does to enrollment in the program.
Schools that are giving "credit" for AP CSP are giving credit for a non-majors introduction to computing course. The credit is not towards a CS major.
The College Board doesn't typically make any kind of statement for how passing an AP exam counts. That's a decision made by the receiving school.
I disagree that most high school students expect to get credit towards a particular major when they take an AP exam. The most popular AP exams in the United States are English Composition, US History, English Literature, Calculus, and US Government. 529,000 students took the AP English Composition exam in 2015 -- I doubt that all of those students were expecting credit towards an English major.
"Drumming up support" is an admission of fundamental failure. I am sympathetic toward the Principles course to widen knowledge of CS and perhaps inspire more people to consider pursuing CS as a major. This AP course has been developed differently from any previous AP course, and therein lies the problem: There is no target university course corresponding to it. The attempt offers supply with no prospect of demand.
As noted, no CS department will give major credit for such a course. In departments in which I have worked, there have been courses for non-majors that used to cover BASIC programming or office apps and now have evolved into more appropriate content and may fulfill a General Studies requirement for non-CS majors. Sometimes such a university course is a "cash cow" for department Student Credit Hour production at a low cost. Perhaps that is the target university course for the Principles AP course.
You're right, of course. The creation of the CS Principles class is an admission of fundamental failure of CS departments to provide access to computing education for anyone but CS majors. The demand is there -- we in higher education CS have not met the demand.
Every study of the programming labor force finds that the professional software developer is a minority segment. The recent Change the Equation study (see https://computinged.wordpress.com/2016/01/20/end-user-programmers-are-at-least-half-of-all-programmers/ ) found that half of all programmers aren't even in STEM. The seminal 2005 Scaffidi, Shaw, and Myers study (http://dl.acm.org/citation.cfm?id=1092394 ) found that professional software developers are only 25% of the programming workforce. My recent book "Learner-Centered Design of Computing Education" reviews the research on providing computing to everyone. The goal of CS Principles isn't to create CS majors. The goal is to provide computing literacy to the rest of campus.
The College Board has been taking a bold strategy in recent years, in the face of University faculty unwilling to reform their classes. It's changing AP courses, in hope that the flood of students with a better background might change higher-education. They started this reform effort with AP Calculus, and CS Principles is following the strategy. University CS departments aren't doing much to provide for the non-CS majors who need to use computing, so the College Board is using the AP program to stimulate change.
I hope that University CS departments can learn from the College Board's lead.
Displaying all 4 comments