CSCI0200
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
      • Invitee
    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Sharing URL Help
Menu
Options
Versions and GitHub Sync Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
Invitee
Publish Note

Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

Your note will be visible on your profile and discoverable by anyone.
Your note is now live.
This note is visible on your profile and discoverable online.
Everyone on the web can find and read all notes of this public team.
See published notes
Unpublish note
Please check the box to agree to the Community Guidelines.
View profile
Engagement control
Commenting
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
  • Everyone
Suggest edit
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
Emoji Reply
Enable
Import from Dropbox Google Drive Gist Clipboard
   owned this note    owned this note      
Published Linked with GitHub
Subscribed
  • Any changes
    Be notified of any changes
  • Mention me
    Be notified of mention me
  • Unsubscribe
Subscribe
--- tags: Documents, spr22 --- # CSCI0200 Collaboration Policy (Spring 2022) [TOC] ### 1 Introduction Our goal is to help you learn introductory material in computer science. Studies show that students perform better in the long-run when their introductory CS experience is collaborative. Hence, we encourage collaboration of different forms on different assignments. At the same time, we want to make sure that by the time you leave this course you have internalized the material yourself. Therefore, we have adopted a collaboration policy that generally encourages teamwork while establishing a few boundaries that help you make sure you understand everything you hand in. This policy is specific to CSCI0200. Policies vary widely from course to course. If you have any questions about this policy, please raise them with the TAs or the professors. The consequences of violating this policy can be severe, inaccordance with [Brown's Academic Code policies](https://www.brown.edu/academics/college/degree/policies/academic-code). ### 2 Assignment-Specific Policies **Labs:** Lab work will normally be done in pairs. On coding problems, you should take turns sharing your screens. Switching off every fifteen minutes works well. Although only one person is on screen at a time, both of you will be talking through the solution and making suggestions to each other, catching mistakes as small as typos and as significant as a misunderstanding of the problem specification. There are no restrictions on collaboration in labs. **Homeworks:** You are encouraged to discuss homework assignments with other students. You may even work out solutions together at a conceptual level. However, **you are not allowed to take away any code or notes about code from these sessions**. Emails, IM conversations, screenshots, photos of whiteboards or notes and the like all constitute "notes". We expect you to fully comprehend everything you hand in. To that end, you must write up your solutions entirely on your own. Your ability to independently implement solutions possibly developed with your classmates is proof that you understand them. **Projects:** Barring extenuating circumstances, you are required to pair program the projects. That means you will code the project together with a partner. Note that divide-and-conquer (you code this part, I'll code that part) is not pair programming and is not acceptable. See the [Pair Programming handout](https://hackmd.io/@cs18-spring-2021/rk1u3BZk_) for further clarification. Do not hand in any code that you and your partner do not both understand fully. This is in your interest as questions about the projects may appear on the midterm and final. During project final grading, your grader/TA may ask specific questions about your design and implementation to each of you and your partner. Saying "I didn't write that part, so I don't know" is not an acceptable answer and will cost you points. So work in a way such that both partners understand the project implementation. When discussing projects with students other than your partner, you should follow the take-away-no-notes-or-code-from-joint-work-sessions policy that applies to homeworks. Under no conditions should you share any of your code with anyone other than your assigned project partner(s). **Exams:** No collaboration whatsoever is allowed on exams. You will be asked to acknowledge on each exam that your solutions are entirely your own, that you did not discuss the content of the exam with anyone other than the course instructors, and that you did not consult any sources other than the course materials. ### 3 Collaboration Around Debugging Sometimes all programmers will get stuck trying to find a bug in their code. We know that students sometimes end up waiting in the office hours line for some time, just to track down what ends up being a simple error that they just didn't see. A collaboration policy that forbids you from ever seeing another student's code raises the time demands on everyone, often in unproductive ways. You are permitted to assist one another in debugging code for homeworks and projects under the following conditions: - the student who is assisting is close to done with the bulk of the coding part of the assignment (so that student will not gain significant insight into the problem by seeing someone else's code) - the assistance given is limited to either correcting a simple error or discussing a possible conceptual confusion. The assistance should not effectively dictate significant parts of the code - there is no statement on the assignment handout that explicitly prohibits seeing another student's code for purposes of debugging assistance ### 4 Online Materials We are very lucky to live in an information age where people can share knowledge so easily, giving us so much knowledge at our fingertips. We want to encourage you to take advantage of the available knowledge pertinent to CSCI0200; but at the same time, our goal is to teach you to solve problems, and you cannot develop this skill if you consistently turn to others for their solutions. #### 4.1 The Web as a Resource The CSCI0200 website includes links to all the course lectures and assignments, as well as various supplementary documents, some of which we have written (e.g., the style guides), and some of which we have not (e.g., the Java and Python online documentation). You are free to access all materials linked to from the course website. You are also allowed, with some restrictions, to search the web. Specifically, you can search the web to enhance your understanding of a language construct, a data structure, or an algorithm presented in class. More generally, you can search the web for answers to questions that are independent of any particular assignment. However, you are not permitted to search the Web for any other information regarding CSCI0200 assignments. Furthermore, it is never in any way acceptable to copy or adapt solutions from an online source. For example, searching for a solution to a problem in language X, when you were asked for a solution in language Y, is indeed information regarding a CSCI0200 assignment, and cannot be consulted. Here are some examples of search queries that abide by the CSCI0200 academic honesty policy: * Declaring an array in Java * What is a null-pointer exception? * How to import library for HashMaps in Java * What's the operator for checking list membership in Python? Here are a few examples of search queries that do NOT abide by the course collaboration policy: * How to implement a hash table * What code looks like to implement a specific algorithm * Prior homework solutions from CS16 or CS18 If you're ever in doubt about whether a certain query is acceptable, you can always ask the TAs (or even ask them your question!). There is no penalty for asking for clarification on the policy. In the event that you inadvertently stumble upon information relevant to a solution to a problem, just close the site before reading details. If you feel you crossed the line of the policy, contact us and document your source. Depending on the extent, you might not receive credit for your solution, but a citation will protect you from being charged with violating the course collaboration policy. Finally, as already noted, all web searching is forbidden during exams. #### 4.2 Ed We use Ed to provide students with an additional avenue for discussion and asking questions. However, you must take extra care when using Ed not to reveal, or hint at, the solutions to any assignments. We encourage you to ask public clarifying questions on Ed. These questions should not reveal details of assignment solutions (including code). If you need to ask a short code question, post privately. ### 5 Protecting Your Workspace If another student copies any of your work because you have neglected to set the appropriate file/account permissions, you will be held partly responsible. Therefore, it is important to make sure that you protect your github files or other accessible sources. Feel free to ask the TAs for help with setting permissions if you are unsure how to do this. ### 6 Policy Enforcement The TA staff is trained to look for policy abuses and makes use of software designed to recognize similarities across programs. This software is run on all assignments and is remarkably good at detecting shared code (i.e. plagiarism). The software is also very unlikely to flag two solutions that were truly done independently as being similar (there are enough small variations in how each of us writes code). Put differently, if you are following the guidelines, writing your own code, and only occasionally asking another student for help finding a bug in your code, you are very unlikely to run into problems. Stay within the spirit of the rules (that you produced your code on your own) and you'll be fine. Of course, if we do detect collaboration that appears to cross the line, we will address it. Penalities can range from loss of credit on the assignment (and related learning objectives) to a recommendation for a directed NC in the course. We will refer cases to the Academic Code Committee as appropriate. Once again, if you have any questions at all about this collaboration policy, ask for clarification! Misunderstanding the policy is not an acceptable excuse for not abiding by it. #### 6.1 Regret Clause If you slip up and violate the collaboration policy on an assignment, you have 24 hours from when you turned it in to admit what happened to Kathi or Milda (not a TA). After 24 hours, we will engage the Academic Code Committee. This regret clause gives you an out if you cheated in desperation the night an assignment was due, or allowed someone to cheat from you, or did something else and then felt guilty about it soon after. Egregious violations may still be sent through the normal University process even if you admit to them under this clause, at the professors' discretion. ______________________________ *Please let us know if you find any mistakes, inconsistencies, or confusing language in this or any other CSCI0200 document by filling out the [anonymous feedback form](https://docs.google.com/forms/d/e/1FAIpQLSdFzM6mpDD_1tj-vS0SMYAohPAtBZ-oZZH0-TbMKv-_Bw5HeA/viewform?usp=sf_link).*

