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.
|
||
|