336 lines
15 KiB
Plaintext
336 lines
15 KiB
Plaintext
|
|
|||
|
THE PROFESSIONAL CODE OF ETHICS
|
|||
|
|
|||
|
OF
|
|||
|
|
|||
|
THE INTERNATIONAL PROGRAMMERS GUILD
|
|||
|
|
|||
|
|
|||
|
|
|||
|
GENERAL
|
|||
|
|
|||
|
In this document "Guild" represents "International Programmers Guild".
|
|||
|
|
|||
|
1. A professional programmer owes certain duties to the Guild, to the public,
|
|||
|
to an employer, to other members of the profession, and to themselves and
|
|||
|
shall act at all times with:
|
|||
|
|
|||
|
(a) fairness and loyalty towards the Guild, associates, employers,
|
|||
|
employees, and clients.
|
|||
|
|
|||
|
(b) fidelity to public needs.
|
|||
|
|
|||
|
(c) devotion to high ideals of personal honour and professional
|
|||
|
integrity.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER TO THE GUILD
|
|||
|
|
|||
|
2. A Professional programmer shall:
|
|||
|
|
|||
|
(a) acknowledge the Guild as the self governing body that represents
|
|||
|
the profession of programming world-wide.
|
|||
|
|
|||
|
(b) adhere to the constitution, bylaws and regulations of the Guild
|
|||
|
unless they conflict with the legal statutes of the nation in which
|
|||
|
the programmer applies his/her profession.
|
|||
|
|
|||
|
(c) accept programming as a true profession and accept the Guild's
|
|||
|
mandate to inform and promote programming as a profession to all
|
|||
|
directly or indirectly involved.
|
|||
|
|
|||
|
(d) adhere to the Code of Ethics of the Guild as declared herein.
|
|||
|
|
|||
|
(e) accept the Guild as an authority empowered to provide evaluation and
|
|||
|
certification of programmers.
|
|||
|
|
|||
|
(f) adhere to the methods and procedures of professional evaluation of
|
|||
|
the Guild.
|
|||
|
|
|||
|
(g) recognize the Guild, it's meetings and electronic communications as
|
|||
|
a source:
|
|||
|
- of fellowship with other programmers
|
|||
|
- of sharing professional data and techniques
|
|||
|
- both to seek gainful employment of his/her services and to
|
|||
|
obtain the services of other programmers.
|
|||
|
|
|||
|
(h) inform other programmers of the existence, nature, and mandates of
|
|||
|
the Guild and of the need and benefits of being a Fellow of the
|
|||
|
Guild, and present for membership any programmers expressing
|
|||
|
2
|
|||
|
interest.
|
|||
|
|
|||
|
(i) assist and encourage others training to become professional
|
|||
|
programmers.
|
|||
|
|
|||
|
(j) assist and encourage other programmers who are relatively new to the
|
|||
|
profession and who are working toward becoming established.
|
|||
|
|
|||
|
(k) inform the Guild Master or governing body of any actions within the
|
|||
|
body of the Guild that have created or could create a serious
|
|||
|
contravention of professional integrity or cause harm to the Guild
|
|||
|
or its members.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
DUTIES CONCERNING THE INTEGRITY OF PROGRAMS AND CODE OF A PROGRAMMER
|
|||
|
|
|||
|
3. With regards to all programs and programming code a programmer creates,
|
|||
|
markets, installs, maintains or is otherwise involved with, he/she shall:
|
|||
|
|
|||
|
(a) never create, implement or support any code that is knowingly
|
|||
|
malicious, harmful, detrimental or directly contrary to the effect
|
|||
|
and actions that the programmer's services are being called upon
|
|||
|
to effect.
|
|||
|
|
|||
|
(b) in particular, shall never create, implement or support any programs
|
|||
|
or sections of code that are of a parasitic, self replicating
|
|||
|
nature, of which computer viruses or Trojan horses are vivid and
|
|||
|
destructive examples.
|
|||
|
|
|||
|
(c) shall not knowingly create code in such a manner as to make it
|
|||
|
virtually impossible to understand and maintain in situations in
|
|||
|
which the client or employer is allowed to retain source code. In
|
|||
|
addition, documentation shall not knowingly be written in a
|
|||
|
deliberately confusing or erroneous manner that is contrary to the
|
|||
|
actual code for which it is written.
|
|||
|
|
|||
|
(d) with regards to Guildware, code and libraries shared within the
|
|||
|
Guild:
|
|||
|
- ensure that all code in the Guildware libraries and source code
|
|||
|
are not divulged outside of the Guild membership except with the
|
|||
|
explicit written permission of the author.
|
|||
|
- acknowledge code derived from the ranks of the Guild in all work
|
|||
|
done by the programmer.
|
|||
|
|
|||
|
(e) avoid and refuse to use code that was:
|
|||
|
- created by another programmer and not released by the original
|
|||
|
author for public use
|
|||
|
- released with the stipulation that remuneration to the original
|
|||
|
author must be paid and such due remuneration has not been paid.
|
|||
|
|
|||
|
(f) not use code or programming techniques that are knowingly obsolete
|
|||
|
unless the party requesting such work is first informed and still
|
|||
|
requests such work to be done. If so, no malicious intent must be
|
|||
|
implied or enacted.
|
|||
|
|
|||
|
(g) not knowingly alter or corrupt data with malicious intent.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER TO THE PUBLIC
|
|||
|
|
|||
|
4. A Professional programmer shall:
|
|||
|
|
|||
|
(a) abide by the laws and statutes of the country in which the
|
|||
|
programmer's services are rendered. If there is a conflict between
|
|||
|
the statutes and Code of Ethics, the programmer shall abide by the
|
|||
|
laws of the country and report such conflicts to the Guild Master.
|
|||
|
The Guild Master shall inform the Council in Geneva of the conflict
|
|||
|
or conflicts.
|
|||
|
|
|||
|
(b) have high regard for his/her duty to public welfare.
|
|||
|
|
|||
|
(c) endeavour at all time to enhance the public regard for his/her
|
|||
|
profession by extending the public knowledge thereof and
|
|||
|
discouraging untrue, unfair or exaggerated statements with respect
|
|||
|
to professional programming.
|
|||
|
|
|||
|
(d) not give opinions or make statements on professional programming
|
|||
|
projects that are inspired or paid for by private interests unless
|
|||
|
he/she clearly discloses on whose behalf he is giving the opinions
|
|||
|
or making the statements.
|
|||
|
|
|||
|
(e) not express publicly, or while he/she is serving as a witness before
|
|||
|
a court, commission or other tribunal, opinions on professional
|
|||
|
programming matters that are not founded on adequate knowledge and
|
|||
|
honest conviction and integrity.
|
|||
|
|
|||
|
(f) make effective provisions in creating or maintaining programs to
|
|||
|
ensure health and safety of life and avoid financial loss.
|
|||
|
|
|||
|
(g) act to correct or report any situation which could cause losses,
|
|||
|
whether humanly injurious or financially damaging.
|
|||
|
|
|||
|
(h) make effective provisions and strive to meet lawful standards,
|
|||
|
rules, or regulations in connection with any work being undertaken
|
|||
|
by him/her or under his/her responsibility.
|
|||
|
|
|||
|
(i) give final approval only on code, plans, specifications and reports
|
|||
|
actually made by him/her or under his/her personal supervision and
|
|||
|
direction.
|
|||
|
|
|||
|
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER TO AN EMPLOYER
|
|||
|
|
|||
|
5. A professional programmer shall:
|
|||
|
|
|||
|
(a) act in professional programming matters for each employer as a
|
|||
|
faithful agent or trustee.
|
|||
|
|
|||
|
(b) regard as confidential any information obtained by him/her as to the
|
|||
|
business affairs, technical methods or processes of an employer
|
|||
|
unless released by the employer in writing or with explicit verbal
|
|||
|
consent.
|
|||
|
|
|||
|
(c) avoid or disclose any conflict of interest which might influence
|
|||
|
his/her actions or judgement.
|
|||
|
|
|||
|
(d) present clearly to his/her employers the consequences to be expected
|
|||
|
from any deviations proposed in the work if his/her professional
|
|||
|
4
|
|||
|
planning and/or analytical judgement is overruled by non-technical
|
|||
|
authority in cases where he/she is responsible for the technical
|
|||
|
adequacy of professional programming.
|
|||
|
|
|||
|
(e) have no financial interest, direct or indirect, in any materials,
|
|||
|
supplies, equipment, hardware or commercial software used by his/her
|
|||
|
employer or in any persons or firms receiving contracts from his/her
|
|||
|
employer unless he informs his/her employer in advance of the
|
|||
|
nature of the interest.
|
|||
|
|
|||
|
(f) not tender on competitive work upon which he/she may be acting as a
|
|||
|
professional programmer unless he/she first advises his/her
|
|||
|
employer.
|
|||
|
|
|||
|
(g) not accept compensation, financial or otherwise, for a particular
|
|||
|
service, from more than one person except with the full knowledge
|
|||
|
of all interested parties.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER IN INDEPENDENT PRACTICE TO A CLIENT
|
|||
|
|
|||
|
6. A professional programmer in private practice, in addition to all other
|
|||
|
sections, shall:
|
|||
|
|
|||
|
(a) disclose immediately any interest, direct or indirect, which might
|
|||
|
in any way be construed as prejudicial to his/her professional
|
|||
|
judgement in rendering service to his client.
|
|||
|
|
|||
|
(b) if said programmer is contracting in his/her own name to perform
|
|||
|
professional programming for other than his/her employer,
|
|||
|
provide the client with a written statement of the nature of his
|
|||
|
status as an employee and the attendant limitations on his services
|
|||
|
to the client. In addition,the programmer shall satisfy
|
|||
|
himself/herself that such work will not conflict with the programmer's duty to
|
|||
|
his/her employer.
|
|||
|
|
|||
|
(c) carry out work in accordance with applicable statutes, regulations,
|
|||
|
standards, codes, and by-laws.
|
|||
|
|
|||
|
(d) co-operate as necessary in working with such other professionals as
|
|||
|
may be engaged in the project.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER TO OTHER PROFESSIONAL PROGRAMMERS
|
|||
|
|
|||
|
7. A professional programmer shall:
|
|||
|
|
|||
|
(a) conduct himself towards other professional programmers with courtesy
|
|||
|
and good faith and without malicious intent.
|
|||
|
(b)
|
|||
|
not accept any engagement to review the work of another professional
|
|||
|
programmer for the same employer except:
|
|||
|
- with the knowledge of that programmer, or
|
|||
|
- except where the connection of that programmer with the work has
|
|||
|
been terminated or
|
|||
|
- with special knowledge and dispensation obtained by a Guild
|
|||
|
Master in situations where serious breach of safety, health,
|
|||
|
financial loss or integrity is suspected from the prior actions
|
|||
|
5
|
|||
|
of a programmer.
|
|||
|
|
|||
|
(c) not maliciously injure the reputation or business of another
|
|||
|
professional programmer.
|
|||
|
|
|||
|
(d) not attempt to gain an advantage over other members of his
|
|||
|
profession by paying or accepting a commission in securing work
|
|||
|
relating to professional programming.
|
|||
|
|
|||
|
(e) not advertise or represent his/her services in a misleading manner
|
|||
|
or in a manner injurious to the dignity and integrity of the
|
|||
|
profession of programming. The professional programmer shall seek
|
|||
|
to use the media of advertising with a level of integrity that will
|
|||
|
permit establishing a well merited reputation for personal
|
|||
|
capability.
|
|||
|
|
|||
|
(f) give proper credit for programming work done by another person.
|
|||
|
|
|||
|
(g) uphold the principle of adequate compensation for programming work.
|
|||
|
|
|||
|
(h) promote opportunity for professional development and advancement
|
|||
|
of his/her associates and subordinates and provide opportunities
|
|||
|
for this to happen where and when it is reasonable.
|
|||
|
|
|||
|
(i) assist in extending the effectiveness of the profession through
|
|||
|
the interchange of programming information and experience except
|
|||
|
where sharing of information or data would contravene
|
|||
|
confidentiality.
|
|||
|
|
|||
|
(j) not copy programs (source code, object code or documentation) unless
|
|||
|
it is clear that the author and owners to the rights of the software
|
|||
|
(including corporate owners if applicable) would not object to this
|
|||
|
copying and all licensing requirements are met.
|
|||
|
|
|||
|
(k) abide by all licensing requirements accompanying the software that
|
|||
|
he/she shall use.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
DUTIES OF A PROFESSIONAL PROGRAMMER TO HIMSELF/HERSELF
|
|||
|
|
|||
|
8. A professional programmer shall:
|
|||
|
|
|||
|
(a) maintain the honour and integrity of his/her profession. A
|
|||
|
professional programmer shall report without fear of reprisal,
|
|||
|
unprofessional or dishonest conduct by any other members of the
|
|||
|
profession to the Guild and other proper tribunals.
|
|||
|
|
|||
|
(b) undertake only such work as he/she is competent to perform by
|
|||
|
virtue of his/her training and experience except where the
|
|||
|
programmer has explained his/her current knowledge with
|
|||
|
understanding that the needed knowledge to be competent for the
|
|||
|
work to be done will be acquired with on-job training and research.
|
|||
|
|
|||
|
(c) where advisable, retain and co-operate with other professional
|
|||
|
programmers or specialists.
|
|||
|
|
|||
|
(d) endeavour to constantly keep updated on the most recent technology
|
|||
|
and methods in programming and the hardware on which it must run.
|
|||
|
|
|||
|
|
|||
|
6
|
|||
|
Revised: June 19th, 1991
|
|||
|
|
|||
|
REVISION OF THE CODE OF ETHICS
|
|||
|
|
|||
|
The Code of Ethics of the International Programmers Guild may be reviewed for
|
|||
|
revision annually.
|
|||
|
|
|||
|
- Fellows, Masters and Guild Masters of the Guild in good standing may
|
|||
|
suggest changes in additions to the Code of Ethics.
|
|||
|
- They shall expect no obligation or duty for the acceptance of these
|
|||
|
suggestions into the Code of Ethics.
|
|||
|
- All suggested changes shall be well documented, showing why the changes
|
|||
|
are considered by the member as beneficial or necessary.
|
|||
|
- All suggested changes must be provided in writing to the Guild Master who
|
|||
|
shall review them, then forward them to the Council within one month of
|
|||
|
the time that the Council is to meet to deliberate changes.
|
|||
|
|
|||
|
All revisions, additions, or deletions must be approved by the Council at the
|
|||
|
International Headquarters in Geneva Switzerland after careful deliberation of
|
|||
|
these changes. Once accepted by the Council, the old Code of Ethics shall
|
|||
|
immediately cease to be of effect and the new Code of Ethics shall be in force
|
|||
|
and used.
|
|||
|
|
|||
|
In those countries where special restrictions to the Code of Ethics may be
|
|||
|
needed due to the statutes, laws, regulations and political climate of the
|
|||
|
country, the Guild Master or Guild Masters of that country may apply to the
|
|||
|
Council for special revisions to the Code of Ethics to accommodate the legal
|
|||
|
existence of the Programmers Guild in that country.
|
|||
|
|