3 ms·
> Now they need a kind of apprenticeship: real tasks to work on, the freedom to experiment and to risk failure, but in an environment that models respect for co
by davidalln 17y ago
> Now they need a kind of apprenticeship: real tasks to work on, the freedom to experiment and to risk failure, but in an environment that models respect for commitment.
As someone who just got out of an AP Computer Science class, I could not agree with this statement more despite the fact that it was written over 15 years ago. While I had an excellent teacher and really enjoyed the class, I found that in the textbook and on the test that we were simply required to demonstrate that we knew the basic components of the Java API, not necessarily how to implement them. Even on the free response questions, the test writers held our hands through unrealistic problems that tested whether or not we knew what a HashMap was and if we knew how to iterate through it.
The GridWorld case study doesn't help either. In their failed attempt the create a more "real world" problem, they created more questions that could be answered on the ability to memorize what classes in the program do what and not on how well you understand programming concepts.
Sure, it makes sense for Google to "test" their job applicants with a programming problem, but I honestly doubt they ask "The following program will throw a (blank) exception".
Perhaps The College Board should structure their curriculum similar to their Studio Art curriculum, where students send in pieces of their portfolio to be judged and "graded". Students should be given a real world application to create or a difficult puzzle to solve that must be turned in at a certain date to be given a grade. Obviously there would be a bit more involved thinking in that process, but I really think that would provide a much more meaningful experience.
Any person can memorize a bunch of rules from an API, but a real "5" student can actually apply those rules and manipulate them to solve any problem thrown at him.