Notes

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

2. Planner cited as a reason to defect to Emacs (PlannerModeMaintenance"[[GoodKarma#note2][GoodKarma:2]])

<blockquote>
You point is well taken. I find myself living in an application more and more. At work, it’s my editor
and I’d like it to handle the G.T.D. tasks and my schedule. I never set out to do this, I’ve just seen it
happening.
</blockquote>

Tyler will probably love being able to create hyperlinked tasks from anywhere. =)

4. xtla goodness ([[EmacsTips#note19][EmacsTips:19]]"[[emacs]])

I used xtla to browse my TLA archives today. xtla's bookmarks and
missing patch summary made merging missing patches much easier. I used
<kbd>m</kbd> to mark interesting patches and <kbd>. r</kbd> to replay
the marked patches. Great stuff.

In related news, I'll really need to migrate the archive. At 98414
characters, our <nop>ChangeLog is now 1/5 of the size of the source code
(457478 bytes). Dev's changelog is much bigger--147672 bytes.

5. A question of scale ([[OpenSource#note2][OpenSource:2]]"[[oss]]"[[OpenSourceIssues#note2][OpenSourceIssues:2]]"[[ToBlog#note2][ToBlog:2]])

Open source allows people to work on an individual basis. Developers
can jumpstart their projects by using existing code, creating software
that answers their own needs and perhaps the needs of a small group of
users that often also contribute improvements. Because the source code
is open, people can easily choose the features they want to include or
make minor modifications to get existing code to behave the way they
want. Open source development promotes personal communication with
users, and user requests can go straight to developers without passing
through marketing. How is this different from other kinds of
user-developer relationships, and is this an advantage open source
developers can use?

Eric Pareja and other volunteer translators have finished the
translating level 1 of the debian-installer into Tagalog. Please check
out the completed file at http http://news.upm.edu.ph/~xenos/tl.po .
Comments and improvements would be very much appreciated.
Three more levels to go!

7. Looking for Emacs blogs

I'd love to read more about the wonderful editor/way-of-life that is
Emacs. Know of any Emacs-related blogs? (Occasional off-topics are
fine.) Please e-mail the URL to me at sacha@sachachua.com or use the
comment form.

8. Emacs channel chat logs

Also, if someone can help me set up logging (split into text files by
day, please) for irc://irc.freenode.net/#emacs, I volunteer to
summarize and anonymize interesting tidbits from #emacs every day.
That way, people don't have to worry about missing interesting tips or
code snippets. ;)