A possible solution to code Plagiarism | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 25

A possible solution to code Plagiarism

Just like the videos we upload in YouTube get processed, the codes we upload can be processed. I think that processing can be done as follows. 1) An internal search for codes will be done with the search query being the name of the code we want to post. Search results can be sorted based on popularity i.e. number of upvotes etc,. 2) Then, the code we want to upload is checked with top 5/10/... codes in the search results for matches. The matching can be done based on different factors like (i) checking if the contents are exactly same (ii) giving similar inputs and checking if the outputs are similar. 3) If processing is successful, code will be posted. Otherwise, code will be posted but made private only. With 2(i), exact copies of codes can be eliminated. 2(ii) must be carefully dealt with. There is no need to worry that processing takes time. I think it won't take more than 30 seconds if there is a good internet connection. We should try our best to eliminate code plagiarism. It already cost us one of the best Sololearners - @Agus Mei. We shouldn't let that happen again. Post your opinion on this.

11th May 2017, 4:50 PM
Krishna Teja Yeluripati
Krishna Teja Yeluripati - avatar
26 Answers
+ 23
The idea is great but As @Burey said... It's quite complex. Why not simply add "Date of code published​" in some info section of the code.. say like beside "last modified" or so. This would give us information whose code was published first(if both codes are entirely same) and if some changes are made then i don't think there's am issue of plagiarism. Then the rest can be handled out by mods. P.S: The date of publish is visible in activity log but it would take ages to find it for person having busy activity.
12th May 2017, 2:22 AM
Frost
Frost - avatar
+ 16
unsure if there's a need for such complex protection, as many of those who plagiarize simply do it because the option is soooo easy. i've suggested SL not so long ago (still haven't got replied) the option to to make a some kind of a Protected Switch for codes. enabling the switch on public code will disable the following: copying, saving, editing only running it will be allowed. it's not 100% solution but it will force anyone who wish to steal to make some effort in copying line by line, letter by letter, and might prevent some cases (especially the bigger codes)
11th May 2017, 5:06 PM
Burey
Burey - avatar
+ 14
ok. lets imagine that codes the same: i.e. I'm making tutorial for how to use e.g. windows tts... and include a code named simply TTS in my post. I want to keep it public to let people refer to it anytime. BUT as implementation is the same as other tts code am I restricted from posting it? I made it myself... it is not a copy (though usage of this erm... way of implementation can be named as a copy bc of it being made before), I can't/don't want/don't have time to check countless SL tts codes. So am I allowed to use my code or not?
11th May 2017, 5:03 PM
Illusive Man
Illusive Man - avatar
+ 14
@Burey if that will be author enabled thing and if we could get a permission to copy (for reseach purpose only) that would be nice
11th May 2017, 5:10 PM
Illusive Man
Illusive Man - avatar
+ 12
plus let's say my code counts pi to nth digit. is it allowed to post or not? bc excluding variable names algorithm/code is THE SAME as countless codes made/posted before. oh and OUTPUT similar too. pi never changes
11th May 2017, 5:05 PM
Illusive Man
Illusive Man - avatar
+ 12
@Sachin plz more details. no means - no you can't post it or no means - no, it is allowed ???????
11th May 2017, 5:06 PM
Illusive Man
Illusive Man - avatar
+ 12
u know (no offence) but it seems we're talking nth time about the same thing and guess what? NOTHING CHANGES!!!
11th May 2017, 5:13 PM
Illusive Man
Illusive Man - avatar
+ 12
@Burey as far the best variant is yours. but I can add one more thing: modification of protected cidescan be allowed (without copy/paste, save features) bc sometimes it is useful (for research purposes only) to change e.g. animation time to see how it affects the code output.
11th May 2017, 6:08 PM
Illusive Man
Illusive Man - avatar
+ 9
SL should prevent the option of copying or editing any code. also screenshots should be disabled.......
12th May 2017, 2:39 AM
cHiRaG GhOsH
cHiRaG GhOsH - avatar
+ 8
@Burey, that's another one. I know laziness very well, people who usually copy the code or save as public to their name, won't have time to copy the whole and make a new out of it. Apart from these, copying should not be restricted because- Someone asked me to give feedback of his code by running it on pc and I only can run it on pc when I copy the code, because I can not type 300-700 lines of code.
11th May 2017, 5:12 PM
Sachin Artani
Sachin Artani - avatar
+ 8
@Illusive man, I have noticed that SoloLearn developers checks every single comment of Q/A forum. Maybe it may affect the plagiarism of codes to some extent. Maybe.
11th May 2017, 5:17 PM
Sachin Artani
Sachin Artani - avatar
+ 8
@Burey, oh yes, that will be a simplest but affective idea. It should be done so that code can be only copied if permitted by the owner of code itself.
11th May 2017, 6:48 PM
Sachin Artani
Sachin Artani - avatar
+ 8
@seamiki worry not my codes will never be protected even if they add some mechanism to do so, so hack all you want xD @Illusive Man you are right, editing should be allowed, i just wonder if it's possible to disable copying of text while allowing selection of it 🤔 guess we'll have to wait and see.... speaking of waiting.....been a while since there been an update......
11th May 2017, 7:18 PM
Burey
Burey - avatar
+ 8
@Frost, hmm, if publishing date will be stick with code permanantly, then it will be a easier to identigy who is culprit and who is the real developer. It can help us to find out the people, but cannot stop him (or anyone else) doing this.
12th May 2017, 2:27 AM
Sachin Artani
Sachin Artani - avatar
+ 7
It is a good idea but takes a lot of time and also there's a chance that one can change the input and the output a little bit, So the machine will not be able to distinguish the differences and plagiarism will be continue. But I know, nothing is perfectly secured, so atleast this work should be done to prevent sololearn from being plagiarized.
11th May 2017, 5:04 PM
Sachin Artani
Sachin Artani - avatar
+ 7
@Illusive man, Its just that Code names might be similar but not input and output (Exactly same) //Edited
11th May 2017, 5:05 PM
Sachin Artani
Sachin Artani - avatar
+ 7
@Illusive Man : As I said in (3), 2(ii) i.e. implementation check should be carefully dealt with because many members will post codes for the same concept (prime number check etc,.) and there's nothing wrong in it. So, we can follow 2(ii) only in certain conditions like when the code is too complex etc,. Also, most code stealers don't change anything in the original code which makes the need for 2(ii) very less. This solution has flaws but it can be made better.
11th May 2017, 5:21 PM
Krishna Teja Yeluripati
Krishna Teja Yeluripati - avatar
+ 7
#stopplagiarism give that feedback
12th May 2017, 9:27 AM
Iwan
Iwan - avatar
+ 6
Sir you are right.
12th May 2017, 3:11 PM
Dragon Slayer Xavier
Dragon Slayer Xavier - avatar
+ 5
The plagiarism is bull, I've seen enough and I've only been here about a month, copied codes, copied titles... trending. but like seamiki said, if u don't want people to see, use, modify, and most importantly for this platform, LEARN from your codes, don't post them as public. Keep them private and use the free IDE and compiler. That's why I am here, not to boost my rank by stealing your codes. I am currently editting a public code made by Tim G. I will keep his name in the title as long as I'm working on that same source, and give credit in final code when done, especially since he helped me by posting that code. But here's my gray area: If I use a piece of a project someone else has written, I have edited it to my purposes, added it to a project, and then want to make that public... where does it stop being copying and start being collaboration, or even original work, based on a project?
11th May 2017, 8:34 PM
Russel Reeder
Russel Reeder - avatar