Can post a code but afraid of plagiarism

I

indar kumar

Hi,

I want to show a code for review but afraid of plagiarism issues. Kindly, suggest how can I post it for review here without masking it visible for public
 
R

Roy Smith

indar kumar said:
Hi,

I want to show a code for review but afraid of plagiarism issues. Kindly,
suggest how can I post it for review here without masking it visible for
public

You can't. This is a public forum. One of the reasons people are
willing to answer basic questions is because they knew more than one
person will benefit from the answer.
 
I

indar kumar

@Roy Smith

Can you help me privately because its an assignment and have to submit plagiarism free
 
C

Chris Angelico

@Roy Smith

Can you help me privately because its an assignment and have to submit plagiarism free

Are you sure the requirement precludes you posting your code? More
likely, the rule is that you may not copy someone else's. When it's
posted here, it'll have your name associated with it, so anyone
checking for your code on the web will see that you posted it
yourself.

But please, before you post your code, fix your posts. You're using
the buggiest client known to this list: Google Groups. Using a
different means of posting is probably the best solution, but failing
that, you could search the web for 'Google Groups Python' and find
some useful instructions. (I'd like to see that you're able to find
things based on web search results, because that's an important
skill.)

ChrisA
 
S

Steven D'Aprano

@Roy Smith

Can you help me privately because its an assignment and have to submit
plagiarism free

Then don't plagiarise.


Plagiarism means YOU copy other people. You shouldn't get in trouble
because other people copy you.

Talk to your tutor or teacher and ask what the school's policy is about
asking for external help on projects. Some schools will allow it if you
explain what help you received. Some prohibit it all together.

In general, we will help with questions about Python syntax and
libraries, but we try not to write your code for you. If you make a good-
faith attempt to solve the problem, and then ask for help, we shall try
to assist. But as I said, you should find out what your school or
university's policy is.
 
D

Devin Jeanpierre

Plagiarism means YOU copy other people. You shouldn't get in trouble
because other people copy you.

Normally, both the person copying and the person who gave away their
work to be copied are punished. It simplifies figuring out who to
punish, and discourages people from enabling cheaters.

If one of their fellow students copied their assignment, they actually
likely would be in trouble, and could be expelled or failed.

-- Devin
 
G

Grant Edwards

I want to show a code for review but afraid of plagiarism issues.
Kindly, suggest how can I post it for review here without masking it
visible for public

http://www.python.org/community/jobs/

I'm sure once you've agreed on contract and payment terms with whoever
you hire to do your private code review they will arrange a private
communications channel.
 
D

Dan Stromberg

Then don't plagiarise.


Plagiarism means YOU copy other people. You shouldn't get in trouble
because other people copy you.

I did a short time of teaching while I was in school. If three
students all turned in the same assignment, they all got docked
significantly. There was no "who copied off of whom?", it was
"someone shared when they shouldn't have."
 
C

Chris Angelico

I did a short time of teaching while I was in school. If three
students all turned in the same assignment, they all got docked
significantly. There was no "who copied off of whom?", it was
"someone shared when they shouldn't have."

What a wonderful way to promote an attitude of "my code is MY CODE and
should never leave my sight". What a delightful way of thinking to
unleash on the world.

ChrisA
 
I

indar kumar

Thanks all for help and positive comments. Actually, I tried to ask some questions but I was discouraged to do so saying that I was working on a project or some assignment. Truth be told I am stuck at one point and since I don't have experience with programming language, I have been working for it for two days but couldn't come up with some idea so posted some questions ofthe same format just to know whether there is particular method etc to do so. Hint would have been enough but I was strictly discouraged. You know the pain of working on assignment related to areas like socket programming and you even don't know how to use dictionaries and you are given only a week.. Atleast I am trying to learn. The things that I am asking here are just basics on which my whole code would be building upon. But, as I said time isvery less and have other courses also so wanted to know just the manipulation of dictionaries.

If you allow me I can post a small part of that assignment, it just requires the manipulation with dictionary which I am not getting. I am not asking to write a code for me. But a small hint would get me out of trouble.
 
C

Chris Angelico

But sometimes different skills are being examined, and the student
should be exercising skills on their own without basing it directly on
the work of others. In these cases, penalties for plagiarism are
appropriate, would you agree?

