How to Avoid Plagiarism for Computer Codes....forstudents

Cabus, Michael CabusM at PHILAU.EDU
Wed May 21 09:40:20 EDT 2014

From what I read, the responses have largely missed the boat on this one.

Citing sources in both programing and writing serves a functional purpose; and I think not emphasizing this to students is doing them a huge disservice.

Often when you are learning to program (and write) you need to borrow other ideas/code…and, in programming, with GitHub, finding repositories is easy enough; adapting to your context is harder, but, if possible.

Having been in a grad program that relies on programming, I have seen all too frequently students who just grab whatever code they get online and, if it works reasonably well, call it a day, without notating in a comment where the code comes from and why they used it.

This creates a problem if you ever want to use this code again…as you did not write it, it may be you do not quite understand what it is doing…if it breaks, you have lost your reference to the “handbook”, which describes what is happening and may even point to why the code has broken (and have an update); if you are working in the real world, where another person will look at this code at some future point, and they just assume you wrote it, then they will spend considerable time interpreting it, when it could have been an easy reference to its source, which would have given them a good overview.

Assuming you are using one piece of “borrowed code”, these would be the issues; if you are using parts and pieces of numerous libraries, your code will be almost undecipherable without commentary and citations…it becomes a monster…I have seen enough “monster code” from people with good intentions, who want to create something, but as the person who had to rework it, it proved to be a nightmare just understanding the various pieces…

It is particularly a disservice to students as many programming departments at companies want to see code samples as part of the hiring process; if the student sends them monster code, and the programmers recognize bits and pieces taken from places with credit (it could even be their code library, or one they contributed to), this will look sloppy and unprofessional…good programmers like order, neatness as much as good librarians do..these things separate talent from “well, it’s good enough”.

Calling it plagiarism may not be quite accurate, but there is still a professional duty here, that, if not done, is not good for the person or their reputation.

Michael Cabus

Systems Librarian, Paul J. Gutman Library
Philadelphia University
Phone. 215.951.5365

*opinions are my own*

From: Web technologies in libraries [mailto:WEB4LIB at LISTSERV.ND.EDU] On Behalf Of William Gunn
Sent: Wednesday, May 21, 2014 9:07 AM
Subject: Re: [WEB4LIB] How to Avoid Plagiarism for Computer Codes....forstudents

I were teaching the class, I would point out that almost all coding they'll do professionally with copy liberally from others. You do need to explain about licenses, of course.

If you want to make sure they understand how to write a loop or something, you can ask them to not copy for the purposes of the exercise, and penalize those who do copy for not following instructions, but please don't confuse things by bringing plagiarism into it. It really is a meaningless concept in this domain.

Just my $0.02...

William Gunn | Head of Academic Outreach, Mendeley | +1 650 614 1749
On May 21, 2014 2:33 PM, "Hockenberry, Benjamin" <bhockenberry at<mailto:bhockenberry at>> wrote:

The second example given in the UPenn "Avoiding Plagiarism:  Writing Computer Code" you mentioned ( seems to define code plagiarism in a disconcerting way.  The code in "Unacceptable example 2" shares *meaning* (does this mean “function?”) with the example in the textbook, but its structure is significantly different.

I would be very averse to such a plagiarism detection system if it were implemented programmatically.  There are many ways to write a while loop, but the discussion at the U Penn site says that logical equivalency (in a sense, “meaning”) equals plagiarism.  The similarity between student responses to a common assignment (like looping through an array) would cause every student to fail such a plagiarism test, and under many academic institutions’ academic integrity policies, this could be grounds for dismissal after only one or two occurrences.

Attribution should be given in code, yes.  But I’m wary of this “structure and meaning” argument when it comes to functional similarities.  Is this discussion precipitated by the Oracle-Google lawsuits, Joyce?

Ben Hockenberry, Systems Librarian
Lavery Library, St. John Fisher College | 3690 East Avenue, Rochester, NY 14618
(585) 385-8382<tel:%28585%29%20385-8382> | bhockenberry at<mailto:bhockenberry at>

From: Web technologies in libraries [mailto:WEB4LIB at LISTSERV.ND.EDU<mailto:WEB4LIB at LISTSERV.ND.EDU>] On Behalf Of James MacDonald
Sent: Wednesday, May 21, 2014 8:19 AM
Subject: Re: [WEB4LIB] How to Avoid Plagiarism for Computer Codes....forstudents

I must disagree... the use of other people's work should be cited including coding. Here is a nice academic integrity handbook from MIT:

There are times when citing is not necessary - such as factual common knowledge - for example, the capital of Canada is Ottawa. Neither would you cite say a for loop for iterating through and array.

Attribution should be given where it is due even for those small snippets of code (without which your code would be useless).

James MacDonald
Web Services Librarian
University Library

Tel +971 6 515 2270<tel:%2B971%206%20515%202270>
Fax  +971 6 558 5008<tel:%2B971%206%20558%205008>
American University of Sharjah
PO Box 26666, Sharjah
United Arab Emirates<>
jmacdonald at<mailto:jmacdonald at>

On May 21, 2014, at 3:48 PM, Forrest, Stuart <sforrest at BCGOV.NET<mailto:sforrest at BCGOV.NET>> wrote:

Yes the whole point of modern programming is code reuse.

Stuart Forrest PhD
Beaufort County Library
South Carolina
843 255 6450<tel:843%20255%206450>
For Learning, For Liesure, For Life.

Sent from my iPad

On May 21, 2014, at 6:31 AM, "Riley Childs" <riley at TFSGEO.COM<mailto:riley at TFSGEO.COM><mailto:riley at TFSGEO.COM>> wrote:

Most of the time coding takes bits and pieces, sometimes even entire files! Do you mean citing your sources per se?

Riley Childs
Asst. Head of IT Services
Charlotte United Christian Academy
(704) 497-2086<tel:%28704%29%20497-2086><><<>>
Sent from my Windows Phone, please excuse mistakes
From: William Gunn<mailto:william.gunn at MENDELEY.COM>
Sent: ‎5/‎21/‎2014 4:15 AM
Subject: Re: [WEB4LIB] How to Avoid Plagiarism for Computer Codes....forstudents

Joyce, there's no concept of plagiarism in writing software that I'm aware of.

Did you mean a different kind of programming code?

William Gunn | Head of Academic Outreach, Mendeley | @mrgunn | (650) 614-1749<tel:%28650%29%20614-1749>

On Tue, May 20, 2014 at 2:59 PM, Joyce Wong <joyce.wong at<mailto:joyce.wong at><mailto:joyce.wong at>> wrote:
Hi everyone

Apologies for any duplication.

Does anyone have an online guide on avoiding plagiarism specifically on programming codes for students?  Our Computer Science Department is interested in developing one and I'd rather not re-invent the wheel.
I have already found the page from University Pennsylvania.

Thank you

Joyce Wong
Coordinator of User Experience
Langara College Library. 100 West 49th Avenue, Vancouver, BC, V5Y 2Z6
T: 604-323-5047<tel:604-323-5047><tel:604-323-5047>
F: 604-323-5512<tel:604-323-5512><tel:604-323-5512>
joyce.wong at<mailto:joyce.wong at><mailto:joyce.wong at>

Please consider the environment before printing.
CONFIDENTIALITY: This e-mail may contain confidential or privileged information. If you are
not the intended recipient, please notify us immediately and delete this email from your system.


To unsubscribe:

Web4Lib Web Site:


To unsubscribe:

Web4Lib Web Site:


To unsubscribe:

Web4Lib Web Site:



To unsubscribe:

Web4Lib Web Site:

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Web4lib mailing list