I’m learning about the new AP CS Principles class the week. There is some good stuff in it. On the other hand the arrays in the pseudo code that is used to write language independent questions uses one based indexes rather than zero based arrays. This is going to make things interesting.
Most modern text based languages (C, C++, C#, Java, etc.) all have arrays where the index of the first element is zero. Many block based languages (Scratch for example) have the index of the first array element be a one.
As I understand it the logic behind the decision is to make it easier for students who learn with one based arrays. It does disadvantage students who learn with zero based arrays of course but I suspect the “powers that be” expect most AP CS P courses to be taught using block based languages. They may be right.
My school is still deciding what language to use for APCSP (we’re not offering it for the 2016/2017 school year but the year after) but this issue is one we will have to face eventually. Other schools who are using languages like Java and Python will be facing this issue this year. Oh boy!
I think it would be nice if array based questions on the exam include a reminder comment about the index start. Some will argue that it is covered in the handout and that teachers should prepare their students for this issue. And they would be right but under the stress of answering 74 questions in 120 minutes I think a tad extra reminder would be a good idea. Discuss!