If Fred writes something and Bill copies it without acknowledging
Fred's work, then Bill should be penalized. That much is clear. That
aligns well with the requirement to see what each student can
accomplish, and with standard copyright law (including open source,
where requirement-to-acknowledge is a common part of both licensing
and courtesy). But why should Fred be punished? What has he done
wrong? If it can be proven that Fred wrote the code (granted, that's
hard to prove, but providing each student with a git/hg repo to push
code to every day would make it easier), he should be graded on that
code and not on the fact that someone else ripped it off.

When it's less clear who copied from whom, I can understand issuing
across-the-board penalties in the interests of fairness (and because
the effort of figuring out who wrote what isn't worth it), but I'd say
it's a compromise for simplicity rather than justifiable punishment on
someone who published code.

ChrisA
 
C

Chris Angelico

Actually, I tried to ask some questions but I was discouraged to do so saying that I was working on a project or some assignment. Truth be told I amstuck at one point and since I don't have experience with programming language, I have been working for it for two days but couldn't come up with some idea so posted some questions of the same format just to know whether there is particular method etc to do so. Hint would have been enough but I wasstrictly discouraged.

Here's my policy on homework. Others may vary, but you'll find a lot
will be broadly similar.

When you take a course, you should be learning, not just passing. That
means that getting someone else to do your work for you is completely
wrong, so I won't help you. But if you've put down some code and it's
not working, then by all means, ask for help with the details; it's
easy if you have an error message you don't understand (you might be
able to get that by Googling it), but a lot harder if you're getting
output you don't understand, and then it can help a LOT to have an
expert look at your code. You would need to post your code and exactly
what you're seeing as wrong (exception traceback, or "expected this
output, got this instead"); and if you make it clear up-front that
it's homework and you're looking for hints rather than an
answer-on-a-plate, I'm happy to help.

What you will find, though, is that most requests are more of the
nature of "please do my homework for me", so people are more likely to
be annoyed than helpful when they see what's obviously homework. So
you have a bit of an uphill battle just to get heard. But if you can
show that you're here to learn - and showing that you've already
written most of the code is a good way to do that - you can get help,
and often a lot of it.

ChrisA
 
B

bryan rasmussen

When you take a course, you should be learning, not just passing. That
means that getting someone else to do your work for you is completely
wrong, so I won't help you.

I have decided to become an MBA.
 
R

Roy Smith

Chris Angelico said:
What a wonderful way to promote an attitude of "my code is MY CODE and
should never leave my sight". What a delightful way of thinking to
unleash on the world.

That's a little harsh. Working in groups, and sharing code, are
important parts of how software gets developed today. Those
collaborative work habits should indeed be taught. But, school is also
about evaluation of progress. At the end of the class, the teacher
needs some objective way to figure out how much each student has learned
and assign a grade. It's hard to do that if people aren't handing in
assignments done individually.
 
R

Rustom Mody

Chris Angelico wrote:
That's a little harsh. Working in groups, and sharing code, are
important parts of how software gets developed today. Those
collaborative work habits should indeed be taught. But, school is also
about evaluation of progress. At the end of the class, the teacher
needs some objective way to figure out how much each student has learned
and assign a grade. It's hard to do that if people aren't handing in
assignments done individually.

This position is a repeat of the position on whether print is a good
function for students to use: wearing teacher hat and professional
programmer hat give very different desiderata.

As an example of the need for multiple hats consider this scenario:

You are interviewing a programmer for a java job. You ask the
candidate to explain quicksort. Quick is the answer: java.util.lang.sort
[Im using java as example because the sort in python is not so
explicitly a quicksort]

You would find this answer unacceptable (hopefully)

On the other hand when that same programmer were on job, if instead
of using java.util.lang.sort he spent his time implementing one, you
would be equally peeved (hopefully!)

Most people dont get that education is like a game: Some games --
meccano, lego -- can be explicitly educative but any game can be put
to educational purpose. Now you can stymie the purpose by saying: "I
find these rules arbitrary -- I refuse to play!" but that only
obstructs the process until some other rules/games are created. And
will be seen to be fruitless once you get that all education is more
or less about bigger and smaller toys, ie unreality.

