Contents. 1 Introduction. CS 15 Collaboration Policy Fall 2015. 1 Introduction 1 1.1 Motivation... 2 1.2 Enforcement... 2



Similar documents
Collaboration Policy Fall 2015

CMSC Fundamentals of Computer Programming II (C++)

CIS Information and Database Systems I. Course Syllabus Spring 2015

02-201: Programming for Scientists

Here are several tips to help you navigate Fairfax County s legal system.

Math: Study Skills, Note Taking Skills, And Test Taking Strategies

SYLLABUS. NOTE: A three ring binder is required to keep notes and hand-outs neatly organized.

MKTG 2150 GLOBAL MARKETING WINTER 2015 (Tuesday/Thursday course) - - -F I R S T D A Y H A N D O U T- - -

Department of Accounting ACC Fundamentals of Financial Accounting Syllabus

Classroom Behavior Management Plan

Introduction to Java Programming ITP 109 (2 Units) Fall 2015

TA: Matt Tong Tues EBU3b B225 - Office hour WLH Discussion Thurs EBU3b B250/B250A - Lab/Office hour

CMPS 109 Presentation Software

Psych 204: Research Methods in Psychology

CS 115 Introduction to Computer Programming Course Syllabus (Night Sections) Fall 2015

Supplemental Activity

