Code Plagiarism CSE. CSE 501 Presentation Scott Settembre, TA September 14, 2010

Similar documents
The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.

Exercise 6 - Addressing a Message

Today. An Animated Introduction to Programming. Prerequisites. Computer programming

(Refer Slide Time: 06:01)

Chapter01.fm Page 1 Monday, August 23, :52 PM. Part I of Change. The Mechanics. of Change

CS111: Intro to Computer Science

Section 1: Let s Shake Off the Rust!

Parent. Access. Manual

Mr G s Java Jive. #11: Formatting Numbers

15 Minute Traffic Formula. Contents HOW TO GET MORE TRAFFIC IN 15 MINUTES WITH SEO... 3

A Guide to Condor. Joe Antognini. October 25, Condor is on Our Network What is an Our Network?

SchoolMessenger App. Teacher User Guide - Web. West Corporation. 100 Enterprise Way, Suite A-300. Scotts Valley, CA

Instructions 1 Elevation of Privilege Instructions

WYSIWON T The XML Authoring Myths

One of the fundamental kinds of websites that SharePoint 2010 allows

Duplication and/or selling of the i-safe copyrighted materials, or any other form of unauthorized use of this material, is against the law.

Now that you have your phone, computer or tablet, and your and code.you re ready to get started!

Unit 9 Tech savvy? Tech support. 1 I have no idea why... Lesson A. A Unscramble the questions. Do you know which battery I should buy?

ArcMap Online Tutorial Sarah Pierce How to map in ArcMap Online using the Fresh Prince of Bel Air as an example

Logging In & Logging Out

SchoolMessenger App. Parent and Student User Guide - Website. West Corporation. 100 Enterprise Way, Suite A-300. Scotts Valley, CA

CSCI 1100L: Topics in Computing Spring 2018 Web Page Project 50 points

CSCI544, Fall 2016: Assignment 1

SchoolMessenger App. Parent and Student User Guide - Website. West Corporation. 100 Enterprise Way, Suite A-300. Scotts Valley, CA

EADS up. stop think connect

The COS 333 Project. Robert M. Dondero, Ph.D. Princeton University

Computational Complexity and Implications for Security DRAFT Notes on Infeasible Computation for MA/CS 109 Leo Reyzin with the help of Nick Benes

WorkAbility I Web-Based Data Collection System

Using the Computer for Essays

CS61A Notes Week 6: Scheme1, Data Directed Programming You Are Scheme and don t let anyone tell you otherwise

CS 6371: Advanced Programming Languages

MITOCW watch?v=w_-sx4vr53m

Adobe Security Survey

What a lot of folks might call the class but as we ll see later, it s not entirely accurate.

Ages Donʼt Fall for Fake: Activity 1 Don t bite that phishing hook! Goals for children. Letʼs talk

As a lab attendant, you will be using isupport to put in tickets for issues that you work on. Those are going to break down to a few general types.

Syllabus for CSC 455 Database Systems 3 Credit Hours Spring 2012

Bring in several pieces of junk mail that have been opened and spread the mail around the classroom.

Administration Computers Software Algorithms Programming Languages

Taskbar: Working with Several Windows at Once

Lab #2 Physics 91SI Spring 2013

Welcome to Facebook. Presented by Suzi Huisman

Syllabus for HPE 451 Directed Study 1-3 Credit Hours Spring 2014

Your message in Outlook will look something like the illustration below. Begin by right-clicking on the name of the attachment.

Creating a new form with check boxes, drop-down list boxes, and text box fill-ins. Customizing each of the three form fields.

Fractions and their Equivalent Forms

We aren t getting enough orders on our Web site, storms the CEO.

Updating Your Congregation s Membership, Leaders, and Staff Information with my.uua.org

User Guide. The Tufts University Transfer Agreement Form. September Step 1 Go to

CSE 160: Introduction to Parallel Computation

ECE Object-Oriented Programming using C++ and Java

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan

CSC209. Software Tools and Systems Programming.

Here s my plan for what I will cover.

Life, the Universe, and CSS Tests XML Prague 2018

COMP 401 COURSE OVERVIEW

5 R1 The one green in the same place so either of these could be green.

Entering an NSERC CCV: Step by Step Last updated May

Parent. Portal. User. Manual

Netiquette. IT Engineering II. IT Engineering II Instructor: Ali B. Hashemi

DER GOBBLE. Good Secure Crypto Wallet Practices. What is your wallet?

Click on a link below for additional information.

Homework , Fall 2013 Software process Due Wednesday, September Automated location data on public transit vehicles (35%)

CS/ENGRD 2110 SPRING Lecture 3: Fields, getters and setters, constructors, testing

Instructions 1. Elevation of Privilege Instructions. Draw a diagram of the system you want to threat model before you deal the cards.

CMSC 201 Fall 2016 Lab 09 Advanced Debugging

Dealer Reviews Best Practice Guide

Student Success Guide

SchoolMessenger App. Parent Guide - Mobile. West Corporation. 100 Enterprise Way, Suite A-300. Scotts Valley, CA

How to Build a Culture of Security

SchoolMessenger App. Teacher User Guide - Web. West Corporation. 100 Enterprise Way, Suite A-300. Scotts Valley, CA

Usability Test Report: Requesting Library Material 1

CS 241 Data Organization using C

Project Collaboration

(Refer Slide Time: 02.06)

Capstone Documentation

Best Practices for Naming/Creating Report Templates

Wimba Pronto. Version 2.0. User Guide

Due: Tuesday 29 November by 11:00pm Worth: 8%