"Dont copy" is standard rule in edu-institutes. It should be
understood to be arbitrary and not some fundamental moral law, just as
"Dont hand-touch the ball" is a rule in football but not basketball.

Some people actually have fun making up new games -- a hybrid of
football and basketball? More often people find it reasonable and fun
to stay within the parameters of pre-existing rules.

As for Dan's "Punish the whole coterie rather than only the copycats"
rule: as a teacher I can say that fancy rules that are non-computable
are worse than useless. So if this is more effective than the usual
"punish the copier" rule -- all power to you. The only thing I would
add is this: Please close the feedback loop; ie check whether the
rules are serving their intended purpose. Typically one finds that
beyond a point harsh rules are counterproductive. Probably related to
the fact that if your driving cycle is entirely carrot-n-stick, the
driven will become indistinguishable from mammals and repiles

At the other end of the spectrum is the interesting anecdote in "Zen
and the art of motorcycle maintenance." The author is teaching some
course and decides to abolish exams. The students who most strongly
revolt are bottom of the class -- ie those most likely to fail!!

Some more on my blog
http://blog.languager.org/2010/05/declaration-imperation-and-language.html
 
T

Terry Reedy

That's a little harsh. Working in groups, and sharing code, are
important parts of how software gets developed today. Those
collaborative work habits should indeed be taught.

Until recently, teaching collaboration through group projects has had
the problem of leeching. Asking group members to grade each other's
participation and contributions does not work too well. My daughter ran
into this problem in her first programming class where
private-until-done 'group' work was too much her work. In her second
class, there was discussion of each other's coding problems *in the
class*, in front of the teacher, and she enjoyed that much more.

It is now possible to run collaboration through software that records
interaction. My daughter took a composition class where discussion and
review of each other's work was recorded and contributed to each
person's grade. But this was not collaborative writing, which would be
another level of interaction, and one which is common beyond college
classes.

A programming class (probably best after the first) could use a real
(meaning, used outside of classes) repository and tracker. *That* would
better prepare people for later work, whether on a job or as an
open-source volunteer.
 
S

Steven D'Aprano

That's a little harsh. Working in groups, and sharing code, are
important parts of how software gets developed today. Those
collaborative work habits should indeed be taught. But, school is also
about evaluation of progress. At the end of the class, the teacher
needs some objective way to figure out how much each student has learned
and assign a grade. It's hard to do that if people aren't handing in
assignments done individually.

An objective way to figure out individual progress is easy. It's called
an "exam" or "test". Admittedly, it's normally only practical for
examinations to last no more than a day for senior students, and an hour
or maximum two hours for junior students, and some subjects are more
easily tested this way than others. But you can still examine a lot in a
couple of hours. If you're interested in accurately measuring the
learning of individual students, there is at least one pretty damning
problem with assignments: just because student X puts his name on the
paper doesn't mean student X wrote the paper. Assignments are effectively
based on the honour system, and we know how well that works. For those
with the money to spend, you need not do a lick of work to get an A.

Perhaps that's why Harvard has just given up even trying to distinguish
the students who learn things from those who don't? Forget George Bush's
"Gentleman's C", Harvard now practically gives A's away to anyone who
shows up (and pays the fees).

http://qz.com/153694/the-most-commonly-awarded-grade-at-harvard-is-an-a/

Presumably they're protecting their business model. Students are
customers, and if your customers are paying a small fortune to attend,
they need to get something in return. Knowledge is good, but you can't
put knowledge on a CV or frame it and put it on a wall.

It would be interesting to think about the incentives which have lead to
an over-reliance on take-home assignments rather than exams, as well as
the pros and cons of one versus the other. Don't get me wrong, there are
advantages to assignments as well, but I think that the total prohibition
on collaboration is misguided. The question in my mind is how to
encourage students to learn from each other rather than to merely
mechanically copy from each other?

Relevant:

http://qz.com/157579/confession-of-an-ivy-league-teaching-assistant-heres-why-i-inflated-grades/
 
O

Oscar Benjamin

