Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 What is considered "cheating" in programming.
Index -> Off Topic
Goto page 1, 2  Next
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
zaczac




PostPosted: Wed May 19, 2010 10:50 pm   Post subject: What is considered "cheating" in programming.

Alright as the title says , In a high school programming class what would be considered cheating?
I mean every time I get an assignment I like to look for examples on the internet or the full program running,
then from that code my own using different code and some parts of the source I was looking at if I can't figure it out on my own.
(Never have I copied any program then handed it in.)
Reason I am asking this is because in my programming the class the teacher handed out an assignment (Like every other assignment) nothing special
and I was on this forum looking for an example program to see how the program would be put together and he took a screen shot of my screen, printed it
and sent me to the office with the paper saying I was cheating...
I mean come on I never even handed it in or started my own code yet I simply was looking at the source code.

So post your comments below thanks!
Sponsor
Sponsor
Sponsor
sponsor
A.J




PostPosted: Wed May 19, 2010 11:12 pm   Post subject: RE:What is considered "cheating" in programming.

There is a very fine line between cheating and 'looking for inspiration'. I teach the gr 11/12 CS classes at our highschool, and when marking the students' assignments, I do indeed look for any obvious similarities in code between their program and maybe some popular examples on websites such as compsci.ca . I mean, if I know that the person is a smart student and knows what they are doing, then I can wave of these similarities, and merely ask for an explanation of their code. However, if it does seem suspicious, I first go to the student to clarify this problem. I believe that your teacher was a tad unfair not consulting you first if he had a problem.
zaczac




PostPosted: Wed May 19, 2010 11:21 pm   Post subject: Re: What is considered "cheating" in programming.

Thats Exactly what i thought, He just assumed I was going to copy the whole code and hand it in I guess... He never said one word to me just "Go to the office and show them this".
I even told him I was just looking for examples and he ignored it and just told me to leave with my stuff.
Usually I just look for examples before I code anything because I find it helps out a lot even if the code is nothing alike, The methods he uses and the codes he teaches are way different from the ones posted so its not like I could just copy some huge code and hand it in anyways.
The only thing that ticked me off was the day before he told me I'm a good student and Ill do fine in the class because I understand most of the work then today out of no where he just sent me out of the class with 5 minutes left... Principal was not to happy about that..
Tony




PostPosted: Thu May 20, 2010 12:49 am   Post subject: RE:What is considered "cheating" in programming.

Some previous discussion

http://compsci.ca/blog/source-control-plagirism-in-education/

http://compsci.ca/blog/ways-to-spot-plagiarized-code/

http://compsci.ca/blog/plagiarizing-code-for-computer-programming-assignments/

It comes down to
Quote:

An excellent check would be to have students explain the code, not just through comments, but with a very quick verbal presentation. It should be pretty obvious what a student is capable of.


There is no plagiarism if you have not submitted any work. Even if one's intent is for academic dishonesty, the preemptive actions are very "Minority Report" of your teacher.

Though to be fair, if you are always looking at reference examples, then you might be predisposed to a particular design/solution. And once you are in a situation where you need to solve some novel problems or the references are not available (such as in tests and exams), you might not have the skills necessary to work through the problems.

Of course addressing such learning strategies is the job of the teacher and not of the school administration. Perhaps more examples can be presented in class, or some code samples posted somewhere. compsci.ca even! Some teachers do have accounts on the forums, direct their students here, and participate with the community to facilitate a better learning experience for all involved.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
Insectoid




PostPosted: Thu May 20, 2010 7:39 am   Post subject: RE:What is considered "cheating" in programming.

In grade 10 I used dozens of examples to see how things are done. I didn't copy them either, I just studied them to figure out how they worked. Now I'm arguably one of the top coders in my school. I find it didn't teach me how to do any particular program, but rather how to think in a new way. Once I learned that, I didn't have to use examples anymore (except for proper usage of a function or something or quick syntax review).
jcollins1991




PostPosted: Thu May 20, 2010 7:57 am   Post subject: Re: What is considered "cheating" in programming.

Even though I agree with the previous posts that you aren't plagiarizing, I think you should go through your schools academic policies anyways (can usually be found in a student planner/agenda if you have one) and also check any type of handouts you may have gotten at the start of the course, you never know what crazy rules schools will make... But if there aren't any rules that specifically apply to your situation then I really don't think there's anything the school can do to punish you, and if they persist on disciplining you you could just take your situation to people higher up in the school board maybe?