CVYS Online Registration FAQ!

4 KEY FACTORS FOR DATA QUALITY ON A DATA LAKE (OR: HOW TO AVOID THE DATA SWAMP) JOSH HERRITZ MIOSOFT CORPORATION MIOsoft Corporation.

Inside the Java Compiler and Virtual Machine. Nosheen Zaza

MITOCW watch?v=zlohv4xq_ti

Debugging Your Python Code: For Dummies

CMSC 201 Spring 2017 Project 1 Number Classifier

Outline Key Management CS 239 Computer Security February 9, 2004

Chapter 1. Getting Started

CS 241 Data Organization. August 21, 2018

INTRODUCTION. In this guide, I m going to walk you through the most effective strategies for growing an list in 2016.

CS 1301 Fall 2008 Lab 2 Introduction to UNIX

Avoiding Run-on Sentences, Comma Splices, and Fragments, ; Getting Your Punctuation Right!

DATABASE SYSTEMS. Introduction to MySQL. Database System Course, 2016

CS 3110 Lecture 1 Course Overview

CS125 : Introduction to Computer Science. Lecture Notes #11 Procedural Composition and Abstraction. c 2005, 2004 Jason Zych

HOW TO USE HOMESCHOOL REPORTING ONLINE

Lecture 1: Overview

ICSI 516 Fall 2018 Project 1 Due October 26th at 11:59PM via Blackboard

CMSC 201 Spring 2018 Lab 01 Hello World

CSCI 1100L: Topics in Computing Lab Lab 1: Introduction to the Lab! Part I

Craigslist Quick Tricks Manual helping you get your ads on Craigslist and getting people to click through to your site or product offer

Transcription:

Code Plagiarism Detection @ CSE CSE 501 Presentation Scott Settembre, TA September 14, 2010

Once Upon a Time Code copying was a problem. code

Attempted to Solve the Issues Solutions: Honor system ethical standards Common sense reasoning it only hurts you Threaten to unleash the TA s Severe punishments Results??? Unknown??? never measured Good enough?

Then Came Along A wonderful invention The Computer!!!

Professor Bluffing Discovered various PDS or Plagiarism Detection Software/Services Proved their existence by linking to them in their power-point slides Assumed this would deter any cheating Did you copy code? Tell me! Tell me so I can punish you severely!!!

Students notice Lots of students still cheating Lots of students still getting away with it

Why is this important? Professors can and do curve grades. This means they bump a lower grade up when many of the grades for a project are low. Cheaters rob good, hardworking students of that bump

New World Order no more bluffing

PDS Uses several years of back projects from several different classes Matches both structure, content, comments Works for many languages Java, C, C++ Matlab, LISP (similar results in %cheating) Perl, Python, Scheme, Prolog

Project Archives go back to Fall 2004 for ALL classes for ALL students

Graph of Plagiarists over 4 semesters Typical average class size: 100 students 30 25 20 15 10 < 50% copied > %50 copied 5 0 Fall 2008 Spring 2009 Fall 2009 Spring 2010

Figure 1 - Main Summary Page accessed by web browser. The top line shows a project that matched 99% since it was from a student that submitted the same code twice in two different directories. All other lines show percentages of matching in an approximated 4-5K line project. (Names are grayed out to protect the guilty )

Figure 2. Offending pair code matching window. This shows one student who didn t even attempt to subvert a diff command! (They seem to not even call the bluff!) As one student who lended the code out, wrote to me in an email 3874 lines of code *donno what to say ; I coded so well :) they copied so bad :( +

Figure 3. Here is a pair of students that actually both copied from ANOTHER student nearly their entire project. They spent several hours searching through the code and renaming each and every variable and structure field. When first questioned, one of the students claimed she didn t cut and paste or use anyone else s code, she just collaborated on the computer next to them.

Figure 4. This shows a match for a code block that had different formatting, comments inserted, and even new lines of useful code added. I would never have been able to catch something like this; it s like an NP-Complete problem for TAs, code matches might take a long time to find, but it is much quicker to verify. With MOSS we need only verify!

Initial Conclusion Actually using the PDS works better than just bluffing about using the PDS Why is there still some cheating then? Students didn t attend recitation when we tell them about the PDS Students believe that they can trick the PDS Students believe they can talk their way out of the factual results

Fact #1: You can t trick the PDS Initially, everyone denies copying There must be some mistake This is impossible I was using someone else s computer, maybe I accidentally pasted what was in their clip-board When faced with side by side, color coded, matched code Well, I did look at her code a bit I was sick, so my roommate typed for me I used online code, but there was no copyright for it Most of them just say: OK, I did it. I m sorry. But, I ve never done this before!!!

Fact #2: You can t deny the results Coincidence is highly unlikely See: http://theory.stanford.edu/~aiken/publications/papers/sigmod03.pdf

What to do if you are in a bind? Best chance is to communicate with the TA or Professor as early as possible Example #1 : having a child is a good reason for an extension Do as much as you can, submit your assignment, ask for more time Example #2 : An A TA/student panics!

What not to do! Do not steal your roommate s password Do not submit your friend s project accidentally!!! Do not take someone else s project Rename variables Move code around Insert NOP code Copy small sections from various code bases

Good Rules to use @ CSE Do not read someone else s code Do not use someone else s code Do not download code from the web Do not ask someone else to write your code Do not collaborate with another student (unless your professor says you can) Do not GIVE your code to someone else to help them (you aren t helping them)

and they all lived happily ever after! So remember and don t help anyone cheat, it doesn t help them!