One of my students e-mailed me asking for help finding interesting
ethical issues in open source. Here’s the partial list I sent him:
- What is the fundamental ethical issue behind open source software?
There are zealots in both the open source and closed source camps,
but the world isn’t as black and white as people paint it. What do
_you_ personally feel about the issue of open source? Think about
this a great deal. I think it’ll give you an aha moment. =) This is
something really worth writing about.
- Think about the difference between open source software and closed
source software, and the difference between free software and
commercial software. Note that free != open source, and commercial
!= closed source. Think about what the different combinations mean
from the point of view of users, developers, and companies.
- Businesses would like to be able to hire fresh graduates and put
them to work right away without having to train them in the specific
software used in the business. Learning how to properly use a
toolset takes a lot of time, and these companies argue that this
kind of training should be part of students’ formal education. In
addition, many HR personnel filter resumes based on keyword.
Students also sometimes become restless when they’re asked to use
languages or toolsets not seen in the job ads. As a result, there’s
strong incentive to teach the quirks of vendor-specific products
like Microsoft Visual Studio .NET instead of focusing on general
ideas. This is one of the biggest barriers to open source adoption
in schools. Should schools cater to their market, or should they
also explore alternatives?
- Large companies complain about the unlicensed distribution and use
of commercial software (popularly known as piracy). However, it
actually strengthens dominant companies. For example, would we
really be so dependent on Microsoft Office if people only used
legitimate copies? If enough people chose not to buy Microsoft
Office, then alternative office suites could flourish.
Unfortunately, the unlicensed distribution and use of software means
that other people can assume people run Microsoft Office, leading to
a vicious cycle. What do you think about that?
- Non-trivial software programs have errors. Sometimes these
errors are severe, exposing your system to attacks. Some major
software vendors practice ‘security through obscurity’; security
holes are not publicized, and the companies sometimes aggressively
go after whistle-blowers who try to point out weaknesses in the
software. Because the companies are the only ones with access to the
source, they are the only ones who can fix the broken programs, and
their resources are limited. On the other hand, open source exposes
all source code for potential audit. This means that other
organizations and developers can examine the code for security
errors, which often results in faster fixes when an exploit is
actually discovered. On the other hand, it also means that crackers
who want to exploit systems can find holes more easily. What do you
think about disclosure versus non-disclosure?
- Many people in the Philippines are not completely comfortable with
English. We are too small a market for multinational companies to
develop Tagalog versions, but some volunteers have been working on
translating open source software. This has met with mixed reactions.
Some people say that localizing software for the Philippines is a
waste of time and students should get used to English versions right
away; others say that localization is the key to helping more
Filipinos get into information technology. What do you think?
- Closed source software tends to optimize for number of features and
ease of use, because that’s what draws customers. It makes common
things easier. Open source software often comes with a high learning
curve but focuses on power and security, making it easier for people
to use it to fit their individual needs. Think about the different
markets for open source and closed source software, particularly in
terms of security. What are the implications of these choices?
- Open source means there’s a lot of code out there that you can base your
programming projects on. As a student, where should you draw the line on
acceptable use of other people’s code?
- Closed source software often carries a “click-through license”
severely limiting your rights and giving no warranty anyway
(although this last part is buried in the fine print). Open source
software tells you right away that there is no warranty. It’s kinda
funny the way closed source companies keep criticizing the fact that
open source software isn’t backed by a company. Look into the
usefulness of support contracts for large and small clients. (Hah.
Leading question. Sorry. ;) )
- What do you think about NDAs?