Georgia Tech Cracks Down on Learning 979
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.
Unsurprising (Score:2, Interesting)
This makes me happy I went to a progressive college. Now if only I had been thinking ahead enough to go into CS instead of literature, I would be in better shape.
just preparation... (Score:2, Interesting)
What *wouldn't* be a violation? (Score:3, Interesting)
Violation?
If the student asked his father or mother?
Violation?
If the student joined an online discussion group?
Violation?
???????
Ok this is retarded (Score:4, Interesting)
As for what happened to the student....He had a substantial amount of code (probably around 30 lines) that was verbatim with another student. As the article says, he should have not turned it in and lost the 2% instead of cheating. He can't handle responsibility for his actions so he and his dad pitch a fit and blame it on the college of computing.
Tech may not be the top CS school, but I think our program is pretty good, and their strictness when it comes to cheating only adds credence to the degree you get when you graduate from the Computer Science department. The strictness is not a reason to avoid this school, but a reason to come here.
Gilligan's Island rule (Score:2, Interesting)
You may discuss programming projects with your friends, but you are expected to abide by the Gilligan's Island rule3--the only thing you may bring to such a discussion is you, and no written notes may be taken away from the meeting. Looking at, modifying, or copying each other's files or solutions is forbidden. If you are unsure of what is and is not allowed by this policy, please talk to the professor before doing something that might be considered cheating.
3The Gilligan's [sitcomsonline.com]
Island rule states that following a discussion of the project, a break
must be taken for at least a half hour before coding. Watching something
inane like Gilligan's [sitcomsonline.com]
Island on television satisfies this rule.
Re:If they learn from each other... (Score:2, Interesting)
There is no accounting for laziness. To be honest, no university can teach computer science; anyone who will be successful in this field has to have enough interest to persue it as a hobby, if not a lifestyle, in order to succeed. It can be learned solo--I learned more in high school on my own than I ever did in college.
There seems to be this opinion that everyone who takes the course should pass, and this quite frankly disgusts me. Iam currently still persuing my degree and I am saddled by group projects and burdened with seniors who cannot write a compilable line of C. These are not people who should be seniors; they got where they are now by "learning" from their partners.
Re:So? (Score:3, Interesting)
however, this is not a perfect world.
at my lovely college(GVSU), most of the professors I've had are incompetent, can't teach, or just plain don't know the subject matter.
One of my Profs has went so far as using ANOTHER Professors code to teach his classes(IRONY) while not even understanding it. When my classmates asked him for help because none of it made sense, he admitted he only know what it was SUPPOSED to do, not if (or how) it actually worked.
so yeah, I'm disenfranchised with the the entire college situation. there are only a handful of Professors in the CS department who 'have a clue.'
I'd say that I seriously spend about 80-90% of my time working on classwork with someone else because it just doesn't make sense(with the rare exception of Prof. Wolffe- his classes are difficult, and you learn a ton).
I personally learn better having a colleague explain it to me than a professor, simply because I either have a hard time understanding my professor(I can't comprehend accents very well) or the professor just doesn't have a clue.
and don't even get me STARTED on Gen-Ed's!
but then again in CS, it's all about the degree- I occasionally forget I'm supposed to teach myself everything.
one solution (Score:2, Interesting)
So, for example, 45% of the grade could be the final, 10% for participation/attendance, and 45% for a project written by the student alone in a restricted environment (e.g., a proctored computer lab). Problem solved.
This is not to say that there shouldn't be other learning projects. There should be, and they should be non-credit and for the explicit purpose of having the students freely discuss and learn from.
That aside, I think this issue is more complicated than the article allows. I was a TA for an undergrad CS course once, and noticed that several of the brightest students turned in clearly duplicate work on one of the programming assignments. I worried over it for a while and ended up not pursuing it, but I'm not at all sure that was the right thing to do.
Mike
From A Professor's Viewpoint (Score:2, Interesting)
The programming assignments are NOT just "preparation for the final", no matter what the dufus at the Washington Post says. This is computer science. You have to be a capable coder. That's what programming assignments do -- they move you out of book/exam knowledge and into the intricacies of actual usage. This means that if a student is cheating on the programming assignment, he's not hurting himself: the midterm covers issues, not code samples. Instead, he's cheating the rest of the class by making it more likely that he'll get an A and others won't.
Over the course of the past semester I caught almost a quarter of my class plagiarizing (literally copying each other's programming projects), this despite very stern warnings that it would not be tolerated. Those students were all sent to the Honor Court and received a full grade drop or worse (in some cases, community service). Cheating is now listed on their transcripts as well. I also nailed a student who had downloaded code from the web, and then had the audacity to anonymously ask the original author (at CalTech) to de-link his code temporarily so I couldn't find it. Bad move.
The fact of the matter is that computer science is a vocational study. You are learning to be a computer scientist. That includes a combination of skills, both pragmatic ones (knowing how to code and get up to speed with new languages and systems rapidly) and conceptual ones (understanding what O(n lg n) means). Only the second category can realistically be graded via final exams. The first category must be graded via projects. Students cheating on projects are just as bad as students cheating on finals.
Georgia Tech had its requirement for good reason: large numbers of introductory students just go to their friends and say "hey, can you show me how to do this" (e.g. "hey, can you give me your code"), rather than taking the time to figure it out themselves. We don't want students to give us code. We want students to work through the painful process of figuring out how the stuff works. SEEING someone else's solution is next to worthless compared to piecing it together yourself. Just like you can't develop chess-playing skills only by watching someone play. You have to try playing. A lot.
We're not locking students down. If students can't figure it out, they still have a recourse: talk to the TA or the Professor. At least in my classes they do. I'm always here to help students, giving them hints and ideas.
Re:Unsurprising (Score:4, Interesting)
Last time I checked schools are a place of learning, a place where you can afford to make a few mistakes while trying to be the best professional you can be so you can be fully productive once you graduate to the regular workforce. While I don't believe in cheating (what do you learn from it?), I strongly beleive in discussing problems with your peers and comparing answers one difficult problems (to detect things like sign errors especially).
As far as the caliber of Engineers/Computer Scientists this will produce I can't say, but in the real world people work in teams and don't have a professor/ta to consult.
Final word: if you want to stop being vilified in the media GT, you need to release your side of the story and release your Honor code. An Honor Code is of no prestige value if nobody knows what it is, and the only real purpose of the Honor Code is to raise the prestige of your school (that and it's a wonderful dagger to hold over your students heads during tests "Remember, cheating is an _Honor Code_ violation")
Re:Ok this is retarded (Score:2, Interesting)
main() {
int table[N], i,j,s;
s = sqrt(N);
for(i = 2; i N; i++) table[i] = i;
for(i = 2; i N; i++) {
if(table[i]) {
printf("%d\n", i);
for(j = i*(i+1); j s; j += i) table[j]=0;
}
}
}
(I apologize for any typos resulting from my typing this on the fly; you get my point, though.)
If so, they're stupid beyond belief. The point is, no conclusion can be reached unless we can read both peoples' source code, and everybody with something to lose prefers to cover up and pretend nothing has happened rather than to be open and admit they've done something wrong, so I don't think that will happen soon.
Secondly, how large is this program? If this is a 35 line program with 30 lines in common, that's one thing. If this is a parser/compiler/linker for a full-featured OO language (which is a project in many good CS classes), that's nothing and could occur completely by accident.
Re:If they learn from each other... (Score:5, Interesting)
On the bright side, I did get them to do all of the documentation for the project but still....it really scares me how many technically inept people are graduating along with me in my major. On the other hand, it made it a lot easier for me to score the job that I have =)
I've been there (Score:2, Interesting)
The Intro to CS class in question is a required course for ALL students at Georgia Tech, even the Architecture, History, Psychology, etc persons.
It is (now) Scheme, with the 2nd intro class (required for Comp E, EE, Industrial E, CS majors) in Java. Last semester (Fall 2001) 187 student were brought up for academic misconduct.
The actual policy for the course reads:
All assignments must reflect an individual effort, and must be completed "from scratch." It is a violation of the Honor Code to copy or derive solutions from text books, internet resources, or previous instances of this course unless specifically instructed to do so in assignment directions. When instructed to do so, all material not created by you and its source must be clearly identified. Copying solutions from other students, including those who previous took the course, is prohibited. A good guideline is that you must be able to explain and/or reproduce anything that you submit for any assignment.
Yes, reading a textbook and deriving a solution is a violation, talking to your roommate is a violation, I've talked with Deans about these issues, it's a poor way to learn, but when you have ~800 kids/semester going through the course, lines must be drawn.
Re:another ridiculous syllabus (Score:1, Interesting)
If anyone *does* find something really algorithmically "original" he/she should be given a PhD on the spot!
A GT Junior's Perspective (Score:5, Interesting)
From an educator's perspective (Score:2, Interesting)
By having a no-discussion policy, they ensure that students are all doing their own work and learn as much as possible on their own. In more advance course, I am sure they would not have such a policy.
Having said all of the above, I still don't think that the policy is sound. Maybe some modifications to the policy is needed.
Opinion of a Tech student (Score:3, Interesting)
One thing that I noticed about the class was that discussion was rampant, and so was cheating. I openly admit to discussing general points of certain programs and concepts with my best friends. Did I get caught? No. Was I guilty of something? No.
Everyone's code is automatically scanned and then the suspect programs are then checked by an undergraduate assistant. At some point, someone decides that there is enough evidence to point the finger.
If anything, the system doesn't catch enough cheaters.
Condemn the school, I say. (Score:2, Interesting)
Some observations (Score:2, Interesting)
Disclosure: I am a Tech alum twice over (BSCS '95, MSCS '97).
Disclaimer: The Honor Code was put in place after I graduated.
Background:
Comments from a Ga Tech graduate (Score:3, Interesting)
Frankly, I've got mixed feelings.
On the one hand, as many have persuasively pointed out almost no one can defend the notion of prohibiting general conversation and interaction involving course material/ideas/concepts as a good thing for learning in the long run. And I agree with this -- for obvious reasons, engineering as well as literature students should be encouraged to discuss technical as well as philosophical ideas and approaches.
On the other hand, this is an introductory course meant to intellectually test (both figuratively and literally) the capabilities of the students, and it is by design meant to generate a gradient/differentiation of the students' skill sets. This is perhaps the one course that may demonstrate to non-CS majors the work involved in understanding a problem set, designing a solution, and implementing the solution via a programming language -- this is a good thing, and the fact that it's challenging to many doesn't mean that the assignments are patently unfair.
As far back as 1993 (and probably before) Ga Tech was submitting programming assignments to "similarity/copying detection programs" which aimed to detect, and thus deter, near verbatim occurrences ("copying") of code in students' submissions. Students were told UP FRONT that this was being done, and that they would be caught if they cut-n-pasted even a portion of their friend's (or classmates' whose directories/file permissions were a bit too lax allowing visibility to group/world users) assignment.
I think we need to be careful about indicting an entire university or department based on an editorial. At a minimum, we need the cold, hard facts (ie, the likely verbatim similarities -- variables, spacing, comments, etc. -- involved in the code submissions) before getting too one-sided either way.
Yes, you could use this "details unknown" case to condemn Ga Tech's College of Computing of being too much of a nit-picking hard ass, but you surely can't use it question the integrity or individual accomplishment of those that successfully completed their curriculum -- and in the technical fields of CS and engineering, this is a Very Good Thing.
Andy
Re:If they learn from each other... (Score:3, Interesting)
You're implying a lot of neurological theory here that doesn't necessarily exist. More likely it was an issue of confidence. What I have seen more frequently than any other problem in the CS program I went through was a lack of understanding of what it means to be "programming." That is, it doesn't mean sitting there with your UML diagram in one window and your editor in another...it's 5 browser windows full of google searches, three books open on your desk (or floor) and the debugger and a shitload of printfs. It is like, when you first go fishing you are thinking about your casting technique, but when you start doing it you spend half an hour trying to rip a hook out of some half-dead fish's throat with a pair of needle-nose pliers so you can "throw it back" to die 15 feet from your boat.
Moore Method? (Score:2, Interesting)
In this method the students are asked to solve certain problems but given very few resources and stricly forbidden to discuss problems with other students or using the library etc. Students caught doing so were immediatley given an 'F' in the course.
The Moore method is very good at producing thinkers, people with excellent problem solving skills.
Perhaps the Department is using a similar aproach for its introductory courses.
Re:College isn't for learning... (Score:3, Interesting)
Sounds familiar.... (Score:2, Interesting)
Madness. (Score:2, Interesting)
I can understand not having people who merely turn in duplicate disks of someone else's work, but sharing ideas and gaining from that sharing is what a university is supposed to be about. We used to share lumps of code all the time: not the important parts of the projects, but report generators and stuff like that, nifty functions for working round a bug in this compiler or that interpreter...
I don't get how having them all able to do the actual thing is not the goal of them learning.
You watch: in a few years time, the places won't have research students that know how to work properly - they'll not be able to come up with anything they've not been taught, because they'll never have got into the habit of having conversations where the end results are more than the sum of the inputs.
Group learning is a VITAL part of educating people. In industry you don't turn up, get told how to create the solution to this problem and then left to implement it: you have to solve the problem. And you don't have someone who already knows those solutions to tell you them. There is no expert in solving that problem: or you're it. Without the experience in group problem solving and co-operation, those students are going to be useless as productive employees.
Re:From a Tech Student's Perspective... (Score:2, Interesting)
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 would disagree, and would like to offer a counterexample. Sometimes, this kind of collaboration acts as a key to unlock understanding of an important field.
I did a Cybernetics degree, which involved a lot of electronics. I found the analog stuff impenetrable in some areas. One time, we got a homework assignment to work out the voltages at various points in a circuit with a couple of transistors. I was stumped.
So I asked a friend (Tim Parry - if you're reading this, many thanks!) to help me out. We went through the problem with him leading, and together we not only cracked the problem, but solidified my understanding.
I now knew how to apply the theoretical knowledge of Kirchoff's law, and the ideal transistor model. I then went back and redid the excercise by myself, in order to ensure that I had understood it. I still use this stuff today.
Regardless of the particulars of the one case at Georgia Tech, a code of conduct that prevents this kind of cross-fertilization in the name of reducing cheating seems to me to be counterproductive. If it it had been in force at Reading University in 1987, I would have flunked electronics badly. As it is, I now have a valuable mental tool I use every week.
A University of Illinois Alumnus Perspective (Score:5, Interesting)
What utter nonsense. Please keep in mind that you are being taught that your University is right and its critics are wrong in each lecture you attend, if not overtly, then certainly on a subliminal level.
I attended the University of Illinois at a time when it was considered the 2nd or 3rd best university for computer science (Engineering College
In any event, that particular university had an impeachable reputation in computer science. They never had such an asinine rule that students could not discuss the subject and their homework assignments amongst themselves. Not only would such a rule have been unenforcable, or led to the kind of absurdities you are defending here, but it would have precluded one of the most important facets of education, through which people learn any subject, at any level, rudimentary freshman level through advanced post-doctorate: studying, discussing, and digesting the material.
Instead, the homework assignments were made to be sufficiently challenging that, even if you were to collaborate with others, you would learn the material and your grade would reflect how well you learned it. Keep in mind if your work resembles another's too closely you'll get nailed for cheating, so even if several people solved the problem together they'd essentially have to reimpliment it differently from one another
Then there is the bell curve to contend with
Georgia Tech is simply wrong on all counts, and probably too arrogant to recognize and fix the real problem, which isn't their students, but their approach to education.
Maybe it is difficult to see looking in, but there is a good concept behind the rules. Yes, they might not need to be there if everyone was honest, but unfortunately this is not a perfect world, and the restrictive environment helps in the long run.
Now it becomes clear what Georgia Tech is teaching its students. Obedience, and the sublimation of one's intellect to the authority of others, without question. The fact that you would write something like that with a straight face (and for your sake, I truly hope this was a clever troll and not meant in earnestness) is indicitive of the kind of education you are receiving at your university.
I humbly suggest you start shopping around for a more sensible university to transfer to, one that concentrates on teaching science and technology rather than obedience.
The kid's father works for the Washington Post (Score:2, Interesting)
I was a CS at GT myself, but while I was there the entire student body did not have to take those intro CS courses. I can imagine there are quite a few engineering majors who could care less about programming that would have a motivation to cut corners.
Regardless of whether or not the College of Computing is handling this correctly, it's obvious they are getting a black eye from this.
GTWreck