I know it seems a bit over the top, but once you get to university plagiarism becomes very serious (I think it's the assignment mark + 5% of final mark for your first offence ~ 7% of the mark in the course for your first offence), so it's probably good to get into the habit of knowing school policies and your rights as a student now...
yoursecretninja




PostPosted: Thu May 20, 2010 9:03 am   Post subject: Re: What is considered "cheating" in programming.

I think it is okay from time to time to use pieces of code from elsewhere, hopefully at least adapted, so long as the bulk of the work is your own creative work AND the original author indicated that using or modifying their work was acceptable AND you properly cited the "borrowed" code with a link to retrieve it in the comments of your code.

For example,

Sort Algorithm
Inspired by X Sort Algorithm by John Doe available at http://www...

Sort Algorithm
Adapted from Y Sort Algorithm by John Doe available at http://www...

This is the way I cite code in my source code. I list how I used the code (was it inspiration? was it adapted? was it verbatim?), the name of the code if applicable, the name of the author, and URL of where to retrieve the original code. The URL may be substituted with a reference to a book or lecture notes when appropriate. I even use this type of citation if I was inspired by someone's code. Give credit where credit is due. Just like writing an essay.

Anyone else's thoughts?
wysper




PostPosted: Thu May 20, 2010 10:53 am   Post subject: RE:What is considered "cheating" in programming.

my class has two people who copy every assignment from other people and my teacher doesnt care..its stupid. He obviously knows when they get like 5/40 on a test and 25/25 on an assignment :/
Sponsor
Sponsor
Sponsor
sponsor
wysper




PostPosted: Thu May 20, 2010 10:56 am   Post subject: RE:What is considered "cheating" in programming.

but yeah...you're not cheating. i find this website very helpful for examples and stuff..insectoid helped me finish a game for flash and cervantes Turing Walkthrough helped me learn what the teacher could'nt teach. so without this website, I'd be screwed.
Prabhakar Ragde




PostPosted: Thu May 20, 2010 11:10 am   Post subject: Re: What is considered "cheating" in programming.

It's worth stepping back a bit and thinking about the spirit of a question on an assignment, instead of what is "legal" or "illegal".

Typically the point of a question is to give you practice in problem-solving using particular skills discussed in lecture or in readings. Questions are often somewhat artificial and the point is not so much to get the answer as to go through the process of getting an answer by yourself.

You do learn something by looking at a solution but not nearly as much as if you work out that solution yourself. Furthermore, you are getting an individual mark and an individual credential. That's supposed to say something about your abilities, not those of your friends or your favourite search engine.

As wysper points out, an excessive reliance on looking up answers or getting them from friends instead of working them out yourself hurts you in the end. The reason for plagiarism rules is to discourage yielding to temptation. We tend to have an exaggerated view of our own ability to cope (Helmets are for wimps / I can drive just fine after five beers / Look ma no hands) and even good students will do themselves harm if they think everyone else is "getting away with something".

You will do yourself a big favour if you stop looking for examples as soon as you get an assignment, and instead start trying to figure it out yourself. If you get stuck, go to your teacher for a hint. The teacher may well give you permission to Google, but even then, be careful and try to only get a hint rather than the full answer. It is more work in the short term, and you may lose some marks, but you will be stronger in the long term.
Prabhakar Ragde




PostPosted: Thu May 20, 2010 11:16 am   Post subject: Re: What is considered "cheating" in programming.

FYI, here is a quote from the webpage of the first-year CS major course at UW (CS 135):

"To avoid inadvertently incurring this penalty [for plagiarism], you should discuss assignment issues with other students only in a very broad and high-level fashion. Do not take notes during such discussions, and avoid looking at anyone else's code, on screen or on paper. If you find yourself stuck, contact the tutor or instructor for help, instead of getting the solution from someone else. Do not consult other books, library materials, Internet sources, or solutions (yours or other people's) from other courses or other terms."

This applies only to assignment questions. There's nothing wrong with learning from other sources when you're not directly trying to find out how to do an assignment question.
DtY




PostPosted: Thu May 20, 2010 3:44 pm   Post subject: RE:What is considered "cheating" in programming.

The people in the office are probably not going to understand why this isn't cheating, so it might help to compare it to doing this in another subject. In writing, it would be like being given an assignment to write a story of ___ genre, and then reading a lot of ____ genre to better understand it. In math, it would be like not understanding a question, so asking the person next to you to see how they did it, to get an idea of how to approach the question. Of course, neither of this is cheating (on an assignment).

There's nothing wrong with doing what you're doing (assuming that you are doing exactly what you say in the OP, which I trust you are). The Internet is there. It would be silly to not use it.

[edit] That is to say, I see nothing wrong with it, your school still might.
Prabhakar Ragde




PostPosted: Thu May 20, 2010 4:03 pm   Post subject: Re: RE:What is considered "cheating" in programming.

DtY @ Thu May 20, 2010 3:44 pm wrote:
In writing, it would be like being given an assignment to write a story of ___ genre, and then reading a lot of ____ genre to better understand it. In math, it would be like not understanding a question, so asking the person next to you to see how they did it, to get an idea of how to approach the question. Of course, neither of this is cheating (on an assignment).


The OP did say that they included "... some parts of the source I was looking at if I can't figure it out on my own."

1) This would be plagiarism by the rules I posted.

2) What does "figure it out on my own" mean if the first thing one does is look at code which solves the problem?

3) I don't think your analogies hold. In writing, it would be like reading a story in genre X, and then using sentences and paragraphs from that story together with some of your own words. If you do this without attribution, it's plagiarism. You can do this in a nonfiction essay if you put quotes around the included material and give a citation; if there's too much of someone else's material and not enough of your own, you get a lousy mark, but it isn't plagiarism.

In math, it would be like looking at the complete solution of how the person next to you did it. Source code is not just "an idea of how to approach the question"; it's a working solution.
DtY




PostPosted: Thu May 20, 2010 4:20 pm   Post subject: RE:What is considered "cheating" in programming.

Misread that part, you're right.
zaczac




PostPosted: Thu May 20, 2010 4:23 pm   Post subject: Re: What is considered "cheating" in programming.

@Prabhakar Ragde, I guess i exaggerated a bit with the looking up code EVERYTIME I get an assignment. I usually just go online if im stuck on a certain part of the code and the teacher can't help (which happens often because I like to add a few things to the code here and there).
as for copying the code I don't just copy and paste it, I will check to see how they did it then look on java's documentation web site to understand what they did , then from there finish or correct my code.

The teacher pulled me out of class today and apologized to me and basically said he over reacted...
i guess he was having a crappy day Neutral
Display posts from previous:   
   Index -> Off Topic
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 2  [ 17 Posts ]
Goto page 1, 2  Next
Jump to:   


Style:  
Search: