Live data from Hacker News

Why we still can't stop plagiarism in undergraduate computer science

kevinchen.co

101–110 of 124 posts

Re: Why we still can't stop plagiarism in undergraduate computer science

#101

Here's the easiest solution: stop grading homework Why judge student performance on something that they are using _to learn_? It doesn't make any sense. Every student is basically competing with one another to get the highest GPA possible - if you're going to give them cookie cutter homework with solutions can be easily searched for on the internet _and_ can only bring their GPA down, then they're going to cheat. Pla…

Optional homework almost definitely won't get done. Making it count ensures that students would actually do it, which is useful to instructors (what do they need to focus on in class? Is the class understanding the lectures?).

Pass/fail grading for making an attempt.

Re: Why we still can't stop plagiarism in undergraduate computer science

#102
This essay is most about culture, but it does mention an anti-plagiarism program (which sounds pretty hard to do except in very trivial cases, but who knows?)

There's another tool: the repo. My son was accused of plagiarism in his last year of high school. It could have been a "he said/he said" case -- in fact it started that way -- until I pointed out that if he believed he was in the right he had a record that could be checked.

The CS teacher had to explain to the principal why the repo proved who had copied whom (and left me wondering why the teacher hadn't looked there first????) which wasn't easy because the plagiarist's parents were big donors to the school. So in the end, despite what it says in the school handbook, the only penalty was a 0 on the assignment.

But a good lesson for my kid on both programming and the sociopathologies of organizations.

Re: Why we still can't stop plagiarism in undergraduate computer science

#103
post #91
post #81

Earlier quoted context omitted.

> I have a big problem with the general theme of this article, which is that plagiarism detection software is infallible and every student who disagrees with its findings is wrong and dishonest. These claims were not made. > You claim > > We have virtually eliminated false positives at this point > but offer no explanation for how you verify this. Yes, he did. He described the process that arrived at the conclusion i…

It doesn't matter if they think their process is perfect. It is still just an accusation at that point, and students have the right to appeal it. IMO it isn't acceptable for an instructor to say that they don't have time to provide an explanation when asked by the university.

You're still fighting strawmen. At no point did he say that the students don't have the right to appeal or that instructors shouldn't have to participate in that process. He said it's a big time sink and one of the reasons instructors don't fight plagiarism much.

Re: Why we still can't stop plagiarism in undergraduate computer science

#104

Here's the easiest solution: stop grading homework Why judge student performance on something that they are using _to learn_? It doesn't make any sense. Every student is basically competing with one another to get the highest GPA possible - if you're going to give them cookie cutter homework with solutions can be easily searched for on the internet _and_ can only bring their GPA down, then they're going to cheat. Pla…

How about just stop grading on a curve? At least then, cheaters can't hurt the grades of non-cheaters.

Re: Why we still can't stop plagiarism in undergraduate computer science

#105
post #88

Earlier quoted context omitted.

Then schools should hire squadron's of TA's. We pay them enough that they can afford to, but they simply choose not to.

the reason the pay is so low is that it’s part of a PhD, usually, so the TAs tolerate it. i don’t think you could hire someone to just be a TA full time at those wages. you can’t admit more PhD students, necessarily, because to graduate they need to do research under an advisor, and access to grants/projects won’t necessarily grow along with required teaching staff.

To build on my snarkniess: it's almost as if the incentives behind research and education aren't nearly as aligned as we think.

Re: Why we still can't stop plagiarism in undergraduate computer science

#106
post #21

Here's an idea: why not make the assignments personal enough that you cannot cheat on them? "But wait, that would require huge amounts of time investment from the professors/TAs" Yes, it's almost as if paying $65k a year for someone to teach you something should result in that person teaching you that thing instead of just checking in to see if you've learned it on your own.

Fine for higher-level courses, but how exactly are intro courses supposed to make 'hello world' and the like personal enough that you can't cheat?

The same way it's done in kindergartens around the world? They say "write me a story about your family" or "draw your family tree." So ok: "write me a program that is somehow relevant to your life."

Imagine you are teaching someone basic web development. The assignment is "make a webpage that displays some facts about your favorite tv show." Easy.

I can buy that it makes the grading more complicated, but coming up with assignments is not difficult.

Re: Why we still can't stop plagiarism in undergraduate computer science

#107
post #9

Requiring students to submit their VCS history along with the finished project would at least up the cost to the students for copy and pasting. They even hint at that sort of solution in the piece by mentioning cosmetic changes to the files at the last minute.

I'm also a TA for the class mentioned in this article. We teach Git and have a submission system where students submit patches based on skeleton code; students are required to make at least five commits. We still have a significant number of students who copy code, and while it does help with picking up on that kind of behavior those students also don't seem to care about the increased cost and will pad their commits anyway.

Re: Why we still can't stop plagiarism in undergraduate computer science

#108
post #96
post #73

Earlier quoted context omitted.

Completion of what?

a set of problems, the homework

I'm confused. The fix for grading homework is to grade homework?

"Completion" is pretty ill-defined if there's no attempt to judge content.

Re: Why we still can't stop plagiarism in undergraduate computer science

#109
I was a TA for a graduate level class at one of the top universities in the US and I've had some interesting encounters with plagiarism.

I. The time I got caught for "plagiarizing". In an intro systems class, me, a CS major, and my roommate, who wanted to minor in CS, were working together and I was "showing him the ropes". He was an intelligent student and we never worked together on the homeworks aside from general verbal discussions on what the solution could be. He used a Windows laptop and for one of the assignments, his C code wasn't compiling because he was missing some libraries and he told me he couldn't figure it out and we were approaching a deadline and asked me to compile it for him and send him back the binary. I did so, but when sending back the binary, in a rush, I accidentally mistook my HW folder for his (we'd downloaded this as a part of the assignment, and the folder structure was identical) and sent him my binary by mistake. Both of our solutions worked. Obviously, we got "caught" in the most naive way. Our binaries had the same MD5 hash and the CMS flagged us. We were both confused at first, and then we realized what happened and explained it to the professor. The proof was simple - just compile my roommate's binary and run it. However, he annulled our assignment to 0. We still both got As (because you could drop one homework) and while some may claim this was a gentle slap on the wrist, it felt unjust. We clearly made a dumb mistake and we shouldn't be punished at all, especially when we knew how rampant actual plagiarism was.

II. The time I caught students for "plagiarizing". As Kevin points out in his post, there aren't really any incentives to catch students for cheating. As a TA, I get no benefit, and moreover, there's a cost. No one wants to be known as THAT TA who busts kids for using "a little help". Keeping that in mind, I was usually very lenient when it comes to cheating. I've noticed signs, but there was never enough proof to warrant the effort of calling someone out. However, at one level it went too far. Two students who were partners for the "projects" had submitted nearly identical solutions for a complex Graphics homework assignment. They got the answer right, but I looked into their working and they both said "(9/5) / (4/3) == (4/7) / (5*9) = 1/3". I don't remember the exact values, but it was two steps of non-sense numbers and then a correct answer. I ended up reporting the case, mostly because I felt like my intelligence as a TA had been insulted. Are you seriously going to submit random numbers with a correct solution hoping I won't see? In any case, it didn't go anywhere.

III. Discovering a cheating ring. At our university, one of my good friends and project partners told me there was an "enormous Asian cheating racket" - not to call out any specific race, I'm Asian too. I wasn't surprised - to be blatant, it made sense. We're very grade oriented with tiger parents. Then I learnt the extent of it. There were apparently Chinese forums and "outsourcers" you could send your homework problems to and they would solve it and give it back. In addition, there were special shared systems like DC++ where you could discover answers to homeworks for different classes at my university as well as Prelims, Midterms and Finals contributed by students of previous years. I was in shock. Students would leave exam halls to go to the bathroom just to look at these answers mid-exam. But was I gonna tattle? No.

IV. The reality at universities. Not just in CS, but in every other subject, almost everybody cheats. Excuses that go around are: "I've worked on it with someone else" "Oh the TA in office hours told everybody the exact same solution" "What? Cheating? me?" "Maybe he/she took it from me, I didn't do it"

And look, people aren't stupid. We all know how cheating works. You get a homework assignment, and you re-write the sentences in your own language. You get some code from someone else and you define some useless functions with 1-2 lines of code. Or you arbitrarily re-organize lines of code. You rename all the variables. You re-organize your functions. You create some unnecessary classes.

There were students who distribute 10 homework assignments between 10 people (in groups of 2), and have one do the assignment (use office hours, friends, google, whatever) and the other literally re-write the assignment in LaTeX 9 different ways for the others to use. No one would ever really have to do the work.

The well known key to cheating is plausible deniability - if there's enough evidence you didn't do it, you didn't do it.

Re: Why we still can't stop plagiarism in undergraduate computer science

#110
post #109

I was a TA for a graduate level class at one of the top universities in the US and I've had some interesting encounters with plagiarism. I. The time I got caught for "plagiarizing". In an intro systems class, me, a CS major, and my roommate, who wanted to minor in CS, were working together and I was "showing him the ropes". He was an intelligent student and we never worked together on the homeworks aside from general…

And it's an even bigger problem with MEng/MS students. These are usually unfunded cash cow programs even at top universities. They accept fairly mediocre students from China and India and the class is usually 80% Chinese/Indian. A generalization, of course, but they have 0 intellectual curiosity. They are here to pay $50k-60k for 1 or 2 years, make sure they have as close to a 4.0 and then go get a tech job where they will make $150k/yr, and little to none of their skills from class would be needed.

And I can speak for Indians, but CS education in India aside from the IIT, the IIIT, BITS and some NITs is dismal. Cheating is rampant there, and they're much more well versed with the art because it's much harder to cheat and get away with it in India - you can't bring phones to your exam or freely go to the bathroom mid exam, for example.

Post reply on HN