Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Mar 1999 01:11:10 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        brett@lariat.org (Brett Glass)
Cc:        tlambert@primenet.com, jkh@zippy.cdrom.com, freebsd-advocacy@FreeBSD.ORG
Subject:   Re: O'Reilly article: Whence the Source: Untangling the Open
Message-ID:  <199903130111.SAA26427@usr07.primenet.com>
In-Reply-To: <4.1.19990312162726.03ff1c40@localhost> from "Brett Glass" at Mar 12, 99 04:38:34 pm

next in thread | previous in thread | raw e-mail | index | archive | help
A response to Brett's questions about:

1)	GPL related misunderstandings

2)	The Linux ABI vs. zealous advocacy of FreeBSD

The second is, IMO, the most interesting read.


> >If Brett has a folley in this regard, it's buying into the diversion
> >of the radical Stallmanites into the "You are saying yours is better!"
> >by saying "Well, it is!", instead of "You've misunderstood me.".
> 
> Well, I think that even Jordan has misunderstood me here, so I guess
> misunderstandings are common when it comes to these issues. What
> can we do about this?

Deflect them.  If they examine their license critically against
another license that better espouses their philosophy, their reason
for buy-in to the GPL in the first place, then the GPL has lost.

That's why I point at the eCOS license.  As an instrumentality of
the GNU Manifesto, it is a profoundly superior document to the GPL.

[ always capitalize "Manifesto" to draw attention to the word ]

Once converted on the courage of their own convictions, the GPL
quickly sours in their mouth.

Then the problem with advocating the eCOS license becomes visible:
there's really no sexy work going on the engender zealotry under
that license.

What you are left with is a free software advocate, stripped of
his allegiance to the GPL as a route for getting free software.

Now they are looking at the flying saucers.

When that happens, you go for the rug: now that they are looking
elsewhere for their philosophical satisfaction:

	Tell you about the UCB license?  Sure.  From each
	programmer, according to their ability, there is a
	pool of software generated.  From this pool,
	according to their technology needs, people or
	companies can take the software and deploy it.
	When they do that, it raises the bar for everyone,
	and makes the world better for everyone.

Cleverly playing into the Marxist doctorine underlying the GNU
Manifesto (a Marxist is a Marxist, and you would do better to try
to retrain wolves to eat grass instead of sheep than to try to
change that; such change only comes with a 28% or higher tax bracket).
Then you shoot down their primary anti-UCB themes one by one.  I
can give you the distilled themes and the canned counter-arguments,
with real-world examples, if you want.


> >FreeBSD needs someone insane enough to start a project to get the
> >FreeBSD API ported to Linux and Solaris and UnixWare and Windows,
> >to take that, and leverage the fact to get companies to commit to
> >the single ABI (maybe even change the FreeBSD ABI to match one of
> >the commercial UNIX implementations, instead); and that's just one
> >example where only a fanatic will do.
> 
> Trouble is, Linux is the dominant ABI these days! Adapting FreeBSD 
> to that is basically abdicating control of the direction of the 
> product.

Which is why you adapt Linux (and others) to run FreeBSD software.
If you give Linux control of your ABI for all commerical software,
they'll take it.  And frankly, they just aren't that good at writing
structured software that they won't make a mess of it.

Going down the Linux emulation corridor was a big mistake for
FreeBSD, IMO, and it marks a sea-change that will be hard but not
impossible to undo.


I was having this discussion (the discussion was wearing a different
hat) with someone the other day.  The question before the court was
the value of compilation of JAVA to native code to get around the
fact that JAVA is Just Too Damn Slow To Be Useful(tm).  The outcome
hinged on the answer to the related question, which is that if you
compile it to native code, stripping off the cloak of Write Once,
Run Anywhere(tm), what clothes, other than that cloak, did the
emperor have on?  The answer is that the value of JAVA is not in
the structure (C++ has multiple inheritance and templates), nor in
the half a dozen other points that compiled languages have over
languages that have to be declarative to run in an interpreter.  It's
the cross-platform API. The cross-platform ABI was nice, but it
wasn't the killer product for JAVA, because -- say it with me --
JAVA is Just Too Damn Slow To Be Useful(tm)... until you pull the
cloak off.


I think maybe I need to dust off my FABIO proposal again, and this
time give it some teeth.  The basic idea is that you can turn off
all non-FABIO features in a level-1 compliant OS, program to that,
and run the code on all other level-1 and level-2 compliant OS's
(level-2 compliance is "supports the ABI, but doesn't let you turn
off OS specific features").  Declare one (or more, if you can)
commercial UNIX platforms to be level-2 compliant, and implement
such ABI as necessary.  Implement for Windows 95/98/NT/2000 if
you can find someone clever enough to crack that nut; I'll tell
you right now that 98 uses a class loader to load .EXE's, and it
gets it from a registry lookup, so the hooks are there (don't
believe me?  Run a registry watcher, and fire up a windows program).

Can anyone tell me what kind of moron would write native code on
anything but a level-1 compliant platform?

Writing on anything else would portentially restrict your available
market: the same reason people develop applications for WIN32
instead of UNIX right now.

Imagine if everyone in the Solaris Software Directory switched to
FreeBSD as a developement platform because it guaranteed, since
it was level-1 compliant, that the resulting code would run on the
level-2 compliant FABIO platforms of Solaris, UnixWare, Linux, and
anything else for which the team was willing to write level-2 ABI
emulation... because they wanted to zealously promote FreeBSD.

Now imagine that every UNIX platform had the same ABI, for a given
processor type.

Now imagine you're president of a software company, and you are no
longer looking at a fragmented porting nightmare.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-advocacy" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199903130111.SAA26427>