Georgia Tech Cracks Down on Learning
The Washington Post has an article today on a Georgia Tech student who almost flunked his intro to comp sci course for just discussing his homework with someone else. Note that no one including the faculty accused him of actually copying any code from anyone. However, the "honor code" at Georgia Tech "forbids its introductory computer science students from seeking any help from other students on their homework." The faculty recorded part of his violation on the forms as "He was trying to learn it." This is something that high school seniors might want to keep in mind when selecting which university to attend.
Those policies are really only for the introductory courses. Face it, coding is something that takes time. It is applied. You cannot be tested in just an hour on coding abilities. The homework assignments for CS13xx serve as a form of test.
Once the students "pass" this test and take later CS courses, most of the projects are collaborative in nature from the sheer magnitude of what has to be coded. But at some point, people have to be judged on their ability to code. Find me a better way to judge and I'll be all ears.
And the CS13xx courses have newsgroups for asking questions and have tons of TAs. There are recitations and labs and office hours. There is plenty of a chance for students to ask for help and get help. Unfortunately, too many students are lazy bastards and don't want to put forth the effort of doing the assignment honestly and getting help when they need it.
I'm a graduate student in CS at Georgia Tech, and I recently graduated from their undergraduate program.
Georgia Tech is in no way against teamwork. In fact, in many LATER courses, it is not only encouraged, but required to pass. In the introductory course, however, students are expected receive a firm foundation in the BASICS of programming and computer science like recursion, searching, sorting, algorithmic complexity, data structures, trees, graphs, etc. If a student cheats his way through ANY of these concepts, and expects to survive a later computer science course, he will not only damage his own grade, but the grade of his teammates as well.
I'd also like to point out a couple things either pushed aside or conveniently not mentioned in the article. First, the student in question was NOT accused of discussing his assignment with another student. To my knowledge, regular discussion of assignments is a very commonplace occurrence--especially on the four newsgroups available for the class. He was accused for CHEATING. No cheatfinder, however good, is going to find out if people DISCUSSED anything. It's only going to find people who have VERY similar, copied, code. Secondly, I'd like to mention that the person in question is also, apparently, the son of a Washington Post editor.
Write a java applet that does x with y functions using a hashtable. You can consult any paper materials you have on your person. No talking to anyone in the classroom except the teacher. You have an hour.
In my CS courses, tests in this format are given all the time. The Chairman of the TCU CS Department, Dr. Richard Rinewalt, has been head judge of the ACM programming contest-THAT programming contest-for several years. He supports this format and knows that it works. I believe it's reasonable to trust what he is doing.