Computer Programming Plagiarism

We've grown quite accustomed to hearing about plagiarism as it applies to the written word, but what about students who are enrolled in programs where essay writing isn't the norm? If you yourself are in a STEM-based program, you may feel as if you are free from plagiarism accusations, but this is not the case. Students who are enrolled in science and math-based programs are at risk of being accused of a different type of plagiarism that comes with its own concerns and considerations: computer programming plagiarism. And, if you've been accused of computer programming plagiarism, it can have a great impact on your future. With all the hard work you've done, it's important not to throw that away.

In this article, we'll go over what computer plagiarism is, how it's detected, and why it's a very serious accusation that shouldn't be taken lightly. We'll also touch on what you can do to protect yourself against accusations of copying code.

What is Plagiarism?

Plagiarism refers to the act of passing off somebody else's work as your own. There are many different types of plagiarism, including the classic “copy and paste” plagiarism, which is probably what comes to mind for you when you hear the word “plagiarism.” This refers to the act of copying somebody's exact words and submitting them as your own without any citations or reference to the original author. Other types include:

  • Self-plagiarism, which happens when a student submits work that was previously completed for a previous course or when a student submits the same piece of work for two classes at the same time without receiving permission;
  • Accidental plagiarism, which happens when work is repeated without citation (can be a whole piece or sections of a piece); and
  • Mosaic plagiarism, which happens when sources are copied without proper quotations, or when the overall meaning of a piece is repeated using synonyms

As you can infer from the above examples, most types of plagiarism are associated with the written word. But as math and science degrees become more prevalent, most schools are updating their policies to involve other types of plagiarism as well. One such type, of course, is computer programming plagiarism, which will be the focus of this article.

What is Computer Programming Plagiarism?

Computer programming plagiarism, in brief, is using somebody else's code and passing it off as your own. In an academic context, it may also be expanded to include unapproved collaboration on coding assignments or improper citation of code. Computer programming is a language, after all (more accurately, it's a collection of computer languages—there are many different computer programming languages out there, each with their own purposes).

However, although there are a lot of different computer programming languages to learn, it's the same coding languages that you always see coming up again and again. The most popular coding languages out there are JavaScript, Python, Java, C#, C, C++, R, Go, PHP, and Swift.

Why Are Schools So Serious About Plagiarism?

Every school has its own plagiarism policy, but it's universally seen as a type of academic dishonesty, whether it happens on a large or a small scale. Because schools take plagiarism very seriously, they often go to great lengths to try to detect plagiarism in their student's work. Unfortunately, this means that students are at risk of plagiarism accusations even if their work is entirely their own. This is especially true when it comes to computer programming plagiarism, as such an accusation can tarnish a student's reputation in a way that follows them into the employment world, considerably damaging their career prospects.

Plagiarism can be either intentional or unintentional. In the eyes of a school, the distinction doesn't matter. This can leave well-meaning students susceptible to a plagiarism accusation even if they are doing every ounce of work on their own.

Computer Programming and Plagiarism

Computer programming plagiarism has been a concept since the early 1990s, and tools have existed that detect it since then as well (more on that later). The concept and considerations for computer programming and plagiarism have changed and evolved as the career path has, especially since the concept of plagiarizing coding languages is considerably more complicated than the concept of plagiarizing the English language.

For one thing, collaboration is a popular concept in the world of computer programming. Every time that we download a piece of software or use an app, we are engaging with the work that was developed by not one, not two, but most often a group of people.

There is also a concept in the world of computer programming that is known as “open-source code.” If you are a student of computer programming, you are no doubt already familiar with this and probably use it on a regular basis. Open source code is, by definition, free and available for wide adaptation. Many times, it is not even necessary to credit the original developer, as per its licensing.

There are many different code libraries online that are vast and accessible sources of information. Some of the most popular ones out there include Stack Overflow and Github. It's common to rely on these resources in a professional setting, but in computer programming school, this would be considered cheating.

