Priority claim re bootstrapping

John Gilmore gnu at toad.com
Mon Nov 13 00:28:42 UTC 2023


I congratulate the Guix bootstrap team on their continuing progress on
reproducibility.  Yet, there is some controversy over one statement made
in their blog, claiming priority over building:

  a package graph of more than 22,000 nodes rooted in a 357-byte program

in the first paragraph of:

  https://guix.gnu.org/en/blog/2023/the-full-source-bootstrap-building-from-source-all-the-way-down/

Claims of priority in innovation have some importance to history.  You
can see the level of controversy created by a latecomer who claimed that
he "invented email" here:

  https://www.emailonacid.com/blog/article/industry-news/who-really-invented-email/
  https://en.wikipedia.org/wiki/Shiva_Ayyadurai#EMAIL_invention_controversy

And there's the key role that priority has in whether inventions are
patentable and by whom, which has led to huge financial implications;
such as:

  https://en.wikipedia.org/wiki/Apple_Inc._v._Samsung_Electronics_Co.

Email and smartphones have become pervasive in the decades since their
invention in small niches, making such claims actually important to the
world.  We hope and work toward our own area of invention,
reproducibility of software, becoming equally pervasive in the decades
to follow.

Therefore, in a community of technical experts, when a difference of
opinion comes up on the priority of a useful invention, it is useful for
the issue to be examined in more detail, among people who "were there at
the time".  Such an examination tends to bring out more facts, which
become very useful to later observers who weren't there and have to
figure out what may have happened from scanty documentation.

In many such cases, different smaller innovations were often made by a
variety of people or teams.  Perhaps only one or none of the claimants
can credibly support the statement that they made the "key" invention in
that area, but many may be able to share some level of public credit
for their work.

(As another example, when I claimed years ago on this list that Cygnus
made the GNU compiler tools reproducible in the 1990s, some people
called bullshit on me -- until I provided much more detail linked to the
published source trees and early releases involved, as well as copies of
internal company emails and marketing announcements on the topic.)

Personally I don't have a stake in which claims about "bootstrapping a
large collection of source code programs from a small binary seed" hold
up to detailed historical and technical examination or not.  It seems to
me that cross-bootstrapping from a more mature software architecture has
for decades been the norm, even in the creation of the original UNIX.
(As UNIX was then used to cross-bootstrap the GNU software at FSF and at
Cygnus many years later.)  Toggling in binary seed programs was unusual
even in the first (8-bit) microprocessors able to self-host in the early
1970s, such as in building Bill Gates's first 8080 BASIC interpreter,
Steve Wozniak's ROMs for the 6502-based Apple II, let alone the
68000-based SUN boards built at Stanford in the 1980s.  Didn't IBM
cross-build from the 7094 for the first IBM 360 tools even in the early
1960s?  But before dismissing the idea out of hand, let's see what facts
we can turn up, and what new innovations can be produced there to
improve supply chain integrity.

I do think the topic is a suitable one for the Reproducible Builds
community to discuss.  Politely conducted disputes should not be
dismissed as "nonsense" with a suggestion that the parties unsubscribe
from the list.  Inflating the emotional tone of the discussion is not
constructive toward the community discovering whatever contemporaneous
truths may be findable behind the various claims.

Thank you for listening.

	John Gilmore


More information about the rb-general mailing list