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