As computer programming programs remain popular, the rate at which code plagiarism accusations occur is becoming more frequent. In fact, it has become so popular that at Brown University alone, more than half of academic misconduct cases concerned not text but code.

What Makes Computer Science Different?

Plagiarism in the field of computer science is not the same as it is in other disciplines. For one thing, it's harder to prove. While many AI-based tools do exist, they are imperfect and almost always require the involvement of human oversight. Computer science also has its own trends and norms, including the fact that collaboration is more common and that code is usually openly shared without hesitation.

One of the reasons why collaboration is more common is because of the technical nature of computer science. Unlike liberal arts courses, where many matters are open-ended and individual creative extrapolation is encouraged, technical courses tend to focus on finite or absolute answers without deviation.

The collaborative environment in computer science is also cultural. Since its heyday, computer programmers have upheld a culture of helping one another create code, and it's an attitude that is reflected in higher education environments.

However, just because it's common doesn't mean that all professors and academic officials are accepting of it. They want students to be able to demonstrate that they are learning and that they have retained the amount of information required to pass the course. This can be a confusing concept for some students to follow, especially if they are self-taught and have been coding on their own for a while.

Plagiarism is simply not as well understand in the world of computer programming as it is in other disciplines. This leaves many students vulnerable to the accusations of cheating, especially if the course that they are in does not have a well-fleshed out plagiarism policy. There also may be a connection between incidences of plagiarism and the extreme pressures that computer programming students usually face.

What is the Academic Policy on Computer Plagiarism?

The official policy on computer programming plagiarism will vary from school to school. Some schools have clearly defined policies as a part of their greater academic misconduct policy that will include a clear stance on using outside code and student collaboration.

Unfortunately, all too often, institutions have rules that lack detail or are not up-to-date. This can leave students vulnerable to accusations of cheating even if they are trying their best to submit original code. Students can also fall victim to an overly sensitive code plagiarism detector, which many schools permit instructors to use.

How Do Schools Check For Computer Programming Plagiarism?

We know that many programs exist to check for plagiarism in regular essays and written assignments, but did you know that there are also programs available online that can be used to detect copied code? It is likely that your school uses one of these to detect computer programming plagiarism.

Common Programming Plagiarism Checkers

MOSS Detector

The best common code plagiarism checker is by far the MOSS Detector, which is developed by Stanford. MOSS stands for Measure of Software Similarity. It was designed to be able to determine the similarity or programs, but it's most commonly used to detect plagiarism in coding classes. It's been around in 1994 and has been updated many times since then, though its core use has remained the same.

It's important to note that there is an important distinction between “similar” and “plagiarized.” Even MOSS doesn't refer to itself as a plagiarism detector. In the program's documentation, the creators add a disclaimer that similar code is not a detection of plagiarism. While it can detect whether or not code has been reproduced, it can not determine if the code has been properly attributed. It is up to human eyes to go back and determine whether or not there is plagiarism. This leaves a lot of power up to the instructor and other school officials.

Codequiry

Codequiry is a newer program on the market, and this one actually bills itself as a way to detect plagiarized code. It presents itself as a “modern solution for a modern problem,” with the modern problem being computer science plagiarism.

Codequiry uses a proprietary technological approach that uses the average of three different similarity tests. There is also a machine learning element to their tool that comes with the ability to comb the web, looking for matches. The tool claims the ability to look for coding styles, which is supposed to detect plagiarism among those who are trying to skirt around coding plagiarism sites. They count Stanford University, Harvard University, and Purdue University among their clients.

JPlagJPlag is another online software plagiarism detector, this time from the Karlsruhe Institute of Technology in Germany. It can work on a few different coding languages, from Java to C++ to C to C#. It can also detect Scheme and natural language text, although there are many different tools on the web that do the latter.

The main difference with JPlag is that it can't be used to compare code that is published on the web. It is specifically designed for computer programming education and only compares code among students. This means that instructors could use it to try to detect rates of collaboration among their students.

Codeleaks