Import from clipboard

Paste your markdown or webpage here...

Advanced permission required

Your current role can only read. Ask the system administrator to acquire write and comment permission.

This team is disabled

Sorry, this team is disabled. You can't edit this note.

This note is locked

Sorry, only owner can edit this note.

Reach the limit

Sorry, you've reached the max length this note can be.
Please reduce the content or divide it to more notes, thank you!

Import from Gist

Import from Snippet

or

Export to Snippet

Are you sure?

Do you really want to delete this note?
All users will lose their connection.

Create a note from template

Create a note from template

Oops...
This template has been removed or transferred.
Upgrade
All
  • All
  • Team
No template.

Create a template

Upgrade

Delete template

Do you really want to delete this template?
Turn this template into a regular note and keep its content, versions, and comments.

This page need refresh

You have an incompatible client version.
Refresh to update.
New version available!
See releases notes here
Refresh to enjoy new features.
Your user state has changed.
Refresh to load new user state.

Sign in

Forgot password

or

By clicking below, you agree to our terms of service.

Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
Wallet ( )
Connect another wallet

New to HackMD? Sign up

Help

  • English
  • 中文
  • Français
  • Deutsch
  • 日本語
  • Español
  • Català
  • Ελληνικά
  • Português
  • italiano
  • Türkçe
  • Русский
  • Nederlands
  • hrvatski jezik
  • język polski
  • Українська
  • हिन्दी
  • svenska
  • Esperanto
  • dansk