Northwestern University BUS_INST 239 Marketing Management Fall Department of Psychology University Hall, Room 102 Swift Hall (2029 Sheridan Rd.

SPAN 203: Intermediate Spanish I

Software Development Foundations CPSC Spring 2014 Syllabus

IOA Student Handbook

Get enough sleep so that you can stay alert during lecture. Falling asleep in the front row wastes your time and might offend your professor.

Academic Plan Pre-Calculus (UW Math 120) Shorecrest High School, Fall Semester 2015

CS 1340 Sec. A Time: 8:00AM, Location: Nevins Instructor: Dr. R. Paul Mihail, 2119 Nevins Hall, rpmihail@valdosta.

New York University Stern School of Business Undergraduate College

Theories of Personality Psyc , Fall 2014

Project 2: Penetration Testing (Phase II)

College Algebra Online Course Syllabus

University of Alberta Business Alumni Association Alumni Mentorship Program

Math 3E - Linear Algebra (3 units)

Peer Tutor Manual. Prepared by: Brian C. Jenkins. October 1, 2014

INTRODUCTION TO SMALL BUSINESS MANAGEMENT MANAGEMENT 103 (52356) 3 semester credits Summer Semester 2014

Sample Online Syllabus

Action Steps for Setting Up a Successful Home Web Design Business

CS 306/491-3 Linux Programming Spring 2015

Pamper yourself. Plan ahead. Remember it s important to eat and sleep well. Don t. Don t revise all the time

Honor Code Cox School of Business Graduate Programs

CS 496 Cloud and Mobile Software Development

BUS 3525 Strategic Management Online

Angel Learning Management System Introductory Tutorial for Students

SI Coordinator Handbook. Information, Resources and Forms

CS 2302 Data Structures Spring 2015

Online Basic Statistics

Syllabus for IST 346 Operating Systems Administration Permanently Tentative

Module 0. Facilitating Adult Learning. (September 2004)

Course Content Concepts

The course assumes successful completion of CSCI E-50a and CSCI E-50b, i.e. at least two semesters of programming, with a grade of C- or better.

Statistical Methods Online Course Syllabus

George Mason University Electrical and Computer Engineering Department ECE 201: Introduction to Signal Analysis Syllabus Fall 2015

COMMONWEALTH OF MASSACHUSETTS BUNKER HILL COMMUNITY COLLEGE CHARLESTOWN, MASSACHUSETTS COMPUTER INFORMATION TECHNOLOGY DEPARTMENT

Computer Science 210: Data Structures. Introduction

Class Registration 101

Your Guide To Crowdfunding With Superior Ideas

How to Study Mathematics Written by Paul Dawkins

BAE 402: Biosystems Engineering Design I Biosystems and Agricultural Engineering College of Engineering Fall 2013

CS1400 Introduction to Computer Science

GEOL 159: Prehistoric Life

MATH 140 HYBRID INTRODUCTORY STATISTICS COURSE SYLLABUS

Text: The Communication Age + interactive ebook + speech planner

STAGE 6 MONITORING AND EVALUATING CHILD PROTECTION POLICIES AND PROCEDURES

PSYCHOLOGY 101 ONLINE. Course Information and Syllabus Summer 2014

ITSY1342 Section 151 (I-Net) Information Technology Security

Course Description. Prerequisites. CS-119/119L, Section 0137/0138 Course Syllabus Program Design & Development - Fall 2015

COMPUTER APPLICATIONS TECHNOLOGY TEACHER GUIDE

Classroom Management Plan

General Psychology. Fall 2015

CS 1361-D10: Computer Science I

HOSPITALITY PROFESSIONAL COURSE (HPC) Course Overview and Syllabus

CS 43: Computer Networks Course Introduction. Grab a clicker and please sit towards the front, next to other students!

WILLIAM PATERSON UNIVERSITY CHRISTOS M. COTSAKOS COLLEGE OF BUSINESS Course Syllabus

CEDAR CREST COLLEGE General Psychology Psychology Spring 2009 Faculty: Dr. Diane M. Moyer dmmoyer@cedarcrest.edu Office: Curtis 123

The first time through running an Ad Hoc query or Stored Procedure, SQL Server will go through each of the following steps.

JRNL 301 Principles of Advertising/ IMC Fall 2015 School of Journalism, Southern Illinois University Carbondale

RESEARCH METHODS IN PSYCHOLOGY PSYC 381 FALL 2013 T & TH 12:10 p.m. to 1:25 p.m. (GRPS 1) SATURDAY 9/14 & 10/19 (8:00 a.m. to 12:00 noon Tech 101)

CFHS Grading Scale: Computer Lab Rules: THESE RULES ARE DISTRICT POLICIES AND MONITORED BY THE ADMINISTRATION, TECH SUPPORT AND TEACHER

INTRODUCTION TO INFORMATION TECHNOLOGY

FIN (MBA ) FINANCIAL MODELING Spring Office Phone: Office Hours: 3:00-4:00pm Tuesday/Thursday or by appointment

MINNESOTA STATE UNIVERSITY, MANKATO Department of Speech Communication Mankato, MN 56001

CS A250 (CRN ) C++ Programming Language 2. Syllabus Fall 2015

H-851 PHILADELPHIA UNIVERSITY. Spring 2005 M W 1:35-2:50 in Hayward 230

MUSIC BUSINESS Northwest College MUSB COOPERATIVE EDUCATION, MUSIC MANAGEMENT AND MERCHANDISING. CRN Summer 2014

Programming Languages

FUNDAMENTALS OF NEGOTIATIONS Purdue University Fall 2014 CSR CRN Tuesday and Thursday 7:30 AM - 8:45 AM Krannert Building G016

Lone Working Policy. 1. Policy Statement Purpose Scope Context Definition... 3

BCIS Business Computer Applications D10

Introduction to Psychology Psych 100 Online Syllabus Fall 2014

SOC M15 Introduction to Criminology at Moorpark College. Course # Spring 2014

Transcription:

Contents 1 Introduction 1 1.1 Motivation.................................... 2 1.2 Enforcement................................... 2 2 Discussion of Course Material 2 3 Implementation and Debugging 3 4 Labs 3 5 Online Resources 3 5.1 Piazza...................................... 3 5.2 Github, StackOverflow, etc........................... 4 6 External Resources 4 7 The Wire Pull Test 5 8 TA Hours Policies 5 9 Conclusion 6 1 Introduction CS15 is intended to provide a rigorous (and fun!) introduction to the field of computer science. Unsurprisingly, each student must independently develop a thorough understanding of the material in order to succeed. The course staff evaluates this understanding through assessment of your written work. Grades in CS15 are entirely project and homework based there are no exams thus it is imperative that we be sure that your work is solely your own. This document details what is and what is not acceptable collaboration for CS15. It covers the policies both for interacting with other students and for receiving help from the CS15 TAs. Note that some of the technical terminology used here will likely not be familiar to you be sure to refer to this document throughout the semester as your understanding broadens. 1

1.1 Motivation This policy has been developed with 50 years of experience teaching introductory computer science at Brown in mind. For CS15 specifically, the course staff believes that the most effective way of first learning software design, implementation, and debugging is through working independently. Our teaching methodology encourages grappling with the material on your own first, then referring to the qualified support of TAs if you get stuck. This allows us to fully evaluate students without exams, and additionally means that all help received is correct avoiding the possibly of inexperienced programmers confusing each other. Note that that other CS classes in the department (and previous years of CS15) have different collaboration policies. We certainly appreciate the value of partner and team programming for subsequent courses. Specifically, you can look forward to a more open collaboration policy if you continue with CS16. 1.2 Enforcement We strictly enforce this policy. Cheating has been a significant problem for the CS department in the past, but because of TA alertness and a software package called MOSS (Measures of Software Similarity), illegal collaboration is easily detected in CS15. Every year, a number of violations are caught and prosecuted with the university s standing committee on the academic code, nearly always resulting in convictions. A conviction results in a directed No Credit on your transcript, parental notification for a first offense, and typically a semester suspension for a second offense (i.e., two programs in CS15). In addition, Brown is obligated to disclose the existence of a transgression when professional schools (Law, Medical, Business, etc.) request this information. 2 Discussion of Course Material You may discuss general (i.e., not assignment-specific) CS15 concepts with anyone, including other current students. The following fall into this category: Going over CS15 lecture slides, our (non-assignment) handouts, Javadocs, etc. Discussing object-oriented programming concepts, such as inheritance or polymorphism. General syntax questions. For example, How do I declare an instance variable? Note that in each case, any examples used must be from the lectures or your own creativity you may not discuss how even broad design concepts like inheritance pertain to a specific assignment. 2

3 Implementation and Debugging You may not discuss the implementation and debugging of code for projects or homeworks with anyone except the course staff. You should not ever view or provide help with an assignment solution other than your own. You should not discuss program structure, method breakdown, or pseudocode with anyone except the TAs. Letting anyone else view your assignments code, even by accident, is strictly off limits. Whenever you are away from your computer, you should lock your screen or log out. If another student accesses your computer while you are away and uses your code, you are also guilty of violating the collaboration policy. This also applies for printing your code. When you print code, you should go get it immediately. If another student finds your printout and uses your code, you are both in violation of the collaboration policy. Keep track of your papers and dispose of printed out code when you are finished with it. Finally, allowing other students to see the files in your directory is not appropriate. Do not change file permissions to allow others to access your course materials. Also, do not post your code online in any public forum. 4 Labs Labs will be a collaborative portion of the course. This means that you can work with the students around you to discuss the lab content. However, you must produce your own work for the lab; this means you cannot use written work from other students and you must be the author of all submitted work. Collaboration in lab sections is only applicable for labs. The rest of the Collaboration Policy should be followed as described. Students must be working at their own computer. 5 Online Resources You are encouraged to frequently reference the course website as you complete your assignments. Beyond lecture slides, the website has helpful documentation and supplemental handouts. Any material on or linked to from the course website is acceptable. The official Java resources, including the Javadocs and the Java tutorials hosted on Oracles website, may be used as well. In addition, you are permitted to use a search engine to find how to fix specific errors or exceptions, but not broader conceptual solutions or implementations. For example, NullPointerException is an acceptable search query, but not How to Code Tetris. You should never visit sites which provide implementation of code related to the assignments or post questions regarding an assignment to an online forum. 5.1 Piazza This year, CS15 is introducing Piazza, an online Question & Answer academic forum. You may use Piazza in a similar manner as TA hours to ask general concept-oriented 3

questions as well as clarifying questions for assignment specifications. Important note: In order to abide by the collaboration policy, we ask that all questions be submitted privately. The TA staff will then publicize questions that we feel are appropriate for the general Piazza forum. Post that will likely be made public: Clarification questions about project handouts Logistical questions Questions about lecture concepts Questions about specific, pesky JavaFX errors Posts that are allowed on Piazza, but will stay private: Any questions specific to a project, but very narrow in scope. Questions about bugs where the solution would reveal project-specific information. Posts that should not be posted on Piazza: Questions that require more then 5 lines of code to ask Detailed project questions of a large scope (these will be referred to regular TA hours) 5.2 Github, StackOverflow, etc. You may never copy code from a forum such as Github or StackOverflow. If you are ever in doubt, ask a Head TA. As we stated in Section 3, it is also against the collaboration policy to ever publicly post any CS15 material on any such site. 6 External Resources In general, you should never discuss the implementation of CS15 assignments with anyone outside the class other than the official, current TA staff. This includes friends, roommates, students in other CS courses, past CS15 TAs, mentors, tutors, etc. If you believe you have reason to discuss CS15 assignments with anyone other than the current TA staff, you must first have it approved by the HTAs. 4

7 The Wire Pull Test Andy reserves the right to, at any time, ask you to submit to a wire pull test. The term comes from electrical engineering where in collaborative projects, students may be asked to explain the effect of pulling any given wire. In our domain, it means we may ask you to explain any line of code or program-architectural decision. In other words, we can ask you to meet and explain any part of your project code (or other written work) that we deem suspicious or confusing. Thus, you should be able to comfortably explain why you wrote any single line of code. 8 TA Hours Policies In addition to the collaboration policy, by signing the slip below, you agree to all of CS15s TA Hours Policies. The CS15 TAs are here, first and foremost, to help you as you navigate the course and its projects. However, in order to create an efficient and beneficial environment for helping students, the CS15 TA staff asks that you follow the following rules when asking for TA help: 1. Keep an orderly waitlist. This means that you cannot start a waitlist unless there is a CS15 TA on hours in the Fishbowl. Any list that exists before the first TA on hours arrives will not be honored and the list will start from scratch. You may also only add your own name to the list; you are not allowed to write anyone elses name on the list along with your own. 2. Wait outside of the Fishbowl unless a TA is helping you. The Fishbowl is a TA-only room. Students are not allowed inside of the Fishbowl unless a TA is currently helping them. When signing up for hours using SignMeUp (our system which manages TA lines), you may indicate whether you would like to be sent an email, a zwrite (a message which shows up on CS Department machines), or be called from right outside the Fishbowl. Make sure you re outside the Fishbowl when you re called (or you go to the Fishbowl right after being contacted via zwrite/email). If you aren t there, you risk losing your spot on the waitlist. 3. You may only ask for TA help once per hour. The TAs are here to guide you when you are in trouble you should not, however, rely on the TAs to solve every problem you encounter while programming. CS15 is a problem-solving course, and you are expected to try to solve the problem on your own before seeking TA help. SignMeUp will enforce this rule. 4. When asking a TA for debugging help, you must show you have put enough effort into trying to solve the bug on your own before coming to hours. This may take the form of print lines, an oral explanation of your debugging process, etc. Any student asking for TA help who has not put in adequate effort on his/her own will be asked to return to the Sunlab and debug on their own. 5

5. TAs will answer questions you have prepared before going to hours. If you come to hours with a bug, resolve that bug, and then encounter a new issue while working with TA, they will not help you with the new problem. You should return to the Sunlab and work on your own on any issues that arise from an issue solved in TA Hours before going back to a TA. 6. If you have a grading question, see the TA who graded you. If you have seen your TA grader and are still not satisfied with the result/explanation, only then may you see a Head TA about your grade always see the TA who graded you first. You may also escalate the problem to Andy if you still have concerns. 7. Adding your name to the list does not guarantee you will see a TA. If there is a long line, the last TA of the night may not have time to help everyone who has signed up. Expect unpleasantly long TA lines the nights before a project is due. If you start early and work steadily, you can avoid a situation where the lines are too long for a TA to see you in time. 9 Conclusion Any other form of collaboration not detailed in this policy is prohibited, unless first cleared by an HTA. The consequences of breaking this collaboration policy are severe. If you are ever in doubt about whether something is acceptable, please reach out to the TAs before you put yourself in a regrettable position. We believe that this policy is explicit enough to guide your judgment with very little gray area. When we confront a student with a case of suspected violation, an answer of I didn t know that this is wrong will not find sympathy. Follow the policies outlined here and you will never have to worry about the unpleasant consequences. Take pride in fully developing your individual capabilities in this class. Remember, the TA staff is here for the sole purpose of helping you succeed in CS15. You are encouraged to discuss any questions or concerns about the course (or computer science in general!) with the TAs. Note that the purpose of this policy is to prevent the type of collaboration on written assignments that would violate Browns Academic Code as it applies to CS15. Our intention is absolutely not to discount the camaraderie and fun that CS15 is known for. You re encouraged to talk to your classmates and friends about your experiences in the course, ranging from how you like this week s lecture material to how great the last skit was. We hope you find CS15 and the entire computer science department to be both welcoming and helpful. In your first lab session, you will need to electronically sign this policy in order to obtain a CS15 course account. 6