Posts tagged ‘APCS’
The linked blog post below bemoans the fact that the AP CS is growing, perhaps at the expense of growth in AP Statistics. AP Stats is still enormously successful, but the part of the post that’s most interesting is the author’s complaints about what’s wrong with CS. I read it as, “Students should know that CS is not worthy of their attention.”
It’s always worthwhile to consider thoughtful critiques seriously. The author’s points about CS being mostly free of models and theories is well taken. I do believe that there are theories and models used in many areas of CS, like networking, programming languages, and HCI. I don’t believe that most CS papers draw on them or build on them. It’s an empirical question, and unfortunately, we have the answer for computing education research. A recent multi-national study concluded that less than half of the papers in computing education research draw on or build on any theory (see paper here).
Though the Stat leaders seem to regard all this as something of an existential threat to the well-being of their profession, I view it as much worse than that. The problem is not that CS people are doing Statistics, but rather that they are doing it poorly: Generally the quality of CS work in Stat is weak. It is not a problem of quality of the researchers themselves; indeed, many of them are very highly talented. Instead, there are a number of systemic reasons for this, structural problems with the CS research “business model.”
I wrote my May Blog@CACM post on the “Babble of Computing Education,” about the wide variety of perspectives, definitions, and cross-purposes going on in the US in computing education. At the end, I talk about the new Code.org partnership with the College Board and how this may reduce the Babble — the definition of CS Principles will become Code.org. Owen Astrachan, co-PI of the NSF CS Principles grant, and I have a bet for dinner and beer that we made on Facebook. I predict that in the first offering of the AP CS Principles exam, more than 50% of the schools that teach CSP and send students to the exam will be using Code.org curricula. He thinks that there will be greater diversity.
I don’t know how the new partnerships announced below fit into our bet. BJC, PLTW, and other curricula are now going to be promoted by Code.org as their partners. Will a school adopt BJC because Code.org recommends it? I think that’s likely. Will the school believe that they are adopting a curriculum out of Berkeley or a Code.org curriculum? I expect the latter. From schools’ perspective, all the eleven new partners will be Code.org curricula. The definition of CS Principles will become Code.org. That’s not necessarily a bad thing — that may provide a corporate face that will assure administrators in schools who don’t know CS.
“Code.org’s courses already reach millions of students globally in grades K-8,” Partovi said. “But as we expand in high school, we work region by region, and we can’t do it all. We’re leading a movement and we need partners to help.”
When Code.org meets with school districts, it will now also highlight the new partnerships as alternative ways to teach computer science versus utilizing Code.org’s own programs.
Oklahoma isn’t the only state picking a fight over AP US History. Georgia’s legislators just introduced a similar bill (see article here). I disagree with what they’re doing, but I do agree with the argument below. The Advanced Placement program is a kind of “national curriculum.” That’s why efforts like CS Principles are so valuable — they impact many schools across the country all at once. My PhD advisor, Elliot Soloway, argues that it’s past time to establish national curricula (see article here), and he’s probably right. The American political sentiment goes strongly against that perspective.
For other lawmakers, however, Fisher is thinking too small. Oklahoma Rep. Sally Kern (R) claims that all “AP courses violate the legislation approved last year that repealed Common Core.” She has asked the Oklahoma Attorney General to issue a ruling. Kern argues that “AP courses are similar to Common Core, in that they could be construed as an attempt to impose a national curriculum on American schools.”
Every year, Barbara Ericson does an analysis of the AP CS exam demographics by state. The 2013 analysis (see here) got a lot of media attention (see on-going list). Here’s the run-down for 2014. Her detailed national analysis (from which I quote in this document) can be found here, and her detailed race and gender analysis (which I include some) can be found here.
Nationally, 37,327 students took the AP CS A exam in 2014. This was a big increase (26.29%) from the 29,555 students who took it in 2013.
- The number of schools who passed the audit (which is a reasonable proxy for the number of AP CS teachers) went up by almost 300: 2,525 versus 2,252 the previous year.
- The number of female exam-takers was 7,458 (20%) which was up from 5,485 the year before (18.5%).
- The number of black students was 1,469 which was an increase from 1,090 the previous year. The number of Hispanic students was 3,270 up from 2,408 the previous year.
The top 10 states in terms of the number of exams taken were in 2014 were (with their 2014 and 2013 positions listed — Florida rose and Maryland dropped):
But California is also the largest state. If we control for population, here are the top 10 states by # exams in 2014 / estimated 2012 population / 100,000:
Eight states had a decrease in the number of students taking the AP CS A exam from the previous year: Oregon, Oklahoma, South Dakota, Kansas, Montana, Arkansas, West Virginia, and Maine.
Eighteen states had less than 100 people take the AP CS A exam in 2014, with Wyoming still the only state with no students taking the exam.
Barbara had help from Phil Sands from Purdue this year in doing the demographic analysis.
Females: The top three states with the most women taking the exam in 2014 are:
- California with 1599 exams (24%) and a pass rate of 65%
- Texas with 1102 exams (24%) and a pass rate of 51%
- New York with 504 exams (18.4%) and a pass rate of 56%
The top three states with the highest percentage of females taking the exam are (number of women / number of exams)
Mississippi (1/4 = 25%), Washington (260/1048 = 25%), Oklahoma (42/171 = 25%).
Tennessee, which had 31% female exam-takers in 2012, is no longer in the top ten of states.
No females took the exam in Montana (0 women of 4 exam takers) or Wyoming (but nobody took the exam in Wyoming). Eight more states had at least one woman but less than 10 women take the exam:Mississippi (1/4), North Dakota (1/14), Nebraska (2/71), Kansas (3/40), Alaska (4/30), South Dakota (4/29) and Utah (5/104) and Delaware (7/79).
African American: The top three states that had the most African American students take the exam in 2014 are:
- Maryland with 192 exams and a pass rate of 30.2% for African Americans compared to the overall pass rate of 62.1%.
- Texas with 161 exams and a pass rate of 40% compared to the overall pass rate of 55.7%.
- Georgia with 155 exams and a pass rate of 23% compared to the overall pass rate of 45.8%.
Thirteen states had no African American exam-takers in 2014 (number of African Americans / number of exams)
Alaska (0/30), Idaho (0/58), Kansas (0/40), Maine (0/99), Mississippi (0/4), Montana (0/4), Nebraska (0/71), New Hampshire (0/108), New Mexico (0/61), North Dakota (0/14), South Dakota (0/29), Vermont (0/71), and Wyoming (0/0).
Hispanic: The top three states that had the most Hispanics take the exam in 2014 (the College Board separates this into Mexican American, Puerto Rican, and Other Hispanic)
- Texas with 968 and a pass rate of 32% compared to the overall pass rate of 55.7%.
- California with 610 and a pass rate of 45.2% compared to the overall pass rate of 67.3%.
- Florida with 450 and a pass rate of 39.1% compared to the overall pass rate of 42.5%.
Seven states had no Hispanics take the exam in 2014: Iowa (0/119) which is 5.5% Hispanic by population, Mississippi (0/4) which is 2.9% Hispanic, Montana (0/4), North Dakota (0/14), South Dakota (0/29), West Virginia (0/48), and Wyoming (0/0).
Programming with Pseudocode, Keeping Student Interest, the Need for School, and International Curricula: Trip Report on WiPSCE 2014
First week of this month, Barb and I went to Berlin for WiPSCE 2014 conference. See the program here and the proceedings here, and the post on my keynote here. Let me tell you about some of the interesting things I heard there.
We heard about so many international CS curricula efforts. Tim Bell talked about different levels of programming activity going on in different curricula (all the images in this blog post are from me snapping pictures of presentations).
We heard about Austrian efforts, Flemish efforts, and programs I was aware of in the UK, New Zealand, Germany, Israel, and the United States. I had not previously hear much about Poland in CS Ed, but they’ve been including computing in their curriculum for a long time.
Quintin Cutts (Code or (not Code) – Separating Formal and Natural Language in CS Education) talked about a problem that they’re having in Scotland that we’re also facing in the US with the CS Principles effort. There are several different programming languages in use in schools. Nobody wants to be the bad guy to say “You have to use X (maybe Scratch? Alice? App Inventor? Python?), because that’s what the national test will be in.” So, national test-developers are creating pseudocode languages that aim to be understandable without getting hung up on syntax. Scotland has one that’s made up of bits and pieces of other languages (which they call “Haggis” — seriously!). The problem is that if a piece of code is never expected to run, it can have assumptions within it that would have to be cleared up to build a runtime system. Quintin showed how even simple examples of the pseudocode from their national test have all kinds of logical inconsistencies.
It’s a real problem. Allison Elliott Tew’s dissertation (see here for post) showed that weakest performing students had the worst time transferring their knowledge from whatever language they learned to a pseudo-code. That means that your top students are going to be fine with a pseudo-code test, but your bottom students are not going to do well at all — they won’t know all the concepts, and they’re going to trip over the language. A pseudo-code test is going to be another barrier to underprepared students getting into CS.
Now, once you get them in the door, how do you keep them there? One interesting paper (Scratch vs. Karel – Impact on Learning Outcomes and Motivation) compared student interest in using Scratch or Karol the Robot. Scratch is a blocks-based language, and Karol was programmed in a text-based language. Students liked Scratch and performed better with it, but felt that Karol was more “real-life” and thus was more motivating for doing more in CS later. Betsy DiSalvo found similar results with her Glitch students. When comparing Alice and Python, students liked what they could produce with Alice, but felt that Python was more like what real programmers did and was consequently more motivating for some students. This paper has had me thinking, “Maybe we should bring Logo back?” It’s text-based like Karol, designed for students, and we have LOTS of books and other materials available for Logo across the curriculum.
Leigh Ann DeLyser talked about her work with CS NYC (Software Engineering Students in the City). It’s a remarkable program: 1900 students applied for 120 slots, and the selection among the qualified students was by lottery. They did pre and post surveys around the first year of the program, with questions like “Would you like to study CS or SE after this semester?” or “Want to be a computer scientist or software engineer one day?” Females lost much more interest in a future computing career then males.
Finally, the talk that has most been in my thoughts since the conference was by Debby Fields and Yasmin Kafai on their Scratch study (Programming in the Wild: Patterns of Computational Participation in the Scratch Online Social Networking Forum). They studied 5000 visitors to the Scratch website in the first quarter of 2012. First big finding — most of them don’t do much. 55% visit but don’t do anything. The other 45% engage at a variety of levels, and the levels are pretty much gender-balanced. The most active participants are about evenly split male-female.
Debbie and Yasmin defined four “classes” of programming activity based on the programs that these users uploaded to the Scratch website. Booleans are a big differentiator, as are variables and random numbers. The below figure describes how much of each kind of programming block appears in each class of programs, and what percentage of programs they saw land in each class.
Here’s the disappointing part: The highest level of programming activity was almost all boys. Girls don’t go much beyond the simplest programming.
Now, we don’t know much about ages or where these students are or their ethnic group. As Debby pointed out, age and location are self-reported on the Scratch website, and it’s remarkable how many 100 year old Scratch programmers there are in Antartica. Their data suggest that informal education activities like Scratch (or Kahn Academy or MOOCs) are unlikely to reach a broad range of users. Debby pointed out that what students are building influences what students do. If Scratch programmers can tell stories without booleans, how do you motivate more advanced programming actvities if they’re only story-telling? If we want to reach more diverse students, and we want to encourage more kinds of activities, we need school. We need formal education to reach everyone.
April Heard at Georgia Tech built this map for us about where AP CS is taught in the state of Georgia. Some of it is totally to be expected. Most of the schools are in the Atlanta region, with a couple in Columbus, a handful in Macon, and a few more in Augusta and Savannah area.
But what’s disappointing is that huge swath in the south of the state with nothing. Not a single school south of Columbus and west of Brunswick. In terms of area, it’s about 1/3 of the state. Albany is home to Albany State University, the largest HBCU in Georgia. No AP CS at all there. And Georgia is one of the top states for having AP CS.
Sure, there might be some non-AP CS teachers in South Georgia, but we’re talking a handful. Not double, and certainly not a magnitude more than AP CS.
I suspect that much of the US looks like this, with wide stretches without a CS teacher in sight. April is continuing to generate these maps for states that we’re working with in ECEP. Here’s California, with big empty stretches.
Tom McKlin just generated this new map, which overlays the AP CS teacher data on top of mean household income in a school district. The correlation is very high — districts with money have AP CS, and those that don’t, don’t.
Philip Guo did an analysis of what top CS departments teach in their introductory courses (see link below) and found that Python now tops Java. MATLAB tops C and C++ (though not if these are combined), and Scheme and Scratch are near the bottom.
It’s reasonable to say that an AP will only succeed (e.g., students will take it) if they can get credit or placement for the exam in college or university. Typically, colleges and universities give credit for courses that are currently taught. Will we see colleges and universities start teaching CS Principles? Will they give credit for a course that they don’t teach? For languages they don’t teach? Maybe we’ll see more of an influx of CSP languages and courses into colleges and universities. I predict that we won’t.
Scratch is the only visual, blocks-based language that made this list. It’s one of the most popular languages of this genre, which include related projects such as Alice, App Inventor, Etoys, Kodu, StarLogo, and TouchDevelop. The creators of these sorts of languages focus mostly on K-12 education, which might explain why they haven’t gotten as much adoption at the university level.