Copyleaks is a well-known plagiarism checking tool designed for plain English. They are also the developers of “Codeleaks,” an AI plagiarism detector used for computer programming. The tool offers a compare feature that allows for users to compare coding documents side by side. The tool claims that it can help users in determining whether or not code copying was intentional or accidental. The tool can work with most popular coding languages, including Java, HTML, XML, Perl, and Scala.

Unicheck

Unicheck is known for being a tool that detects plagiarism in English prose, but it also has a plagiarism detector under development. It will be designed for use with the Python coding language and will use AI-based algorithmic technology. It is not yet available for use in academic institutions.

The Problems With Code Checking Software

The tools listed above are powerful—a lack of tool efficiency isn't the problem that they pose. The problem is that schools rely on these computer programming plagiarism tools too heavily, which sometimes clouds their vision and makes them see instances of plagiarism that are simply not there. This can happen in two ways.

Up to Human Discretion/Ambiguous Guidelines

Firstly, some of the above tools admit themselves that they cannot be held up as the final definitive word. When the software detects plagiarism, it's then up to a human instructor to determine whether or not the detection is a red herring. Not only could instructors fail to be transparent with their efforts, but they might also come with their own biases and agendas. What's worse is that they may not even need to show their methods to the higher education officials—they can just make a baseless claim.

Coding is Collaborative By Nature

Relying on algorithms to detect plagiarism ignores the facts that we spoke about above—that much coding is by definition collaborative, and that sharing code is a common and encouraged part of coding in many instances. Sometimes the repetition of code can be the result of unclear assignment instructions or a simple misunderstanding between student and professor. The Oregon Institute of Technology states that most computer programs that we use have borrowed ideas and that the copying of code is a common time-saving way of creating programs with similar functions.

Does Not Work Well for Short Code

Another consideration worth having, as pointed out here by documentation from the University of California, Irvine, is that automated plagiarism checkers for code do not work well in shortcode or mini-assignment situations, i.e., submissions that feature less than two pages of code. These programs are likely to pick up similarities in small assignments regardless or not if there is cause for concern.

Code-Checking Software Can Be Tricked

Professional programmers from prestigious academic institutions such as Penn State acknowledge that the monitoring of computer programming is complicated and prone to “false positives.” It also makes the point that computer programmers are coders themselves—if they wanted to evade detection through one of the various online automated coding plagiarism detection platforms, they could do so. They would simply code around it. This brings up an interesting point of whether or not it is even worth it to monitor code repetition in computer science programs.

Policies Don't Reflect Professional Realities

The fact that collaborative coding tools exist is no secret within the world of professional computer programmers, and relying on them is often acceptable, as long as it means that the job is being done efficiently and properly. This means that the attitudes in academia do not reflect that of the real world.

How Can Code Be Cited?

A common policy that computer programming schools have is that if code is not original, it must be cited. Again, though, citing computer code is more complicated than citing the written word. Let's take a look at the citation policies of a few different schools.

Georgetown University instructs students that functions that are considered to be “common knowledge” would not need to be cited—but within these instructions, it is also admitted that it's not always simple to differentiate between code that is common knowledge and code that is not.

MIT leaves it up to the professors to decide what the policy should be around code re-use. While the particular course example that is given does a good job of outlining what kind of collaboration is allowed and what isn't, the fact that the instruction can vary from class to class can be quite confusing for students—especially if they are in five different classes with five different policies.

What Might Happen if I'm Accused of Computer Programming Plagiarism?

The repercussions that come from being accused of computer programming plagiarism can range from mild to very serious.

In some cases, it may just result in your instructor pulling you out of class to alert you of their detection. However, your instructor may also report you to the school authorities, which means that you will be judged by the rules of your school's Academic Conduct policy.

This will look a little bit different depending on the school that you attend, but in general, the experience of being accused of academic misconduct can look like this:

Formal Written Warning

You will receive a formal written notice either via email or registered mail (or both). This should outline the exact complaint that has been filed against you, as well as the next steps that you should expect.

Investigation Begins

