Hacker News new | ask | show | jobs
by macintux 3007 days ago
I was teaching the lab portion of CS 101 (don't remember the actual course number off-hand) when I discovered that two students had the same remarkable code that shouldn't have worked but did.

We were using C, and instead of using globals or parameters, each function declared the same local variables in the same order. The stack, then, remained sufficiently consistent that each function had access to the values it needed.

When I confronted the two of them about plagiarism (and explaining what they had done wrong) their defense was that they were working on the problem together, and thus had made the same mistake out of ignorance.

And frankly, it made perfect sense. I could easily see myself doing something like that.

I guess my point is that, for at least some small portion of the problem space, plagiarism isn't really plagiarism.

3 comments

In other words, we have made studying in groups a crime. Normally, to study a subject you would pose yourself problems and solve them, sometimes with friends. But we insist that homework be done individually, and we insist to assess every last little thing. I think this is a problem in the American university.

The other problem is that we have reduced scientific ethics to the subject of plagiarism. But there's other things, like publication ethics, medical ethics &c, and they don't even appear on the kids' radar screens.

This is entirely true, on almost all of my homework I have been specifically instructed to not communicate on more than a ideal level with any code that I write. They could just be missing a semicolon somewhere but I am not supposed to even look at people's code. This leads into group sessions basically everyone being silent and just asking for syntax help. It's dystopian.
I strongly agree with you. When I was an undergraduate long ago, I remember getting lectured at great length by a math professor who was angry that many of the students in his abstract algebra course had worked together on the homework. I was one of those students (who had worked together), and I was very puzzled and annoyed by the professor, since I knew that I had learned far more on that assignment than any other! As a result -- I'm a college professor (in computational math), and over the last fifteen years on EVERY homework assignment I've given, I've explicitly encouraged students to work together as long as they clearly acknowledge who they worked with (and how). I wish everybody else did the same.
Here's my input as an actual computer engineering student with good grades and who was hired after 2 years: I have no idea why professors wouldn't want students to collaborate on homework, forcing students to solve problems on their own will only create basement coders who can't cooperate with other people.

Not a single company has ever asked me to invert a binary tree/implementing any more complicated algorithm nor my grades, they have only cared about my personality and non-school projects.

Hell, we are encouraged to work together with other people at my university.

I am equally confused as well. It's been a while since I studied CS, but when stuff was to be handed in on paper we even had multiple names on it (which was allowed, but like only up to 4) and when it was switched to digital handin, why wouldn't you submit the same thing twice, with both names on it.