I agree that it is unfortunate but there's a bit of a balancing act with this.
The problem is that there are two sometimes conflicting roles in education:
teaching and assessing. When you set assignments the students will usually
learn more if they work in groups. However at some point you need to try and
assess how much they've individually learned. I find in practice that it's
easy to tell when a student has copied someone else without really
understanding what they're doing though. Of course if they just pay someone
else to do it for them then there's not much you can do...
An objective way to figure out individual progress is easy. It's called
an "exam" or "test". Admittedly, it's normally only practical for
examinations to last no more than a day for senior students, and an hour
or maximum two hours for junior students, and some subjects are more
easily tested this way than others. But you can still examine a lot in a
couple of hours. If you're interested in accurately measuring the
learning of individual students, there is at least one pretty damning
problem with assignments: just because student X puts his name on the
paper doesn't mean student X wrote the paper. Assignments are effectively
based on the honour system, and we know how well that works. For those
with the money to spend, you need not do a lick of work to get an A.

The real problem with exams is that exam conditions are so unrepresentative of
real work. How often do you use the internet, or documentation, or text books
etc. in your own work? How often would you have to do something without having
anyone at least to discuss the idea with?

But yes it's absolutely necessary to have some exams or else the whole system
is open to abuse.
Perhaps that's why Harvard has just given up even trying to distinguish
the students who learn things from those who don't? Forget George Bush's
"Gentleman's C", Harvard now practically gives A's away to anyone who
shows up (and pays the fees).

I think that's a little harsh. To say that the majority of students get an
A- or better does not mean that they give A's to "anyone who shows up". I
would expect that the majority of students at Harvard do a lot more than just
show up. (I don't know much about Harvard specifically but this is true of
most universities).
http://qz.com/153694/the-most-commonly-awarded-grade-at-harvard-is-an-a/

Presumably they're protecting their business model. Students are
customers, and if your customers are paying a small fortune to attend,
they need to get something in return. Knowledge is good, but you can't
put knowledge on a CV or frame it and put it on a wall.

It would be interesting to think about the incentives which have lead to
an over-reliance on take-home assignments rather than exams, as well as
the pros and cons of one versus the other. Don't get me wrong, there are
advantages to assignments as well, but I think that the total prohibition
on collaboration is misguided. The question in my mind is how to
encourage students to learn from each other rather than to merely
mechanically copy from each other?

Relevant:

http://qz.com/157579/confession-of-an-ivy-league-teaching-assistant-heres-why-i-inflated-grades/

I can definitely empathise with what she says. Once I started marking
assignments it quickly became apparent that my standards were higher than
those of other people. Every now and again I would mark a big assignment
and get a deluge of grief from the students who had done badly. If it's a
small assignment (say 5 students) then you can build something out of that and
spend time preparing them for future assignments. If it's a big assignment
(100+ students) then it's just a whole load of grief that no one really wants.

The problem of students giving you grief doesn't really happen with exams
because in that case if someone complains it's not you (the original marker)
who has to talk to them and remark it. Where I work they have to fill out
their feedback forms before they take the exam so they can't use that to
complain about the exam being too hard or being marked too harshly. But what
does happen is that if the average grades are too high you get in trouble for
the exam being too easy. If the grade is too low you get in trouble since
you've apparently done a bad job teaching. There's a conflict of interest
right there (being both the teacher and the examiner) and it basically results
in everything adjusting to the ability of the students rather than measuring
it objectively.

Also I don't know why the Harvard TA says that this isn't a problem in the UK.
Here in the UK the government does it with national externally marked exams:

http://www.theguardian.com/education/2012/may/01/gcse-alevels-easier-says-ofqual

I would estimate that over the past ~50 years school standards for Maths and
Physics in the UK have slipped by ~1 academic year. Perhaps that's why we make
them do 4 years at university now...


Oscar
 
S

Steven D'Aprano

Hi Indar,

If you allow me I can post a small part of that assignment, it just
requires the manipulation with dictionary which I am not getting. I am
not asking to write a code for me. But a small hint would get me out of
trouble.


In all this discussion about plagiarism, we seem to have forgotten about
you! Sorry about that.


Yes, feel free to ask your question about manipulating dictionaries, and
we will try to answer. The more general your question (in the sense of
not being specific to your project), the less you need to worry about
plagiarism.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,566
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top