Your school should have a committee that is assigned to handle academic misconduct cases. You may be interviewed by them as part of their investigation. If you were working on a group project, other members of your group will likely be interviewed, too.

Hearing Invite

Your school will plan a hearing to address the accusation(s) against you. You will be given a date, time, and place for this hearing and given some time to prepare. You will be expected to present any evidence that you have that could help prove your innocence.

Again, this is not a court of law. But it is still a very serious, delicate matter that should not be taken likely. It is essential that you reach out to an attorney prior to your academic hearing date so that they can give you counsel for your particular case and help you determine how you can best defend yourself at the hearing.

Decision

Following the hearing, your school will make a decision on whether or not computer programming plagiarism occurred. If they find you guilty of plagiarism, they'll deliver the specific disciplinary actions that they will be taking. Some schools will allow for the course of action to be determined at the hearing, but some schools will leave this final decision up to the dean.

Important: if you have been found guilty, you are given the choice of an appeal. You may need to make your appeal during a specific window of time. If you do appeal, you will be given the opportunity to present your defense at a separate hearing. The decision that is made at this appeal hearing will be final.

How Serious is This Accusation?

The accusation of computer programming plagiarism is serious. Perhaps even more frightening than the real-time punishments are the lasting effects that an accusation of plagiarism could have not only on your academic career but on your real-life career, too.

It can be tempting not to take an accusation from your academic institution seriously, as it is not a court of law. However, it is important that you treat a plagiarism accusation as very serious, as its repercussions can be long-lasting.

What are the Penalties for Computer Programming Plagiarism?

Colleges and universities consider plagiarism of all kinds to be a serious offense, so it makes sense that the penalties that they give out are also serious in nature.

In general, the penalty for plagiarism, including coding plagiarism, ranges from assignment failure to course failure to suspension. In some cases, a student may be expelled or placed on academic probation. They may also see a retroactive reduction in their course grade. Let's take a closer look at some of the devastating effects that a plagiarism accusation can have.

Tarnished Reputation

A plagiarism accusation can hurt a student's reputation within their academic institution and even further afield—word travels fast! This can make it harder for them to procure important documents and opportunities that have a real-life effect on their future, such as reference letters.

Internships and Professional Opportunities

Many computer programming students use their summer breaks as the perfect time to secure an internship or other professional opportunity that can help elevate their careers. However, if you have a plagiarism accusation on your record or word has gotten around that you have been accused of plagiarism, you may find that it is considerably harder to find professional opportunities within your community.

Scholarship and Grant Retractions

In some cases, students that have been accused of plagiarism can find their scholarship and financial grants retracted by the school or the donor. Don't doubt that this can have devastating financial repercussions for the student.

Suspension or Expulsion

Some schools may include the possibility of suspension and expulsion in their academic misconduct policy. This means that students that are found guilty of plagiarism could possibly not only get kicked out of their program but their academic institution as a whole.

Failing Grade

In some cases, a plagiarism charge can result in a failing grade in a course. If the course has already been completed, in some cases, it may be possible to fail a student retroactively.

Grade Reduction

Even if a student is not handed a failing grade, a grade reduction is still very possible. This can have very real effects on a student's GPA.

It's not often that a school has a blanket penalty that applies to every single plagiarism case. What's more likely is that a school's academic misconduct committee will examine a variety of factors when making their decision, including whether or not it is the student's first plagiarism incident, whether the incident seems accidental, and whether or not they deem the plagiarism case to be premeditated. As you can see, there is a lot of individual discretion that goes into the overall punishment decision, which can make the process quite unpredictable for students.

I've Been Accused of Computer Programming Plagiarism—Do I Need An Attorney-Advisor?

In order to best defend yourself against the very serious accusation of plagiarism, it is best to seek the help of an attorney-advisor.

Oftentimes plagiarism accusations are complicated and will require an equally complicated defense. Trying to come up with one on your own can be quite complex and leave a lot of margin for error, which can end up hurting your academic career in the long run.

How Can an Attorney-Advisor Help?

