[comp.edu] Rules of ethics for CS majors?

collberg@dna.lth.se (Christian S. Collberg) (01/14/90)

I'd be interested in hearing about how different schools have
handled the teaching of ethics for Computer Science Majors. With "ethics"
I mean specific common-sense rules that guide our day-to-day contact
with computers ("Thou shalt not steal files from your fellow student's 
account","Thou shalt not create viruses", ...) as well as more general
principles that affect computer scientists in the work-place (ought one to be
involved in defence-related work, which sort of programs violate the
individual's rights and should one refuse to write, ...).

I know Mary Shaw and some other people wrote a set of ethics rules for
CMU students after the "worm" incident. I believe it was published
in CACM, although I have lost the reference. Does anyone out there
have access to similar sets of rules that they'd be willing to share?

Chris Collberg
collberg@dna.lth.se

msmith@topaz.rutgers.edu (Mark Robert Smith) (01/15/90)

At Rutgers, it isn't codified very well.  Class users are told that
the Rutgers Academic Dishonesty Policy exists, and applies to user
directories on the computers.  This policy is published in all sorts
of user handbooks we see here.  Also, a few professors require that
the directory where the class work resides be protected against all
group and world users.  These professors are rare.  Also, the
dishonesty policy is not veryh well implemented.  You get caught if a
TA or professor notices you cheating, but on projects this is not
likely.  Many students copy other's programs and simply change the
identifiers to get around text comparisons.

The ethics relating to malicious attacks (virii and such) are not on
paper or in any electronic form at all.  I have occasionally
questioned this.  If you break the rules, you hear about it, but on
occasion someone breaks the rules simply because they didn't know the
rule existed.  Also, the upper-level administrators are afraid to
create policy about computer use as the policies may require legal
scrutiny or differ with the highest Administration's ideas.  Thus,
Rutgers policy on ethics is rather ad-hoc, with many rules being
hidden until violated.

Mark
-- 
Mark Smith, KNJ2LH                All Rights Reserved
RPO 1604               You may redistribute this article only if those who
P.O. Box 5063                 receive it may do so freely.
New Brunswick, NJ 08903-5063              msmith@topaz.rutgers.edu

pattis@cs.washington.edu (Richard Pattis) (01/15/90)

The CPSR (Computer Professionals for Social Responsibility) published a short
note on "Ethics, Society, and Computers".  Many of the topics under
discussion are touched upon in this note, including an interesting article
by Brian Harvey (bh@ernie.berkeley.edu): one section differentiates between
Morals and Ethics, using medical ethics as an example.

For more information, write to CPSR, PO Box 717, Palo Alto, CA  94302-9917.

Rich Pattis

jharkins@sagpd1.UUCP (Jim Harkins) (01/16/90)

In article <Jan.14.15.48.47.1990.25372@topaz.rutgers.edu> msmith@topaz.rutgers.edu (Mark Robert Smith) writes:
At San Diego State nobody has ever mentioned the word 'ethics' outside of me and
some friends in a joking manner.  If caught copying someones programs we can be
kicked out of school, but I think thats the same policy that is used for term
papers and the like.

> You get caught if a
>TA or professor notices you cheating, but on projects this is not
>likely.  Many students copy other's programs and simply change the
>identifiers to get around text comparisons.

I hate to say this but a programmer's style is unique unless a group is forced
to fit a mold.  I worked in a shop that had 6-8 assembly programmers and
I could look at about 1 page of code and not only tell you who wrote it,
but who changed it (assuming the changes were only a line or two).  Granted,
in a class of 30-50 students it's not likely plagarism will be detected like
this.  But what will the prof think when, out of all those programs, 5-6
unique error modes appear?  (i.e  5-6 people wrote programs, everyone else
copied from someone else.)  Once you've caught his eye it's easy for him
to look at the code and see that only 1 person wrote it.

I almost got busted by this.  I was in a class where we broke up into groups
of 3 for a large class project.  When it was graded my group and another got
called into the teacher's office, it turns out our programs had exactly the
same bugs.  Uh oh.  Turns out a member of my group was in another class with
a member of the other group and they had swapped passwords.  Naturally Diane
used the same password on all her accounts.  Fortunatly, we could explain
how the program worked while they hadn't even looked at it, just changed
names.  So I graduate this semester, and they got kicked out of school.

jim
"Only dead fish go with the flow"

ken@argus.UUCP (Kenneth Ng) (01/16/90)

In article <596@sagpd1.UUCP>, jharkins@sagpd1.UUCP (Jim Harkins) writes:
: But what will the prof think when, out of all those programs, 5-6
: unique error modes appear?  (i.e  5-6 people wrote programs, everyone else
: copied from someone else.)  Once you've caught his eye it's easy for him
: to look at the code and see that only 1 person wrote it.

I almost had a flair for doing projects in unusual ways.  My projects were
almost always so unique that any copying would immediately be noticed.  And
then even if they did copy my project, they'd probably have to explain how
it worked to the professor.  All kinds of things like, "I couldn't fit the
tables in memory, so my pascal program called FORTRAN routines to do ISAM
file I/O.  But FORTRAN ISAM I/O lacks a 'next' function, so I wrote one in
assembler." :-)  Or, when I had to be able to print output sorted in a 
programmable manner, I tossed the data into a memory format compatible with
the system editor (Univac 90/80-4 VMOS) and called it as a subroutine with
the command to sort and print the output as desired by the user :-).  

Were the programs documented?  Somewhat, although I tended to leave off 
*WHY* certain things were done and only said what was done.  Were the
programs portable?  Not on your life, but that wasn't one of the goals
in the assignment.

: I almost got busted by this.
: [edit example of mass copying of projects]

I'm not sure I sould say this, but one way teachers often look for copying
is to look for similar documentation, especially table setups, and spelling
mistakes.  After all, it is conceivable that several people will write a
program the same way, especially if you had shown that very same way in
class.  But to have several people have the same incorrectly spellled
sentence in a comment is far less likely.


-- 
Kenneth Ng: Post office: NJIT - CCCC, Newark New Jersey  07102
uucp !andromeda!argus!ken *** NOT ken@bellcore.uucp ***
bitnet(prefered) ken@orion.bitnet