Discuss the ethical and moral obligations of programmers.


Teaching Note:

For example, adequate testing of products to prevent the possibilities of commercial or other damage. Acknowledging the work of other programmers. The main aims of the Open Source movement should be known.

S/E, AIM 8 An awareness of the ethical considerations when developing new code.


Sample Question:


JSR Notes:

Adequate Testing - It could be all too easy to simply release your product and "walk away". But that is definitely not ethical. Certainly for life and death kinds of applications this is obvious. There are myriad programs on which all of our lives depend, whether they be obvious, like the control of our water systems and air-traffic control applications, but many others that control quality of food, or help manage traffic systems, and more.

But even non-life-threatening programs should be coded to properly handle a wide variety of possible exceptions. Not having a program robust like this is no different than a company selling shoes that fall apart in a matter of days, or a clock which loses a minute a day within a few months of use.

Testing is therefore a huge part of any respectable IT company or individual programmer. One bad product, or even a bad version, like Windows 7, can cause customers to "head for the exit" and switch company.

But, ultimately, it is unethical to produce, and either sell, or even distribute, shoddy work of any form.

Acknowledging the Work of Other Programmers - Another thing that is all too easy with software is to use others' work via simple copy and paste. Certainly a lot out there on the Internet is fair game to be used, but even in that case, it should be acknowledged. And certainly the act of taking other code not freely offered is stealing, it's as simple as that. Though copyright laws took a while to catch up to new IT situations, there are now many laws which protect the intellectual property rights of individuals around the world.

The Open Source Movement - Finnish software engineer Linus Torvalds was among the first to get this going with his Linux free operating system. Since then many groups have gotten together to produce quality software for free. This website as its backbone uses both a MySQL database system and PHP scripting, which are both open source. And you very well may be reading this through Firefox, from Mozilla, another key open source group.

Sometimes young programmers will seek to "make a name for themselves" by contributing to open source projects, but at the heart of most contribution is a desire to help others and share, rather than see fat cat IT firms grab all the money and all the glory. Open source contributors see the value of letting anyone and everyone contribute to solving a big problem, and feel that this approach can lead to better and more novel solutions, compared to the closed, sterile corporate environment of a big IT business.