Documents

Help & Tutorial

How to use Book mode

Slide Example

API Docs

Edit in VSCode

Install browser extension

Contacts

Feedback

Discord

Send us email

Resources

Releases

Pricing

Blog

Policy

Terms

Privacy

Cheatsheet

Syntax Example Reference
# Header Header 基本排版
- Unordered List
  • Unordered List
1. Ordered List
  1. Ordered List
- [ ] Todo List
  • Todo List
> Blockquote
Blockquote
**Bold font** Bold font
*Italics font* Italics font
~~Strikethrough~~ Strikethrough
19^th^ 19th
H~2~O H2O
++Inserted text++ Inserted text
==Marked text== Marked text
[link text](https:// "title") Link
![image alt](https:// "title") Image
`Code` Code 在筆記中貼入程式碼
```javascript
var i = 0;
```
var i = 0;
:smile: :smile: Emoji list
{%youtube youtube_id %} Externals
$L^aT_eX$ LaTeX
:::info
This is a alert area.
:::

This is a alert area.

Versions and GitHub Sync
Get Full History Access

  • Edit version name
  • Delete

revision author avatar     named on  

More Less

Note content is identical to the latest version.
Compare
    Choose a version
    No search result
    Version not found
Sign in to link this note to GitHub
Learn more
This note is not linked with GitHub
 

Feedback

Submission failed, please try again

Thanks for your support.

On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

Please give us some advice and help us improve HackMD.

 

Thanks for your feedback

Remove version name

Do you want to remove this version name and description?

Transfer ownership

Transfer to
    Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

      Link with GitHub

      Please authorize HackMD on GitHub
      • Please sign in to GitHub and install the HackMD app on your GitHub repo.
      • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
      Learn more  Sign in to GitHub

      Push the note to GitHub Push to GitHub Pull a file from GitHub

        Authorize again
       

      Choose which file to push to

      Select repo
      Refresh Authorize more repos
      Select branch
      Select file
      Select branch
      Choose version(s) to push
      • Save a new version and push
      • Choose from existing versions
      Include title and tags
      Available push count

      Pull from GitHub

       
      File from GitHub
      File from HackMD

      GitHub Link Settings

      File linked

      Linked by
      File path
      Last synced branch
      Available push count

      Danger Zone

      Unlink
      You will no longer receive notification when GitHub file changes after unlink.

      Syncing

      Push failed

      Push successfully