On Mon, Jan 07, 2008 at 06:31:16AM -0500, Richard Stallman wrote:
|     > But what about the different case where the company permits
|     > redistribution of the binary firmware, but does not release source
|     > code.  Would OpenBSD distribute the firmware in that case?
| 
|     Of course and going by your description it is nothing but hardware at
|     that point
| 
| No, that description refers to a different case.
| 
|              so there is no ethics violation (whatever that means since
|     you refuse to explain it).  It is just like micro code and a circuit.
| 
| I think firmware is equivalent to a circuit if it is inside the
| hardware and users don't install software there.
| 
| Here we are talking about firmware which users always do install.
| (That is the reason why anyone would consider distributing it with an
| operating system.)  So that is not equivalent to a circuit.

Richard,

You say your actions are based on ethics. You recommend certain
systems (eg gNewSense) because they are 'ethical' and you do not
recommend others (eg OpenBSD) because they are not (they don't
behave), in your view, ethical.

Initially, you could not recommend OpenBSD because the ports system
"recommends" the use of non-free software. Despite the fact that many
here (on this list) do not consider this to be a "recommendation" I
agree that it is in line with your stated views. And even though your
views are to me (and many others on this list) in sharp contradiction
with your actions (supporting non-free systems in the copyleft
software packages GCC and Emacs), you consider these to be quite
different situations (yet you admit that supporting non-free systems
in free software and grants legitimacy to these non-free systems).

I'll repeat again here that I am not opposing supporting non-free
systems in free software packages.

Now you have found a second reason for not recommending OpenBSD. It
(legally) distributes binary firmwares for certain pieces of hardware.
Again, you make a distinction that many here say does not exist.

There's been a trend in hardware development. First, hardware was just
that : a couple of circuits connected on a pcb. Then, hardware got
"firmware", a small bit of unchangeable software the hardware vendor
integrated with the circuits. An upgrade of this firmware meant
replacing the circuit holding this firmware. We moved from ROMs to
EEPROMs, allowing people with specialized hardware to update this
firmware without replacing actual hardware. Next step was a piece of
non-volatile memory (flash memory of some sort) containing the
firmware, easier to upgrade but not always required (since the
hardware comes with firmware installed by default). Today, we see many
pieces of hardware with a small amount of RAM where the device driver
loads the firmware upon device attachment.

Lets have a close look at the case where firmware is stored in
non-volatile memory. You purchase an Intel EtherExpress PRO/100
network interface card. Firmware is in the hardware on a piece of
flash memory. Yet, this firmware can be upgraded and OpenBSD will
automatically do this if it detects older firmware on your NIC. You
can choose another operating system that does not upgrade the firmware
and the hardware may work fine for your use case. Should the firmware
be free software ? It's inside the hardware and on your other
operating system you are not installing software on it. Should
hardware vendors go back to non-user-upgradeable firmware so you can
recommend their hardware ? Even if the only reason they do it is
because they do not want to distribute the firmware as free software,
with full source under a permissive license yet still want your
endorsement ?

Your stance is that somewhere in this timeline of hardware development
ethics came into play. At first, firmware does not need to be free
software since it is hard for a user to change it (although determined
users can (and in the past have) change(d) the firmware ROMs by
themselves). Now that device drivers load firmware each time the
machine boots you consider it an ethical issue.

I conclude that what you consider ethical or not depends on how easy
something is to accomplish. However, ethics has nothing to do with
ease of action. To you it may be easy to copy software or to look at
the source code and understand what it does, to take it, change it,
and use it in its changed form. Very many computer users do not
consider this easy at all. To them, a computer is still some sort of
"magical device" enabling them to browse the internet, play a game or
use productivity software. Yet, these "computer illiterates" should
(according to your views) use free software because non-free software
is unethical. You want to educate the user about the ethics of free
software, give them freedoms they will not be able to exploit. This, I
think, is what your views are.

However, when people on this mailing list suggest that hardware should
be 'open' or 'free', you claim this is not necessary because it is not
easy to copy hardware. To you it may not be easy, just like "computer
illiterates" can not change source code of a piece of free software to
their liking. That does not change the ethics.

If you really apply your ethics so loosely, I have little respect for
them. You make a distinction between supporting non-free software
based on how easy it is to switch operating systems. You make a
distinction on the requirements for free source for firmwares based on
how easy it is to load this firmware. You make a distinction on whether
or not to use "open hardware" based on how easy it is to copy
hardware. All very convenient for your agenda, but it has very little
to do with ethics.

I consider it unethical to base ethical decisions on how easy
something is. In fact, I do not consider these ethical decisions at
all. It's all politics.

If my webserver is broken into by some mal-intended person, I don't
care if the webserver ran Windows and the break in was very easy or
OpenBSD where the break in was near impossible : I still consider it
unethical to break into my webserver. I may be at fault for using such
an insecure OS for a webserver but that doesn't change the ethics of
the break in.

Paul 'WEiRD' de Weerd

-- 
>++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+
+++++++++++>-]<.>++[<------------>-]<+.--------------.[-]
                 http://www.weirdnet.nl/                 

Reply via email to