Slashdot Mirror


Cheating Detector from Georgia Tech

brightboy writes "According to this Yahoo! News article, Georgia Tech has developed and implemented a "cheating detector"; that is, a program which compares students' coding assignments to each other and detects exact matches. This was used for two undergraduate classes: "Introduction to Computing" (required for any student in the College of Computing) and "Object Oriented Programming" (required for Computer Science majors)." Cuz remember programmers: in the real world you are fired if you consult with a co-worker ;)

31 of 941 comments (clear)

  1. You're caught by alen · · Score: 5, Funny

    Your Hello World program is exactly the same as Johnny's. You fail. You're kicked out of school. Good bye.

  2. almost ten years old by 3ryon · · Score: 1, Funny
    The software, developed around 1993, detected similarities in the students' work in three computer coding assignments, Eislet said. It's unlikely that innocent students' work was detected by the program, he said.


    1993? Think it was written in COBOL? Have they tested it for Y2K compliance?

  3. This is bad by TheGreenLantern · · Score: 2, Funny

    How the hell are all those lonely CS majors supposed to get in good with the Education majors now?

    --

    It hurts when I pee.
  4. Repost Detector by Unknown+Bovine+Group · · Score: 5, Funny
    Maybe Slashdot could use this technology to stop reposts.

    --
    m00.
  5. Cheating Is Harder Than Actually Doing The Work by KingAdrock · · Score: 5, Funny

    I always found that it wasn't easy to cheat. If I copy and pasted somebodies code, I had to go back through and change it all around so that I couldn't be caught cheating. This often proved to be more difficult than actually doing the project myself would have been.

    1. Re:Cheating Is Harder Than Actually Doing The Work by ImaLamer · · Score: 3, Funny

      That's why you get someone to write you a program that will change the variables for you:-)

  6. so if another university uses the same code by Infonaut · · Score: 5, Funny

    to stop cheating, will GT bust them for plagiarism? ;-)

    --
    Read the EFF's Fair Use FAQ
  7. Works on resumes??? by Harlockjds · · Score: 2, Funny

    I wonder if they will start using this on the resumes of their coaches from now on?

  8. Re:Flame-bait in comment aside: by StaticEngine · · Score: 5, Funny

    In the real world, you _would_ get fired for taking credit for someone else's work, trying to pass it off on your own.

    Actually, from what I've seen, in the real world you get promoted for taking credit for someone else's work, especially when it's one of your underlings who slaved away while you were out on the golf course.

  9. Re:In the real world... by Anonymous Coward · · Score: 2, Funny

    Actually, in the real-real world it just means that you are a manager.

  10. Re:Flame-bait in comment aside: by Spectre · · Score: 5, Funny
    if you never learn how to do anything but copy & paste other people's code


    Then you are known as a JavaScript coder ...
    --
    "Flame away, I wear asbestos underwear"
  11. Also in the real world... by Christopher+Bibbs · · Score: 3, Funny

    No two programmers are working on the exact same bug/feature. You can't expect to just copy someone else's code or get them to do most of the work for you. At best, you can ask for help, but that's not what the article is talking about. It's talking about straight copying of code (with minor changes to fool a cursory examination).

  12. Re:In the real world... by PW2 · · Score: 2, Funny

    ...you would have roommates that wouldn't talk to you anymore :(

  13. Yeah, but. by Pope+Slackman · · Score: 5, Funny

    Knowing slashdot, they'd prolly implement it by comparing how well they compress.

    You know they're dying to use this revolutionary compression filter technology in other places!

    C-X C-S

  14. Slashdot should learn something... by GI+Jones · · Score: 3, Funny
    Maybe someone should write similar software for slashcode... it might prevent them from posting similar stories:

    http://slashdot.org/article.pl?sid=01/05/09/198259 &mode=thread

    --
    "Perhaps most amazingly, votaries of 'diversity' insist on absolute conformity." -- Tony Snow
  15. Experience of an former TA by BWS · · Score: 5, Funny
    I was TA/Maker for 2 classes at my Univ and my experience with cheating suggests that programs like these are necessary...... here are some of the better exampls.

    1. for an intro to java course... I had a student that photocopied another's assignment and then used white-out to remove the other's name and write his own down
    2. for an intro to java course... they had to implement a doubbly linked list structure... I had 4 students copy off another student... they changed all the variables by adding an extra to the end ... so like next became nextS... (they used Z, S, and B FYI respectively)
    3. for an data strcutres course... I had the two students who's code was the same expect that they replaced the numbers in the varibles by the written version... so like counter1 became counterOne and counter2 became counterTwo
    4. my 2nd funniest example (well, the first one is really good) is an student who tried to pass in another's assignmetn and changed the comments type... he replaced all the /* */ comments by // comments..
    5. my best example was once when I was TAing a course and during my tutorial one of the students acutally offered me $40 to do an assignment for them... (they didn't know I was the TA)...

    in general... they are the extreme... there is a lot of general cheating going on and I think something like this is a good idea... to catch "the smarter cheaters"

    --
    -- Note: These Comments are Generated by ME! Not You! ME!
  16. Re:More Info by statusbar · · Score: 5, Funny

    Hmmm...

    Makes me think of the possibility of a new product! anti-cheatfinder!

    Parse the original code and then re-organize the parse tree to be different yet functionally equivalent. Output the new code based on the modified parse tree. No need to change the variable names since cheatfinder ignores them anyways.

    Then, sell the product to cheaters around the world! Hopefully they will go get jobs at microsoft!

    Jeff

    --
    ipv6 is my vpn
  17. My Intro to CS Cheating Story by Anonymous Coward · · Score: 1, Funny

    My first programming course 20 odd years ago led to a pretty funny cheating story. For a final exam we were given a fairly simple coding assignment to do on the last day of class. We were instructed to write our code down on sheet of paper, put our name on it, xerox a copy of it and hand it in right then and there. And then we had until the last day of Finals week to get the code to compile and work, and we would be graded on the delta between the first draft and the working code.

    The funny thing was that the course was taught in two sessions, a 10:00AM and 11:000AM session and the two sessions were given completely different coding assignments.

    And yet there were a number of people that somehow managed to hand in working code for the other session's assignment instead of their own :).

  18. Re:Plagiarism is bad, m'kay? by JatTDB · · Score: 4, Funny

    Nah, you just have to be really clever about it, such that the original programmer gets fired, and then the code makes the company billions in the video game industry, and you become a senior executive vice president of the company, and the original programmer is reduced to an arcade manager, and then he tries to hack into your systems, and then your mainframe decides to digitize him, and he helps a small group of rebels free the system.

    Ok, maybe I've watched Tron a few too many times...

    --
    "That's Tron. He fights for the Users."
  19. Real world example by cs668 · · Score: 2, Funny

    I acutally had the problem of a co-worker taking a bunch of work I had done to the boss and claiming he did the work.

    The funny thing is the guy was so stupid he didn't understand that there would be backups that would show who created the files and when.

  20. Guess Who's Consulting for Dinner? (A Drama) by Anonymous Coward · · Score: 0, Funny
    Cuz remember programmers: in the real world you are fired if you consult with a co-worker ;)

    Here's the flip side of Cmd Taco's comment:
    Manager: Hi Sally, this is Bill, our new hire. He graduated without writing a line of original code and is totally clueless, despite successfully litigating against Georgia Tech's use of a cheat detector. You'll be doing all his work as well as your own.
    Sally (pulling hair out in clumps): Arrrrgh! Damn you Cmd Taco and your smug comments!
    Bill (puzzled): I thought it was okay to consult with co-workers?
    Curtain closes.

    This mini-software-drama has been brought to you by Beatrice.

    Anonymous Kev
    Proudly posting as Anonymous Coward since 1997

  21. Re:I teach a CS course... by Anonymous Coward · · Score: 1, Funny

    and quite the third thing to advertise in a public forum that you completely failed to get a simple joke.

  22. I remember a guy.... by mikera · · Score: 5, Funny

    ....who thought he would cheat by copying someone else's code.

    But he was pretty paranoid about getting caught, and realised that a verbatim copy wasn't enough, you'd have to change the variable names, comments etc.

    So he did some research, wrote himself a little parser that read in the source code and built a parse tree of the program. He then wrote another function that spat out all the code again but with different spacing, block ordering and some simple variable renaming (e.g. x,y,x->a,b,c)

    To make sure the structure of the code didn't give him away, he wrote a few code transformations, e.g. if a then b else c became if !a then c else b. The order of non-conflicting assignments were swapped, and mathematic expressions were re-arranged (sometimes actually optimising the original code in the process!).

    Still wasn't good enough, the comments needed changing and the structure of the code looked the same. So he linked in a thesaurus and NLP/AUG engine to change the words in a meaning-preserving manner. Same principle could be applied to the more complex variable and function names, so buildTree became makeStructure etc.

    Finally, to put the icing on the cake he modified the program so it could output the code in a couple of different functional languages. Made the plagiarism almost impossible to spot.

    Best programmer I ever met.

  23. Re:Flame-bait in comment aside: by bareman · · Score: 5, Funny

    Oh my God. I have to get some underlings. I'd love to go golfing.

  24. Re:the real world by CaseyB · · Score: 3, Funny
    you are fired if you steal code from someone else without their permission, pretend it's your own, and incorporate it into the app you're writing

    So it's OK to plagiarize on an exam, as long as you get permission and attribute the original author!

  25. Ever seen a compiler detect cheating? by brumby · · Score: 4, Funny
    When a friend was taking a prac class a few years ago, he had the following happen.

    A student came up and said "I've written all of the assignment, but the compiler is broken." My friend looked at the error output from the toy teaching language compiler.

    "Unknown keyword 'From:' in line 1 'From: student2@cs.university.edu'"

    "Unknown keyword 'Subject:' in line 2 'Subject: Assignment 2 answers'"

    ...and so on.

    The student tried to insist that it was all his own work.

  26. Re:Erm. by ameoba · · Score: 3, Funny

    Eh? How could they tell? Everything written in Scheme looks exactly the same.

    --
    my sig's at the bottom of the page.
  27. Real world by p3d0 · · Score: 3, Funny
    Cuz remember programmers: in the real world you are fired if you consult with a co-worker ;)
    And remember, the primary purpose of school is to simulate the real world.
    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  28. Everything I learned... by mjjmoellering · · Score: 2, Funny

    I honed my programming skills in college by writing a 10,000 line perl script which tranforms other students' work in ways not identifieable by automatic cheat detectors.

    -mjjm

    ---

    Nothing is more depressing than the sight of people who believe they are following collective manias of thier own free will.

    --Czeslaw Milosz

    --
    Nothing's more depressing than the sight of people who believe they're following collective manias of thier own free wil
  29. My experience with "cheating"... by StevenMaurer · · Score: 3, Funny

    Was in a class where the instructor asked us to write a program to perform an ascii sort of a file (kind of like 'sort' actually). I specifically asked if we could use libraries, and he said yes. Of course most of the students were using Pascal...

    You can probably guess what I did. My program featured the prominant use of "qsort()" out of the C library. Even though I had learned about callbacks with the thing, he really didn't like it. Made me go back and reimplement it so that there was an actual "sort" being performed in my code. Ug.

    Now I'm a Principal Engineer.

  30. It's almost an industry. by Anonymous Coward · · Score: 1, Funny

    Back in school I was so poor I would write other people's coding assignments for money. I made what's equivalent to a few thousand dollars doing this. The trick, of course, was to do things differently for every single person. This meant coding it in different ways which couldn't be caught.

    Needless to say I was in "high demand" by several groups. Advertising was purely through word of mouth, and I never got caught.

    Do I regret it? Absolutely not. Those same students now can't code their way out of a paperbag, and I got to put myself through school.