[Arm-netbook] need help! getting a bit overwhelmed on lists.oshwa.org

Xavi Drudis Ferran xdrudis at tinet.cat
Thu Aug 25 09:23:04 BST 2016


El Thu, Aug 25, 2016 at 09:07:13AM +0200, Elena ``of Valhalla'' deia:
> I find that definitions based on how easy it is to change something tend
> to put the actual dividing line in places that feel arbitrary,
> especially because what is easy for somebody is very hard for somebody
> else.
>

Yes, I acknowledged this problem. We may have to accept that some
things are softer for some people than for others, and strive for more
softness for more people.
 
> In this specific case, additionally, the dividing line is placed in such
> a way that IMHO gives advantages to state-sponsored attackers (for whom
> changing code stored on ROM is not exactly easy, but somewhat feasible)
> and even technical users (that in most case don't have access to the
> tools needed to do so).
>

You mean intercepting postal packets or sabotages in douanes or check
control points ? I don't know how to protect from that (at least
without imposing too cumbersone measures to normal use by the
legitimate user).
 
> A definition that I like comes from Renzo Davoli and is basically that
> hardware is made of atoms, software is knowledge.
> 

I like it because of its ontological root. And it is more generally
useful, like in control of forces of nature is hardware patents and
logical solutions are software patents (although this distiction would
only make sense if patent offices tried to do something useful, and
even then there's doubt whether they could). In this sense your
definition is better.

In my message I called software "information", not knowledge, because
in the uses I've come across knowledge is reserved for the
interiosation of interrelated information by humans, it is what
information provokes in you (and let's not get started in strong
AI). But yes, if you take humans into the picture, software is
knowledge and it is even culture.

In practical application you have the problem that knowledge exists in
an abstract form, but is handled in concrete representations, and
those representations are always physical, so people can circumvent
definitions by alluding that they are handling representations, not
the knowledge itself. So a tivoized device may not hide any
information or knowledge but it may prevent you from changing the
representation that the device will use. It won't prevent you from 
working freely with the knowledge, "just" with the device.

And your definition has more or less the same problem as mine.
Knowledge may be secret, so something may be knowledge for some people
and not for others, just like something may be easier to change for
some people than others. Compiled proprietary software is software in a
degenerated way, but it is. And the source is only available for some,
for the rest of us it is very opaque information, you can hardly call
that knowledge at all. So it is knowledge for the authors, not for
the users. 

> With this definition, programs are of course software, firmware is
> software, verilog descriptions of a CPU are software, board designs are
> software (but not the boards themselves), and also culture, literature,
> music etc. are software, and kitchen recipes, but not the actual dishes
> that you eat.
>

ACK. Your definition and mine are very close. In fact you just have to
add a fact to make them roughly equivalent: Knowledge is easier to
change than atoms. (it works better with information, some knowledge
is harder to erase). This is not a general truth (or stomach
rearranges atoms as easily as our brain rearranges knowledge), but I
think it applies to computers. 

> This way, the difference is a deep one: if I give somebody a piece of
> hardware, I no longer have it, in a zero sum game, while if I give
> somebody a piece of software we both have it and the total value for
> humanity has grown.
> 

That kind of properties is very useful to retain yes, and comes easier
from your definition than mine (if you forget I firstly said software
is information).

> Of course, under this definition, today in 2016 it is impossible to buy
> a computer¹ whose software is completely free. 

Yes, with my definition it is quite difficult too, but not quite impossible.
In fact that's why I'm here. 

> My personal pragmatic position is that buying (and in certain case
> using) things is ok from a freedom point of view as long as they
> have a bit more free software than the current standard (either as
> sold or after I've changed stuff that is easy — and legal — *for me*
> to change, depending on the context and the kind of market).

So your goal is your utopy? Or do you think you could eventually
achieve it?

I'm not sure I understand you. What you want is a computer, so a
certain collection of atoms, that embodies some information and you
want to be able to freely use all the embodied knowledge. So for you
that includes software and hardware designs (both are the computer
software for you, right?). An then the hardware designs have been
applied to atoms according to some electronics process you may also
want to know, along with the physical properties of gates, materials,
and energies. And the physical models that describe how the properties
interact dynamically, so basically all of chemistry, physics and
electronics solved for good and finished ?

So what you call a computer whose software is completely free is what
I'd call a computer whose software is completely free and its hardware
follows free hardware designs available to you ?  Or what's exactly
the knowledge you want to be free to use ? (more than yesterday, I
guess, ever more).

I want that too (I just may call it something different?). 

> e.g. in 2016 an A20 based board that respects the definition of Open
> Hardware from OSHWA is fine, but if in 2026 we'll have a SoC for which
> the verilog sources are available a board based on a proprietary chip
> like the A20 won't be fine anymore, even if I have no practical way to
> get advantage of the difference.
> 

I like your future :)




More information about the arm-netbook mailing list