TL;DR: Don’t blame codechef. Don’t ask for changes to long contest. Change yourself. Blame hostel culture.
Seeing so many posts about cheating. So I decided to write this down so that people understand where the problem is and stop crying. Note - I am not going to address cases of blatant copy-paste that MOSS will catch eventually.
So I just entered a so-called cheating “Telegram Group” after the contest. I downloaded the whole text file and read through it. My findings:
- No one shared any working code or tutorial.
- They shared hints on what to read and also very basic test cases (which you can generate and hand calculate)
Clearly, the mass cheating ISNT happening in Telegram groups or Youtube. Logic also states that massive cheating cannot happen there. Its too risky to share code in an OPEN telegram group. No benefit to doing so, and if a troll directly copy-pastes your code, you get banned.
So can cheating happen in telegram? Yes. By adding friends. But more on that later.
So how DOES cheating happen? Hostel+Colleges. Number of reasons why cheating can happen in college:
- Its easier to work with friends. Its easier to divide and conquer.
- Friends can appeal to emotional side of the problem solver. (Please give me solution, I will get to five star and get referrals)
- The original problem-solver becomes the cool kid in the group.
- The original problem solver has LOTs of control. He can even instruct them to change code lines before submiting.
- Peer pressure, if you get a solution - its hard do deny friends.
So maximum cheating is most likely to happen in colleges. Any cheating one can commit by adding a random stranger from telegram is MUCH lesser.
Long contests and cheating
So, addressing the elephant in the room. Does cheating happen only in long contests? I am sure that’s not the case. Cheating is EASIER in short contests. Friends can sit down together in college and derive the logic together (maybe even share a whiteboard) and then code up together. Help debug each others code. In fact, its easier to cheat in a short contest - since they involve tricks and observations. In a long contest, there is much theory to explain and if one shares code and logic without sharing theory, not much can changing be done and MOSS will catch. In a long contest, many problems are hard to understand even if after reading the editorial if one is not familiar about the theory.
Another noteworthy fact, distributing effort doesn’t work as well in the short contest as well as in long test. I have a chance against 20 students from a college hostel in a long contest. But in a short contest, they can distribute effort and efficiently solve more than me. If anything cheaters have a problem with long contest since they do so well in short and they get frustrated that they dont do as well in Long (others are solving problems they are not able to). In fact, many accounts who have complained repeatedly about prevalence of cheating turned out to be cheaters themselves. And the new accounts who complain about cheating, I have two questions:
- Why are they afraid of showing their real account. Most likely because they have cheated and they are worried about being audited.
- If they are using a fake/burner account to post on forums (and violate the rules) - dont you think they will use fake accounts to try out problems first and then post on main?
Solution to cheating in long contests: Stop worrying about cheaters. Its a long contest. Its you VS the problem. Focus on trying to solve it. Become obsessed by it. Study up theory. Try to find similar problems and what solutions were involved. Don’t ask site to kill the long contest so that you can cheat in short contest using hostel advantage and eliminate competition.