An academic misconduct hearing does not take place in a court of law. However, if you have been accused of computer programming plagiarism, an experienced attorney-advisor can still help you in several ways. Your academic institution may try to tell you otherwise. But it is important that you know your rights and the way that an attorney-advisor can make all of the difference in your future academic and professional careers. As a student, you will not know how to best defend yourself, and you should not expect to, either.

Expert Recommendations and Defense

An attorney-advisor will take a look at your academic misconduct case and make recommendations based on your specific situation. An expert attorney-advisor can take an in-depth look at your school's particular academic misconduct policy and search it for particulars that can help you win your case. They will be able to direct you on how you can use the existing evidence in your favor and how you can present your case to the school in a compelling way.

Because your attorney-advisor is a law professional, they will be able to point out considerations that wouldn't naturally come to a student. As a matter of fact, it's unreasonable for students to be expected to come up with their own defense, as they are just getting started in their career and do not have enough relevant experience in order to properly defend themselves.

Win an Appeal

If you have already tried to fight against your plagiarism charge and lost, it isn't too late. You can always appeal your school's decision and reach out to an attorney-advisor before your second hearing.

You may have heard that your college or university will not allow an attorney-advisor to speak at your hearing. While this may be true, many schools will allow them to be physically present. This means that if an appeal is advised, your attorney-advisor will be able to tell you exactly how to approach the process.

Contact the Best Attorney Advisor for Plagiarism Accusations

If you or a loved one has been affected by an accusation of academic misconduct, it can be quite the disruption. You should not leave the outcome of their hearing up to chance. While not a court of law, an academic misconduct hearing can still have a strong negative impact on the future prospects of a student. A skilled attorney-advisor can help.

Attorney Joseph D. Lento has unparalleled experience with helping students across the country who have been accused of academic misconduct. You or your loved one doesn't have to navigate this serious and frightening accusation alone—professional help is available. Call the Lento Law Firm today at 888.535.3686 or reach out online and receive an expert consultation.

Contact Us Today!

footer-2.jpg

If you, or your student, are facing any kind of disciplinary action, or other negative academic sanction, and are having feelings of uncertainty and anxiety for what the future may hold, contact the Lento Law Firm today, and let us help secure your academic career.

This website was created only for general information purposes. It is not intended to be construed as legal advice for any situation. Only a direct consultation with a licensed Pennsylvania, New Jersey, and New York attorney can provide you with formal legal counsel based on the unique details surrounding your situation. The pages on this website may contain links and contact information for third party organizations - the Lento Law Firm does not necessarily endorse these organizations nor the materials contained on their website. In Pennsylvania, Attorney Joseph D. Lento represents clients throughout Pennsylvania's 67 counties, including, but not limited to Philadelphia, Allegheny, Berks, Bucks, Carbon, Chester, Dauphin, Delaware, Lancaster, Lehigh, Monroe, Montgomery, Northampton, Schuylkill, and York County. In New Jersey, attorney Joseph D. Lento represents clients throughout New Jersey's 21 counties: Atlantic, Bergen, Burlington, Camden, Cape May, Cumberland, Essex, Gloucester, Hudson, Hunterdon, Mercer, Middlesex, Monmouth, Morris, Ocean, Passaic, Salem, Somerset, Sussex, Union, and Warren County, In New York, Attorney Joseph D. Lento represents clients throughout New York's 62 counties. Outside of Pennsylvania, New Jersey, and New York, unless attorney Joseph D. Lento is admitted pro hac vice if needed, his assistance may not constitute legal advice or the practice of law. The decision to hire an attorney in Philadelphia, the Pennsylvania counties, New Jersey, New York, or nationwide should not be made solely on the strength of an advertisement. We invite you to contact the Lento Law Firm directly to inquire about our specific qualifications and experience. Communicating with the Lento Law Firm by email, phone, or fax does not create an attorney-client relationship. The Lento Law Firm will serve as your official legal counsel upon a formal agreement from both parties. Any information sent to the Lento Law Firm before an attorney-client relationship is made is done on a non-confidential basis.

Menu