I understand cheating is shitty but it would make a lot more sense for the teacher to make this a teachable moment about cheating, and to promote collaborative solutions, but also checking work you get from others.
A huge part of development is copying code and reusing code from libraries. The important part is that you know how the code you copy works.
it’s the fucking capstone for a master’s in CS. If they’re not able to write their own code, then that’s on them.
If it’s a capstone class and I’m still having to do stupid mini weekly assignments instead of focusing on my semester log project then I would also be phoning in those assignments. If it’s a capstone then why is the teacher not just letting them focus on their big coding project. Bad teacher.
Reminds about recent Linus’ rant on LKML.
You copied that function without understanding why it does what it does, and as a result your code IS GARBAGE.
AGAIN.
I work in IT, and it’s a similar situation. Bluntly, I Google half of the tickets I touch. I don’t really know shit about how things work specifically. I know the generalities, and the structure in which they function. I have the foundation of knowledge to know what to Google, but the fact is, I don’t remember crap about how to do just about everything.
There’s simply too much to know.
In college, using Google was a sin. IMO, they should teach a class on how to get the results you need from Google because you’re not going to remember whatever the subject is when you need to in six years and you come across an issue which requires that knowledge.
make this a teachable moment
A person’s character is built at home. If you’re an adult in secondary school and can’t figure out not to cheat, better hope you get a warning and understand THAT’s the only teachable moment you’re going to get.
The prof has neither the time or opportunity to fill in where your up-bringing was incomplete . Uni is the first place we learn that the universe doesn’t have a lot of patience for the laggards.
Nah, cheating is fine, if used sparingly and under specific, niche circumstances, and in ways that don’t harm others. As an example: I was struggling with Calculus. Like basically getting my ass handed to me. I went to all the study sessions, saw the Professor in their office several times, found a math tutor, and fuck me the info just wasn’t sticking. I put in legitimate effort and it wasn’t working and I wasn’t about to let one class shit on years of hard work towards a degree. So: I cheated.
We were allowed your typical little notecard. For the record, this is math. Make that shit open book, dear instructors. I know you all looking up near every formula yourself anyway. I digress. I slapped two notecards together and slapped a third into the fold. I had a very non-traditional schooling as a child so the rules as formulas changed were really getting me and I needed those and other reminders. Long as I had those I was fine. Still only squeaked by with a C.
Cheating in many situations is a very reasonable morally unjustifiable thing to do. If you’re not actively fucking over someone that doesn’t deserve it, or causing no harm, I honestly see no problem.
Thaaat saaaid, cough Thomas Edison cough, some cheating should be punished.
Even though the school might call that cheating, I don’t really think it is.
All of my engineering and math classes were open book, open notes. I got lucky in that all of my professors (except one (fuck you Dr. Aung)) designed exams such that they tested understanding, not memorization.
And here I am, 10 years later, still able to solve most of these problems without looking at a textbook for reference other than tables and formulas, despite not having worked in the field for half that time.
I got a mechanical engineering degree. Two the most useful classes I took were microeconomics and circuits 1.
This is a part of what I was trying to say. What I did is considered cheating. Yet it is defined as such largely by those who place artificial, and sometimes extremely unfair, limitations in place. Many of which serve no real purpose. Yet often if it works in their favor such “cheating” becomes a convenience.
In academia cheating is rightly frowned upon and often definable by the cheaters removal much of the time. Yet as a general rule I feel it has its place, and plenty of us use some form of it in our daily lives. Many of us are not particularly dishonest or openly practice deception with others, though we withhold truths amongst other mostly acceptable social whims. I’d bet though most of us have gone to the bathroom for too long at work. Chatted with a colleague. “Forgot” to reply to that email. Faked being sick. All defined in some way under the larger moniker of “cheating”.
Not saying any of it is right or wrong specifically. Just laying justification for why I believe this.
Keep in mind, it’s likely that more people cheated, but the smarter ones changed just enough code to make it look “their own”, or actually tested to ensure it’d work, and thus weren’t caught. Those 22 caught are very likely the ones that copy-pasted verbatim.
Then the smarter ones fulfilled the task, knowing and understanding the material enough to provide a working solution, rather than paste a non-working one. They may have done less than someone working from scratch but they showed themselves no less competent in the material.
“Teachable moments” are for freshmen. Cheating seniors can get fucked.
On a very related note, I actually earned my CS degree.
As someone who only cheated in one class because the professor was a lazy fuck and assigned 5 hours worth of problems for a 1 hour exam with no regard to whether it was completable, I agree. The whole class cheated, because they had to. We actually all knew the material really well because distributing that material across 20 students was still iffy on time.
He’s dead now, the lazy fuck. Fuck you Dr. Aung.
Strongly agree.
I was lucky enough to take a computer science course at my high school almost 20 years ago. The teach straight up we web design was 90% copying and 10% modification. He was a early retiree webmaster switched teacher.
Fast forward to today. System administration. I’m not paid to code. I’m paid to fix problems. So I research and focus on remediation. If there’s a script for a fix I’m using it.
I’m super paranoid about copying code to use on a production system though. Whenever I come across a script or code to fix an issue i go through it line by line to ensure I know what it’s doing.
Often I’ll just take the logic or parts I need and write my own.
i wish my deadlines are not hard enough so that i could actually take time to learn everything from the code i copy.
If you give cheaters too many chances, the other students will feel betrayed. And I guess rightly so.
It’s not uncommon to get mails directly, or later in course evaluation, from students who complain about other students that didn’t put in the work. I can only remember few cases where there were names involved. Typically it’s some general complaint, but the frustration is obvious.
It sucks when you make an effort but witness other students cheating their way through the class. What are we supposed to tell them when the dishonest behaviour of other students doesn’t cause any consequences?
You tell them that they have learned the important life lesson:
In most situations, results matter more than the means by which you got them.
The result of a CS degree is supposed to be someone who knows how to program. This prof got what he wanted.
Never said they didn’t know it wasn’t allowed. I said that the teachers view of cheating is flawed. I’m also not saying the students aren’t*** (autocorrect likes to change my contractions to the exact opposite) guiltless. My point was that young people make mistakes, and teacher should use this as a teachable moment about the difference between cheating and collaborating. Between just copying code, and knowing how what you copied works. These are students they are still learning. Also, an over 20% fail rate is abysmal and speaks to how poor of a teacher this professor is.
You’re assuming good faith and willingness to learn/change in the part of the students. I was a TA at a private US uni for the not so smart kids of rich parents. Our approach (imposed by admin) was all carrots all the time. 20% seems fair, even low, for the share of students who were there to get a degree with the least amount of effort necessary and then get a job thanks to the uni’s name and their connections.
The point of the (probably fake) story is that there was a massive issue with cheating.
When we run through the cheating software at my uni it give you a percentage of how much of this paper is copied (quotes.etc) from previous work. In some first year this gets as high as 30% - not because of cheating, but because everyone us running from the same text book, same readings and same template… and when you are discussing historic theories not much has really changed in the last 50 years for first years. But there is a massive difference between writing something similar to the other 300 students and copying a block of work - was it understood, did it flow correctly… or did they copy the Wikipedia article?
You are correct, young people make mistakes. But if this is a capstone course its likely third year - the time for a teachable moment was 20 papers ago.
Their teachable moment is that plagiarism has consequences, and they earned that lesson entirely by themselves.
As a software developer I’m expected to, at the very least, to do two things when “plagiarizing”:
- Find the source to copy from.
- Perform the necessary adjustments to apply that copied solution to my own problem.
When students plagiarize, they don’t even need to do that. The solution they are copying from was written for the exact same assignment, so they don’t need the adjust anything (at most, they change some identifiers to throw off plagiarism detectors). And they copy from each other, so they don’t need to search for a solution. They may need to apply some social skills to find out who to copy from - but these are vastly different from the technical skills required to find relevant code to “plagiarize” in real world programming.
Sure, but as a general rule the carrot is a better incentive than the stick.
On the flip side, all threat of consequences works as a deterrent only when there’s the expectation to be caught and punished.
By always catching but never handing out punishment to kids violating rules, you only teach them that consequences are inconsequential.
Let’s not pretend these are kids who have a test for their first time. They all were told to not cheat and that cheating would lead to expulsion.
Especially, if they are to lazy to change the tasks. Sure, cheating is bad but it’s also bad teaching.
There is no but. Cheating is bad. Period. If you don’t like school/uni go work at a Wendy’s. In the restaurant or behind the dumpster. I don’t care.
They’re all fucking wankers and got what they aimed for. Nothing. Turning this around on the prof is the entire fucking problem here. (it’s not my fault, you made it possible so I had no other choice but to cheat. It’s a bullshit argument. Take some responsibility for your own choices.)
Just to clarify, you don’t need schooling and a degree to get a job as a dev, I’ve hired several that are particularly strong. Strong junior devs love learning. Cheaters…well they don’t care about learning. They just want to look good.