[Bf-education] how to catch cheaters in a class?

Antonio Carvalho antoniorcn at hotmail.com
Thu May 25 19:37:40 CEST 2017

Hi Piotr,

    I'm teacher in Brazil, working in many classes of Java Programming, C Programming and cheating is a problem faced all days.

    Actually I'm giving individual works for each student (they can choose what they want to do), and according to Ton Roosendaal sugestion, I applied a competion, each student evaluate the job of other 3 (or more students), based in some criterias, distributing  a number of specific points for each criteria, for sample 18 points in case of 3 jobs, and to avoiding have them distributing 6 points for each, without evaluate correctly, I penalize the students that evaluate the jobs in certain criteria, in diferent way than the other peers.

    It looks like complicated, but there are some tools which allow it, in my case I'm using Moodle (www.moodle.org<http://www.moodle.org>) whoose have a kind of exercise type named workshop allowing this propose, in this kind of exercise the teacher can specify the criterias, the student can submit his own work, after that the tool will random who will evaluate whom, and at the end you can calculate the average of each student.


Antonio Rodrigues Carvalho Neto

Faculdade de Tecnologia do Estado de São Paulo (FATEC)
campus Zona Leste e Carapicuíba
Analise e Desenvolvimento de Sistemas e Desenvolvimento de Jogos Digitais
antonio.rcarvalho at fatec.sp.gov.br<mailto:antonio.rcarvalho at fatec.sp.gov.br>
antoniorcn at hotmail.com<mailto:antoniorcn at hotmail.com>

Em 25/05/2017 13:24, Ton Roosendaal escreveu:

When a teacher starts putting tricks in place to avoid cheating he's losing it. I wouldn't solve the symptom (cheating) but the cause (students don't like homework or assignments).

Give them something that relates to them (build your own bedroom) or makes it personal (give each a different letter of alphabet to do something with). Think of a challenge involving competition. Or teamwork. And they should actually learn skills from it. It's the process what counts then, not the result.


Ton Roosendaal  -  ton at blender.org<mailto:ton at blender.org>   -   www.blender.org<http://www.blender.org>
Chairman Blender Foundation, Director Blender Institute
Entrepotdok 57A, 1018 AD, Amsterdam, the Netherlands

On 25 May 2017, at 07:52, Piotr Arłukowicz <piotao at inf.ug.edu.pl<mailto:piotao at inf.ug.edu.pl>> wrote:

Thanks Mike,
in fact, I already was forced to do such 'heuristics', because lots of files were 'too' similar.

However, in case of animation this is rather hard to tell, especially when students are opening the same file with assignment. I could potentially solve that telling them to import rather than open, and then such lovely random string or just something (creation timestamp?) will be a nice addition to the normal Blender.
How many teachers are still here? Don't have any of you cheating problems?

Maybe it's a good idea to create such a plugin, where student can 'submit' the work right from Blender...


Piotr Arłukowicz, PhD, BFCT
University of Gdańsk, Faculty of Mathematics, Physics and Informatics, Dept. of AI,
Wit Stwosz 57, 80-952 Gdańsk, room 121, tel.: +48585232151, https://inf.ug.edu.pl/~piotao<https://inf.ug.edu.pl/%7Epiotao>
Polish Blender Course: http://polskikursblendera.pl/ [PL]

2017-05-25 0:12 GMT+02:00 Mike Pan <mike.c.pan at gmail.com<mailto:mike.c.pan at gmail.com>>:
Very interesting question...

You can certainly build an addon that saves a random string of some sort into the Blend file. Or even something that tracks the originating computer name and total time spent editing the file (to prevent copy+paste from blendswap/turbosquid) but the students can always 'forget' to use the correct blend version or the addon.

I think a more fool-proof approach might be to analyze the students' files based on a bunch of heuristics. This way, the blender file doesn't have to be special, but you can still catch copycats.  Here are some things you can look at:
- Datablock names. Especially mesh, material and image names, which is something many people don't bother changing.
- Node positions. Even if the material is identical, chances are the nodes are arranged differently. (unless they are using the material panel to generate all the nodes)
- Look at exact value of properties? (eg. If both students are using a particle system, unlikely they are both emitting exactly 2740 particles from frame 77-333)
- if an image texture has been packed and not "made relative" yet, it might contain the full path of the image, which is telling if it originated from another user/computer.

That's all i can think of for now. Hope that helps,


On Wed, 24 May 2017 at 12:14 Piotr Arłukowicz <piotao at gmail.com<mailto:piotao at gmail.com>> wrote:
Hi all,
is there any way for a teacher to tell whether or not some files in the class, which were collected from an assignment, are copied from the same person or were created on the same computer?

I have classes and I have collected quite a few blend files to check. They are similar in few areas, so I'm unsure if they were created by different persons.

To solve this problem Julian wrote a small patch few years ago which stored a random number inside blend file (so I could at least tell if somebody copied somebody's else work and modified it slightly), but unfortunately I've got a bunch of files made in just an ordinary, brand blender release 2.78.
Files from students are suspiciously similar (for example a manipulator is often set to rotate, not translate).

So, is there ANY way to tell?
If not, it could be a good idea to introduce just a random number or microsecond stored when file is created and then never changed. This small thing could make life easier and could also detects nasty cheating, which, unfortunately happens too often in some countries :(



Piotr Arlukowicz
Version: 3.1
GCS/ED/IT/S d++(-)>--pu s(+):(+)> a C++(+++)$@>++++$  ULAVISC*()$>+++$ P++(+++)$>++++ L++(+++)$@>++++$ !E---(---)>++ W++(+++)$@>+++ N(+)>++ o--? !K-(-)>-$ w++(+)>-- !O-(-)>- !M-(-)>-- !V-(-)>- PS(+)>++ !PE()>+  Y PGP>+ t(-) !5? !X R()>* tv- b++ DI++ D+(++)>+++ G++@ e++++>+++++ h---()>++ r+++ y+++
Bf-education mailing list
Bf-education at blender.org<mailto:Bf-education at blender.org>

Bf-education mailing list
Bf-education at blender.org<mailto:Bf-education at blender.org>

Bf-education mailing list
Bf-education at blender.org<mailto:Bf-education at blender.org>

Bf-education mailing list
Bf-education at blender.org<mailto:Bf-education at blender.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.blender.org/pipermail/bf-education/attachments/20170525/d97f7151/attachment.html>

More information about the Bf-education mailing list