A Note On Academic Misconduct

Please take a minute and read this document in its entirety!

Just a note to remind everyone what is OK and what is not OK in terms of talking to other project groups about this and future projects.

It is DEFINITELY OK to:

  • discuss the project in general terms (what do they mean by a pipe?)
  • discuss how different library routines/system calls work (strtok() takes two arguments)
  • discuss strategies for successful implementation (our data-structure format is simple)
  • help others debug their code and find problems
  • ask the TA or professor or both for as much help as you need!

It is NOT OK to:

  • bug someone else for a lot of help (particularly if they are already done!)
  • share your code directly with other people/project groups (So, you want to know how to use strtok()? Well, here is my code and it works so you can just use/copy that.)

Discovery of any inappropriate code sharing will lead to harsh penalties for all involved parties. This draconian policy is in place to protect the bulk of you who have put in the hard work on the project.

IMPORTANT: Take precautions so as to prevent someone from copying your code without your knowledge! How do you do this? Well, first, you have to use the "fs" command to make sure no one can snoop about your directories. Let us say you have a directory which contains project 2, called "~remzi/p2". To make sure no one else (except your project partner) can look around in there, do the following:

cd into the directory:

prompt> cd ~remzi/p2

check the current permissions for the . directory ("." is the current dir):

prompt> fs la .

make sure system:anyuser (that is, anybody at all) does not have any permissions:

prompt> fs sa . system:anyuser ""

check to make sure it all worked:

prompt> fs la .
Access list for . is
Normal rights:
system:administrators rlidwka
remzi rlidwka

As you can see from the output of the last fs la . command, only the system administrators and remzi can do anything within that directory. You can give your partner rights within the directory by using fs sa again:

prompt> fs sa . dusseau rlidwka
prompt> fs la .
Access list for . is
Normal rights:
system:administrators rlidwka
remzi rlidwka
dusseau rlidwka

If at any point you see the directory has permissions like this:

prompt> fs la .
Access list for . is
Normal rights:
system:administrators rlidwka
remzi rlidwka
system:anyuser rl

that means that any user in the system can read (r) and list files (l) in that directory, which is probably not what you want.

If you are curious to learn more about all of this, go to this URL.

ALSO IMPORTANT: Make sure not to leave print outs on the printer! (of course, who prints their code out anyway?)

Of course, if any code sharing is discovered, harsh penalties will be applied. Now I know that most or even all of you will not do this (and I know this all sounds quite unpleasant), but I just wanted to make it clear what the guidelines are.

If you have any further questions on the gray area between what is OK and what is NOT OK, please feel free to ask.