Every profession has a code of ethics. The reason for these may vary, but why
do we have them? Are they that useful and important? In this paper I will
examine codes of ethics from a philosophical point of view. I will focus mainly
at the ASM/IEEE code of ethics, but also at code of ethics in general. I will
examine what the main purpose of any code is. What the ACM/IEEE code of ethics
purpose is, and does the code work in today’s professional society. I will
conclude by expressing my views on how to improve the code.

Before I illustrate what the code of ethics describe as our standard for
professional practice, I want to describe what the ACM/IEEE code of ethics
attempts to accomplish. The ACM/IEEE realized what a hard task it was to set a
general Algorithm or guideline the whole field of computer science and
engineering. It had to look at all aspect of this wide field starting from the
individual programmer/engineer. Who I feel are the greatest and most influential
part of the field, and also have the most control over the code’s
implementation from a personal sense. The code needs guidelines for the
programmers but also needs to have guidelines for the programmer’s
relationships with its clients, the general public, and society, and their
managers. It had to look inside this huge spectrum and judge how to make it all
“good”. Defining what is good in this field is not always that clear. What
is good for my employer, might not be that good for me. What might be good for
the client might not be good for society. An example of this would be: a client
asked me to make a fishing program that would take weather, time of the day,
wind and water currents, and other data and tell me where the highest chances of
fish being in a certain area. This program would be good for my client, but
obviously not good for the environment, in a sense that it is killing a lot of
fish. As you can see, it is contradictory for me to say what is good, because it
might not be good from another perspective. With all these pitfalls ahead it is
easy to be pessimistic about this code of ethics feasibility.

I feel that the ACMcode of ethics has two main implantations. One deals with
our relationship with our employer, other employees, and our clients. It deals
with an already set standard of the business world. It explains what is expected
of us, and to us, in professional business scenario. A specific example of this
would be: 1.01 Accept full responsibility for your own work. Also: 3.1 Ensure
adequate testing, debugging, and review of software and related documents on
your work. Both these examples are precise clear definitions of what is expected
and their meanings aren’t very debatable. I know that by reading these
declarations what is expected of me and what I can expect from my fellow
co-workers and managers.

The other dimension of the code of ethics deals with ethical judgments.
Computer programmers and engineers have a significant opportunity to affect the
community that their product is released into. Their product may have the
ability to affect society in a good or even in a negative way. The code attempts
to set a standard so that engineers and programmers are driving toward a
beneficial product. It’s hard to define what is good and bad. We know from a
philosophical aspect what may be goods for one may be bad for another. The Code
recognizes that and doesn’t try and make their rules set in stone or basic
guidelines for handling all circumstances. Instead it attempts to make us take
into consideration the concerns of our whole society. What the best interests of
the public, our employer, co-workers, and us would be.

Because of the difficulty in defining what is good for the whole general
field of the computer science/engineering industry there are many short falls to
this tiny document. Mainly because what is right for you my not be right in some
other perspective. The new technology might be good for a company but bad for
the environment like my example from above. Another problem with the code is
that it’s based solely on the individual. What if it was an unethical person
who doesn’t care about anything the code represents. They don’t care about
the way their technology might affect society, or the quality of their work. The
code would be worthless to them, and as a result the