Call for AP CS Principles Readers

Guest blog post from Barbara Ericson, copying a message from Paul Tyman:

Please consider signing up to an an AP CS Level A or CS Principles reader. We will need lots of new readers for the CSP exam. I did the pilot reading last year and it was interesting to see what the students submitted for their paper about a computing innovation and their code for the create task. The readings are really a great professional development opportunity for you. There is always an invited speaker and demos in the evenings. You will meet lots of great people who care about computer science education, both in high school and higher education teaching. We have a social space in the evenings which is quite busy with lots of card games, board games, and music. There are also groups who walk, do yoga, run, etc. They pay for your travel, hotel, meals, and pay you a stipend as well.

Barb Ericson
Georgia Tech


From: Paul Tymann <[email protected]>

Sent: Saturday, October 1, 2016 9:54 AM
Subject: CSP Readers Needed!!

All,

Current estimates indicate that we will need more than 200 readers to score the AP CS Principles exam that will be administered in May 2017. I need your help recruiting new readers. Could you reach out to a couple of your colleagues and encourage them the apply to be readers? As former readers you are in an unique position to explain the reading process and the benefits of participating.

Potential readers can find out more information about becoming an AP CSP reader, and more importantly can sign up to become a reader, by pointing a browser to:

http://etscrs.submit4jobs.com/index.cfm?fuseaction=85332.viewjobdetail&CID=85332&JID=300364&notes_id=2

Please contact me if you have any questions. I hope to, no will, see you in Kansas City!!


Paul.

How many schools will honor the AP CSP attestation?

My Blog@CACM post this month is A Call to Action for Higher Education to make AP CS Principles Work. The Advanced Placement course on CS Principles becomes “real” this Fall 2016, and the first offering of the exam will be Spring 2017.  I expect that we in academic CS departments in the United States will soon be getting phone calls, “If we offer AP CSP and our students pass the exam, what will it count for at your school?”

When I talk to people who have worked on CSP about this issue, the question I get back in response is, “But there’s the attestation!”  Over 80 schools supported creation of the AP CS Principles course — see the list here.  The wording of the attestation varied by school, but makes these five points (taken from Larry Snyder’s page):

  1. It’s a substantive, important project — keep up the good work!
  2. We intend to give successful students credit at our school
  3. We intend to offer a comparable, content-rich course
  4. We intend to give successful students placement in a sequent course at our school
  5. [Optional] We are willing to have our school listed as supporting AP CS Principle

I don’t know.  My school currently has no plans for #2, 3, or 4, but we did sign the attestation.  (I’m working on coming up with a plan at Georgia Tech, but am not getting much traction.)  I don’t know about the status at other schools that signed the attestation.  I expect that Duke and Berkeley are going to follow-through, since they have done #3.  Some schools don’t give any or much credit for AP, so #2 may be out of the CS departments hands. I don’t know if there’s any legal requirement to follow through on the attestation.

Research Questions from CS Ed Research Class

CSEd-research-class

My CS Ed research class did lots of reading in the first half, and then are developing research plans in the second half.  In between, I asked the students to develop research questions (faces deliberately obscured in picture of the class above), and several colleagues asked me, “Please share what they came up with!”

  • Do we need to teach CS to everyone?
  • How do we make CS education ubiquitous, and what are the costs and benefits of doing so?
  • How effective is Media Computation (and like courses) in “tech” schools vs. liberal arts schools?
  • How do we make individualistic (contextualized, scaffolded, etc.) CS experiences for everyone?
  • What are equal vs just interventions?
  • What is the economic cost of not teaching computing to all?
  • How do we create a community of practice among non-practitioners?
  • How to make CS teachers adopt better teaching practices?
  • How we incorporate CS learning into existing engineering courses vs. create new courses for engineers?
  • How does teaching to all high school students differ from teaching undergraduates?
  • How do people learn CS? Define a CS learning progression.
  • Are those AP CS Principles skills transferable to college CS courses? Or anywhere else?
  • How does programming apply to everyone?
  • What are the enduring computer science/splinter areas?
  • How does the content and order of teaching computing concepts affect retention and transfer to other disciplines?
  • How do we scaffold from problem-based learning to culturally relevant computing projects?
  • What characteristics do successful CS teachers who transition from other disciplines exhibit?
  • Is metaphor useful in learning CS?  Which metaphors are useful?

 

Sally Fincher on the need for CER: What Are We Doing When We Teach Computing in Schools?

I’ve been looking forward to seeing this article appear in CACM for over a year.  Last January and May, I heard Sally Fincher give two talks about computing education research (CER), where she started by describing (failed) efforts to teach reading over the last hundred years.  She created a compelling analogy.  What educators were doing when they simplified the learning of reading seem analogous to our efforts today to simplify the learning of programming — but those efforts to teach simplified reading led to significant harm to the students.  What harm are we doing to students when we teach programming in these new ways?  She is not calling for an end to these efforts.  Rather, she’s calling for research to figure out what we’re doing and to investigate the effects. She agreed to write up her story for Viewpoints, which is published this month in CACM. Thanks, Sally!

Other approaches believe it is more appropriate to use real syntax, but constrain the environment to a particular (attractive) problem domain so learners become fluent in a constrained space. Event-driven environments (such as Greenfoot) or scaffolded systems (like Processing.js) aim for the learner to develop an accurate mental model of what their code is doing, and ultimately transfer that to other environments. Although whether they actually do so remains unclear: we may be restricting things in the wrong way.

Still others hold that coding—howsoever approached—is insufficient for literacy and advocate a wider approach, taking in “computational thinking,” for instance as embedded in the framework of the “CS Principles”: Enduring Understandings, Learning Objectives, and Essential Knowledge.

What is resolutely held common with traditionally formulated literacy is that these approaches are unleashed on classrooms, often whole school districts, even into the curriculum of entire countries—with scant research or evaluation. And without carrying the teachers. If we are to teach computing in schools we should go properly equipped. Alongside the admirable energy being poured into creating curricular and associated classroom materials, we need an accompanying set of considered and detailed programs of research, to parallel those done for previous literacies.

via What Are We Doing When We Teach Computing in Schools? | May 2015 | Communications of the ACM.

Showing Google Maps in JES from Susan Elliott Sim

Cool example of using JES to access external data!

I’ve been teaching CCT 374: Technologies for Knowledge Media course this term. It seemed a natural fit to use a Media Computation approach to teach Python programming. The students have a term project where they had to design an application that uses City of Toronto Open Data. Just about every team decided to make something that involved displaying something on a map. So, I had to figure out how to display arbitrary maps programmatically, as simply as possible. Using the Google Maps API would have been beyond most of the students. Then I found a blog post with a Python program to retrieve static images from Google Maps.

I have adapted the code from the blog post to work within JES (Java Environment for Students) using the Media Computation libraries. I’ve made the code available on a gist.

via Showing Google Maps in JES | Susan Elliott Sim.