Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Education

How Easy Is It To Cheat In CS? 684

Pinky3 writes "The New York Times has an article on cheating in CS at Stanford. Here is a classic quote from one student: 'I wasn't even thinking of how it [sic] easy it would for me to be caught,' he said. One interesting strategy discussed is for the professor to make the final count for more of the final grade each time cheating is discovered. Share your experiences as a student and/or as an instructor."
This discussion has been archived. No new comments can be posted.

How Easy Is It To Cheat In CS?

Comments Filter:
  • Re:Expelled (Score:3, Informative)

    by Anonymusing ( 1450747 ) on Friday February 12, 2010 @09:38AM (#31112052)

    Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

    Many years ago, the University of Virginia had a policy where students caught cheating were kicked out, and then their records were burned publicly. Don't know if they do this anymore.

  • Re:Expelled (Score:1, Informative)

    by TwiztidK ( 1723954 ) on Friday February 12, 2010 @09:51AM (#31112196)

    Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

    Most universities kick students out as soon as they are caught cheating. If the cheaters try to go to apply to another school, the last question on the app is usually "Have you ever been disciplined for Academic Dishonesty?", to which answering "yes" is an auto-fail.

  • by Anonymous Coward on Friday February 12, 2010 @09:53AM (#31112226)

    I was an undergrad at a small state school at a time when CS was the ticket to a guaranteed well-paying job. The department at the time was growing in the tens of percent per year due to the rate of people joining the program. Unfortunately, cheating rapidly became so rampant that when I graduated, as few as 10% (by one professor's estimates) of those graduating could actually write a compiling program in any language. The department was set up from the start in a way that encouraged students to copy code. The introductory class in Java consisted of copying a professor's code off of an overhead and running it for credit, so that only students that started with an understanding of Java actually left introductory CS with an idea of how to write a Java program. Fast-forward to my senior year to see just how bad the problem actually was:

    One professor, upset with rampant cheating, suggested that a second-year competency exam should be given where students are expected to write programs to do something basic like a sort or search in an environment where they were supervised in order to prevent cheating. Professors more concerned with the growth in the department and with the influx of funding were so angry about this suggestion that they nearly came to blows.

    In a senior-level assembly programming class, a student came to me for help because he didn't understand it. Looking for an analogy he'd understand, I started going backwards through everything we'd ostensibly learned in the program asking, "Do you understand this? Can you do this?", and the response to each question was no. Finally, I came to, "Can you write a Hello World program in Java?" He responded, "No." At this point I told him that there was no way I could help him and that he'd probably want to consider retaking the introductory courses to CS. He started crying. It is really pathetic to see a grown man with a wife and kids cry. I asked him to stop, suggested that he reflect on how this came to be, and consider a different career since he'd never survive as a programmer. He asked me if he could make a copy of my notes and I agreed. The next day, he and about 12 other foreign students handed in photocopies of my notes (which weren't even a functioning assembly program) with my name still on them. They all got an A on the assignment, which the prof had obviously never even looked at.

    For a larger sample, consider our senior project. We were assigned groups of four students to write a complex program over two semesters. Each group had to meet with a faculty advisor every week, and I was usually the only one of the four that actually showed up. Incidentally, I was also the only one actually working on the program since the rest of my group simply wouldn't respond to e-mails for months at a time. In the last weeks, desperate to show that they had done some sort of work, the rest of my group came to me begging for something to do. I told one to write some HTML for the web front-end of my program, and asked the other two to work together to use the API that I'd developed in a user-friendly GUI. The results were hilariously bad. The HTML I was handed was the department web-page with some images and text changed. The GUI was the e-mail I sent them with some random pieces of Java and C++ sprinkled in here and there. When I brought this to the attention of the prof, he agreed that my group had done essentially nothing and passed them all. The major observation here is that out of four randomly selected students, the only one that could even provide something that worked had copied it from the department web page. Further, most of the other senior projects that I saw that day looked like something I could have slapped together in a couple of hours.

    The moral of the story is that, at least in the early 2000s, cheating had become easy due to the easy availability of code, apathy on the part of the faculty, classes built around a fundamentally bad premise, and that the department was more interested in funding than producing qualified students. I don't know if this is still the case, but this article leads me to believe that it may still be.
       

  • Reuse != Cheating (Score:2, Informative)

    by curri ( 107175 ) on Friday February 12, 2010 @10:10AM (#31112402) Homepage

    The problem with cheating is NOT reuse, but dishonesty; the right analogy is not to reuse *your company's* code or report, but *somebody else's* report or code, which leads to lawsuits against your company and firing. In many (most?) programming assignments in school, you are given starting code (like this one except for ....)

  • Re:No outside help ? (Score:1, Informative)

    by Anonymous Coward on Friday February 12, 2010 @10:28AM (#31112604)

    Usually, when honor codes are involved, phrases like "outside help" or "unauthorized aid" are meant to be determinded by the professor per assignment. So, for homework, everything might be fair game short of CTRL-C + CTRL-V, then a project might have stricter rules, and a test maybe no outside help.

  • by Tragek ( 772040 ) on Friday February 12, 2010 @11:33AM (#31113468) Journal

    Nope; Obfuscation isn't enough. Specialized parsers measuring similarity exist:

    http://www.wired.com/science/discoveries/news/1998/02/10464 [wired.com]

    While you can't catch everyone, disguise is not enough. (And not a measure of skill either).

  • Re:Who cheats who (Score:3, Informative)

    by kangsterizer ( 1698322 ) on Friday February 12, 2010 @11:36AM (#31113512)

    I forgot probably a small bit of the story:

    it took a week for the admins of the university to figure out the trick (tells a lot about their abilities or the lack thereof - i bet they were cheaters too lol), thus they lost a week of time, claiming it to be the reason why I had to leave or face trial.

  • Re:Who cheats who (Score:5, Informative)

    by MobyDisk ( 75490 ) on Friday February 12, 2010 @11:53AM (#31113774) Homepage

    Those people will eventually be discovered, but I every time that happens it weakens the value of the diploma from that school. That's bad for the graduates who actually worked. The schools need to stop this kind of thing from happening - that diploma certifies that the person earned it. Not that they cheated their way through a program. If it happens enough, they should lose their accreditation.

  • by AusIV ( 950840 ) on Friday February 12, 2010 @01:17PM (#31115148)

    The professor who teaches operating systems at my university runs people's code through an automated cheating detector. The first operating systems project ends up being around 8 lines of code to complete a stub he provided. In a class of 30 people, there will inevitably be a couple of people who produced similar enough code that they get a zero on the assignment even if they may not even have talked to the person who had similar code. After the first project everyone gets scared and writes the most obscure code they can to avoid being accused of cheating.

    On another note, I was a teaching assistant for a lab last semester, and caught a few students cheating. Most often I could hold the two assignments up to the light and see that each line lined up exactly. I had a couple of students who would hand in the same assignment in different fonts, but I nailed them for having the exact same typos.

    There were some other people I suspect might have been cheating, but they changed variable names and switched around lines if the order didn't matter to the point where I wasn't confident that the similarities weren't just because they were solving the same problems.

  • by DamnStupidElf ( 649844 ) <Fingolfin@linuxmail.org> on Friday February 12, 2010 @03:13PM (#31116800)
    Welcome to the "joy" of statically compiled, un-managed languages. Sure, Makefiles can help but ultimately there is no way to be sure that your binaries are correct short of recompiling everything from scratch in the right order.

"Engineering without management is art." -- Jeff Johnson

Working...