Slashdot Mirror


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.

14 of 916 comments (clear)

  1. Honor Codes by Cato+the+Elder · · Score: 4, Insightful

    Rigid "honor codes" lead to ridiculous situations. I am reminded of a story from a friend who went to Davidson, where someone she knew was disciplined for honor code violations after taking an extra can of soda that a machine mistakenly dispensed. A true honor code should be flexible. Otherwise, what is the point? Everyone knows what they are supposed to do when the rules are cut-and-dry, the purpose of an honor code should be to foster honorable/moral behavior in situations the rules do not cover.

    1. Re:Honor Codes by Binky+The+Oracle · · Score: 5, Insightful

      While not directly related, this seems to be indicative of the same mindset that public schools have taken on: it's better to deal with quantifiable things. It's better to teach the mechanics of a thing than to teach the student the underlying lesson. A history test is for memorizing dates, not for learning why events happened or what that event's impact might have been. An honor code isn't a framework for living your life, it's a rigid, static thing that exists in a vacuum.

      I'd rather have students learning why Napolean was sent trudging back through the snow than the date he headed back toward France. And I'd rather have teachers and professors (assuming they're capable) given the responsibility and authority to make their own decisions - especially when dealing with things as nebulous as an honor code.

      This episode reminds me of the recent case where the teacher flunked several students for blatant plagarism only to have the touchy-feely school board overturn the decision. Guess they didn't want to anger the voters and risk losing reelection.

      It's sad, really. We're turning out a bunch of automatons in the name of improving the percentage of students who can pass a standardized test. These overly-strict honor codes are simply the same film projected on a different canvas.

      Sixty years ago, schools in the U.S. taught Greek and Latin. Now they teach remedial English (or Spanish depending on your local election demographics).

      --

      Slashdot comments... splitting hairs since 1997.

    2. Re:Honor Codes by aozilla · · Score: 4, Insightful

      Rigid "honor codes" lead to ridiculous situations.

      And generally tend to encourage more cheating. If most of the students are already doing something which could get them expelled, it doesn't exactly give them incentive to report the "true" cheaters, for fear that they'll get reported in retaliation. It also gives teachers little incentive to penalize students for minor infractions. If I caught a student cheating on homework, I might give him/her a zero for that homework. But if the school rules force me expel that student, I might decide to let the incident go unreported instead.

      --
      ok then your [sic] infringing on my copyright! Could you as [sic] me next time before STEALING my comments for your own?
  2. Notice the most indefensible part by Beryllium+Sphere(tm) · · Score: 4, Insightful

    [quote]
    A brand-new rule says a computer science student is wrong to try to seek answers to questions ANYWHERE other than from course materials or Georgia Tech staff
    [/quote]

    An exam is one thing, homework is another. Homework is supposed to reinforce the skills you'll need later. One of those skills is research.

    How To Be An Incompetent Engineer 101...

  3. Before we condemn the school... by cperciva · · Score: 4, Insightful

    wouldn't it be good to wait until we hear the school's side of the story? It is very easy to claim that you were only trying to learn the course material, but with only a single quote -- which was certainly taken out of context -- to indicate the school's view on the situation, it is hardly fair to weigh in on either side.

  4. Re:Ok this is retarded by btellier · · Score: 5, Insightful

    No one who matters actually ever believes that stories or capsules on Slashdot are accurate. As soon as I read this I knew it was BS. The article summary makes it sound like this guy walked up to another student and said

    "Hey, did you use a sprintf() or two strcpy()'s to do merge those strings? sprintf()? Cool. Oh crap I just got expelled."

    Meanwhile, I'm sure the conversation was more like

    "Holy shit dude.. I haven't been to class in 6 weeks and I have some homework due tommorow or I'm going to fail. What's your advice? I see. I see. I don't understand what you're talking about, let me see your code."

    "OK, thanks for the help! Oh crap, I got caught. Crap, I'm expelled, but at least my dad built the Dr. Herbert J. Furnsworth III Memorial Science Lab. Hey Dad, let's raise a stink."

    "OK son. Maybe we can even get it posted on Slashdot, where even the most foul turd can be sprayed with enough perfume to make it smell like the cosmetics counter in Macy's!"

  5. Re:Ok this is retarded by cheinonen · · Score: 4, Insightful
    There is a big difference between learning from other code, and writing code when that's what the assignment was. One professor always told us that you were stupid to start over at the beginning if code already existed and works and this is true. If you wrote code for a program that does part of what your new project is, then you would be stupid to write that all over again, unless your old code was really bad.


    However, if your teacher told you to write a compression program using B-Trees, and the whole point of the problem is that you can acually write the code to create the B-Tree, read straight binary from a file, and compress and decompress text, then if you are borrowing old code that does any of this, are you really doing the work? Discovering that Java doesn't handle signed datatypes the way other languages did was part of what I learned from doing this. If you copy the code, do you learn that?


    I helped people with their work a lot in college, but there is a big difference between me trying to help them understand why they should use a while loop over a for loop as opposed to me writing the loops out for them.

  6. Going straight to the source by Salamander · · Score: 4, Insightful

    I found a copy of the course-specific honor code here. Here's the relevant excerpt:

    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.

    It actually looks pretty reasonable. I'd like to direct people's attention particularly to the last "good guideline" sentence. Now, what did the student do? From the original story:

    When he found himself with a homework assignment he did not understand, and no teaching assistants or professors available on a campus off-week, he convinced himself that just chatting with another student would not violate the rules.

    Now, "chatting" is obviously vague; there's a big difference between "what are they asking us to do" and "how do we do it". However, it doesn't matter. According to the "good guideline" in the honor code, the student would be in the right even if he discussed answers with the other student, so long as neither was looking at or copying from the other's actual code and both could explain independently how their solution worked. If anything, the honor-code standard as stated in the referenced link seems a little too lenient to me.

    It's entirely possible that the student did something more egregious than what's mentioned in the article. It's also entirely possible that someone's being a little overzealous about enforcing their own interpretation of what is really a pretty lenient standard. Assuming either to be the case would be premature, based on the information available. All of the political rhetoric, on either side, seems just a little bit misguided in the absence of anything but the most fragmentary and incomplete information.

    --
    Slashdot - News for Herds. Stuff that Splatters.
  7. 30 lines (was: Re:Ok this is retarded) by Above · · Score: 5, Insightful

    I find it interesting you refer to 30 lines as a substantial amount of code. The article suggests the program was a rather large one, and that 30 lines was a small fraction of the overall code. My own computer science experience in the past suggests 30 lines probably was a teeny fraction of the code.

    Of course, the pureist will say, copying is copying, and even if it was 2 lines that's cheating. The problem is I see no proof he copied from another student. You may scoff, how else would the code be the same, well, that's easy.

    I remember more than a few times sitting in the lab working next to 5-10 of my classmates. A common activity was to repeat the problem to each other to be sure we understood it. "The assignment said the program should output the data in sorted order case insensitive, one on a line, right?" "Yes." That's not cheating. Then someone else might pipe up "Didn't the GTA give us a handout with a sorting example on it?" "Yes," another would pipe up, and a third would produce the class handout for all to read. Again, no cheating yet. Of course the GTA example was case sensitive, so it had to be changed to be case insensitive. It also worked on plain strings, and the data was stored in structures (which were all remarkably similar due to a similar process) so that change had to be made as well. Those two changes were done independantly.

    In this case I proport no cheating has happened. Students conversations were limited to the problem statement, not the solution. Materials "shared" by the students were class handouts that all had, although perhaps not at that moment. The probability code ended up the same, high. Identical, moderate.

    Several times after assignments were returned to us (graded et all, even after the course) I would then compare with a friend to see how to do the things I got marked down on, and vice versa. Several times I found whole functions that were only a few characters off of being identical, even though we never colaberated at all. Everyone uses x, p, i. "print_sorted_output" is a common function name choice. Add to the copied GTA (course) suppied code and you get a lot of similar programs.

    We don't have enough facts to determine if this student is guilty or innocent. The fact that 30 lines are roughly the same, or even identical does not, in my mind, prove he cheated. There must be other evidence to help lead us to that conclusion.

    As for Georgia Tech, there is a root problem here. They have a separate computer science college,so it's hard to tell where they fit. Most schools put computer education in the College of Arts and Science, or in the College of Engineering. This is important. If you look at other Arts and Sciences, students are encouraged to work together. If you are majoring in dance, and another student views your "final project" (a dance, of course) and suggests "hold your chin up higher while you spin" that's not considered cheating on your homework. If you write a book, and let another student read it before turning it in, and they say "you should be more emphatic in chapter 2" that's not cheating. On the other hand engineering has right and wrong answers. If you show someone your calculations on the load capacity of a beam for homework that's cheating.

    So what is CS? Is it a creative discipline, like dance, or painting, or writing? If so the root of improvement is working together, public performance, peer review. On the other hand, is it a hard science. There is a "right" program, and everyone should get the "same" answer, so any sharing would help a student leap to a conclusion without doing the work?

  8. Group work fucking sucks. by Wakko+Warner · · Score: 5, Insightful

    I was in several classes in which work was assigned to "development teams" of 4 or 5 students. We were expected to hold "development meetings" and discuss "development strategies" whilst constructing the piece of software we'd been told to create.

    A noble idea, right? Work together, just like in the real world? Get help from your peers, everyone does their share, all that happy horseshit?

    Did it ever work that way for anyone? The smart kids in the group (if there were any) ended up doing all the work. The stupid kids hung around for one or two meetings and maybe sent off the occasional email asking when the next meeting was, but never contributed line one of code. The worst part came at the end of the semester, when we were all asked to rate our fellow teammates. What can you say? "This stupid retard was too busy fucking around and getting drunk to write any code, and when we asked him to debug this function, he sent it back exactly the way he received it"? Well, you can, but it doesn't seem to matter, as everyone always got the same grade.

    Come to think of it, group work is exactly like working in the real world, because it's full of people who don't do jack shit and make you wonder why they're still hanging around like a festering boil on an unwashed butt cheek. Honestly, I don't know how some kids in my class got their degree.

    - A.P.

    --
    "Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
  9. Policy still sounds excessive by nano-second · · Score: 5, Insightful
    I agree that upon reading the article, it seems clear that there was excessive collaboration in this case. However, the policies described still sound a bit execessive. Not being able to compare solutions? (Oh look, I got a different answer, now I'll go off and double check my work). Not being able to discuss assignments? The guidelines they give us for cooperation at the Univ of Waterloo is to discuss assignments but don't write anything down, or only use a whiteboard. Then, wait at least an hour before writing a solution up. This is very useful because it means you can work together if you don't understand something, but you need to understand it in order to be able to write the solution later and thus what you hand in will be your own work.

    The bit about a new policy saying students will not being allowed to look for answers anywhere other than course material or Georgia Tech staff?! That's what research and learning is all about: using any resource available to you. This doesn't directly map to plagiarism and cheating. For example, using an alternate text book often helps more clearly understand a concept not well explained in the assigned text. Lastly, how on earth did they manage to write down "He was trying to learn it" in any context that makes sense?

    --
    I hope you're not pretending to be evil while secretly being good. That would be dishonest.
  10. Re:Be tested for coding abilities in an hour! by TheAJofOZ · · Score: 5, Insightful
    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.

    The ACM programming contest is an awful model for assessing coding ability. The entire contest is based on time pressures and it encourages writing bad code, not doing design work and not commenting anything (it all just wastes time).

    Something that makes a good competition does not nessecarily make a good exam.

  11. Re:what? by civilizedINTENSITY · · Score: 5, Insightful

    They were *not* cracking down on cheating.

    a computer science student is wrong to try to seek answers to questions ANYWHERE other than from course materials or Georgia Tech staff. Rooting around in old books in the library, checking the Internet, calling your cousin at Caltech--all are forbidden.

    If you research a problem outside the "official" materials you are flunked. I'm sorry, but reading Knuth's The Art of Computer Programming on your own shouldn't ever be used to flunk you from a required freshman CS class. Yet at Georgia Tech, it is against the rules!

    What the student did in this case was against the academic rules for the course. Now it's possible, even probably, that those rules are arbitrary and unfair, but what he did violated them.

    I repeat, its not cheating to read another textbook. Its *not* cheating to say, "I can't make my doubly linked list work because I don't understand C pointers. Can anybody explain C pointers so that even I can understand?" My God, they seriously listed part of the freshman's offense in exactly these words: "He was trying to learn it."

  12. Re:A GT Junior's Perspective by ajs · · Score: 4, Insightful

    I understand your point of view, and how you got there. However, you should consider that there are other paths to walk than the one you have gone down.

    When I was a first year student, it went very poorly because I was excited about learning, and the school wanted to break me of it. Large lecture halls were not a place to ask questions; data structures courses were not a place to question why teaching linked list handling in a language that didn't support pointers was wise; etc. In the end, I dropped out and worked for the school for two years, maintaining their systems and writing code for funded research projects.

    If schools think of freshmen as a crowd of clean slates that can be penned up for a semester or two for forced-rationing of rote learning, they're going to get graduates who are equal to the challenge of those first few semesters. Perhaps a few gems will squeek through, but I'll guarantee you that all of THOSE students will either test out of the first few classes or will "cheat" by discussing new concepts as they learn them. My great and little gods, can you imagine being a talented programmer who just learned what a hash is, and not being allowed to talk to anyone about it!? I was practically on the rooftops screaming when I learned what a hash was and why it was so beautiful!

    Please, if anyone at any school with a policy like this reads this message, consider the point of view of the first year student who has been prepped all through high school to believe that college is where the rubber hits the road, learning-wise. When you hit them with more rote, mindless sentence memorization than they had in high school, what do you think the impact on the brightest, most promising students will be?