7

I'm an undergraduate in CS and I had a class in Adv. Data Structures & Algorithms in the spring of this year. Near the beginning of it I was pressured by a fellow classmate to "google pseudocode examples" and use them to do my labs. I guess the point here was that it wasn't copy and paste (being pseudocode) and still had to be adapted to the language for the class. I did something like that once to finish an assignment in that class (most of the code was my own that I solved myself). None of this did felt right to me, but again I felt pressured. I heard a lot of chatter from fellow students concerning the using of pseudocode. Again I didn't feel this was right.

Time passed and I forgot about it. The school recently sent out an email survey regarding plagiarism. That's what got me thinking about the previous semester. I want to note that I've never plagiarized in my life and I make every effort to avoid it [I have principle's]. I also have a good definition of what plagiarism is, to a point I think I understand this better than most.

So my questions are: is using pseudocode examples an act of plagiarism? If so where do I go from here? Shall I email the instructor openly and honestly tell them what happened?

Honesty is one of my principle's. I'm posting this here in the hopes that some of you will understand that. Logically it sounds like using said pseudocode is an act of plagiarism (the idea's are the same). Its still ambiguous to me, I need to know what others think.

  • 2
    Depending upon the class specifics, it might have been plagiarism. Honestly, you're probably best putting it behind you and making sure you don't do it again. – Ric Aug 24 '16 at 18:30
  • Can you define class specifics? Do you mean rules of the class? – MegaWitt Aug 24 '16 at 18:31
  • 2
    We don't know what your school or professor considers plagiarism. It's possible that looking up hints online is fine, it's possible that you're not supposed to have any help. – Ric Aug 24 '16 at 18:34
  • 5
    I would not worry too much. E.g., finding the pseudocode for binary search and then writing the corresponding C or Java code requires a significant amount of work (for an undergrad). Without the pseudocode for binary search (from a well-respected source) writing the respective correct Java code would be impossible. For well-known algorithms this is expected and normal (if you cite your original sources). – Alexandros Aug 24 '16 at 19:14
  • 5
    I have taught computer programming for 15 years and I would not call this plagiarism. Much of what goes on in computing is a duplicate of what has happened before and in a work environment you would be remiss not to use pseudocode or even code. Best practice: if you pull something off of the internet to help you get started just make a little comment that mentions where you got it from. And when in doubt, ask the professor as @Ric suggests. – Dave Kanter Aug 24 '16 at 19:25
9

Plagiarism is when you claim somebody else's work as your own. We most often hear about it with regards to words or images, but it can just as easily be applied to other types of intellectual work as well, including pseudocode.

The critical question, then, is whether what you have done can be reasonably understood to be claiming the work as your own. This depends on the particular assignment, but the cases here fall into two general categories:

  • If the assignment is asking you to create a piece of code, then finding a piece of pseudocode that does the same thing and translating it would be plagiarism because you are pretending to have created the code yourself, when in fact you have not.
  • If, on the other hand, the assignment is asking you to create a complex system, one component of which happens to be implemented using a subroutine that you have translated from elsewhere, then it is essentially the same as finding an appropriate library call and entirely acceptable (unless there were rules clearly intended against such). In this case, the creative work is the assemblage, and you are not representing that particular fragment code as your own --- though it is best practice to be explicit about your sources in comments, for copyright and license reasons.

Given that your professor was encouraging the use of outside resources as part of the project, it seems to me that what you describe is both ethical and normal practice.

  • I may add (in retrospect) that the professor had said the class could use pseudocode, and I never had the book for this class. I had no idea what pseudocode was (beyond my limited experience at the time) or that most exercises were explained in detail and with pseudocode in that book... a classmate later explained to me this was indeed permissible. Thank you for your input! – MegaWitt Jul 1 '19 at 1:18
1

You've got a category error.

If using outside references isn't allowed, it isn't only plagiarism, it's cheating.

It doesn't matter whether online or other resources are allowed to be consulted: If you didn't reference where you got the pseudocode, it was plagiarism (your course may still allow this, although in my opinion -- I'm a professor, too -- it shouldn't!).

-1

No, it is neither plagiarism nor cheating. During the algorithms course you're supposed to learn about existing algorithms, and there is no way to study an existing algorithm other than by looking at its pseudocode.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.