freebsd should be rewritten based on microkernel architecture

Aryeh Friedman aryeh.friedman at
Sat Apr 18 00:50:24 UTC 2020

On Fri, Apr 17, 2020 at 8:06 PM Dale Scott <dalescott at> wrote:

> ----- Original Message -----
> > From: "Polytropon" <freebsd at>
> > To: "Aryeh Friedman" <aryeh.friedman at>
> > Cc: "Paul Pathiakis" <pathiaki2 at>, "freebsd-questions" <
> freebsd-questions at>
> > Sent: Friday, April 17, 2020 1:30:25 PM
> > Subject: Re: freebsd should be rewritten based on microkernel
> architecture
> ...
> > The _choice_ of licensing terms is very important to a programmer.
> IANAL but...   ;-)
> I think of "open-source" as a legal framework for a community to share
> software development by pooling their resources. The license protect the
> investment the participants make (e.g. the time spent coding, testing,
> writing bug reports, writing user manuals, supporting other members of the
> community, etc.), and also gives protection from an actor acting in bad
> faith. When a company (a single legal entity) develops software, regardless
> of whether the programmer is a full-time employee or a contractor, the code
> generally belongs to the company. There simply is no "my code", it is
> "their code" and I relinquished my rights to it in return for compensation.
> The developer does not have the right to re-use a single character for any
> reason (which is different from it not being worth the effort to penalize
> an infraction). Of course, developers own the knowledge in their heads that
> enabled them to write the code, and can use that knowledge to write new
> code (although other contractual restrictions may be in force, such as a
> non-competition or non-disclosure agreement).

That is why most developers are always looking for a hybrid solution.  BSD
is the only license that allows that cleanly.   Most companies are more
then willing to go along with this to some extent since it is a huge
cost/time savings.

> A single developer providing software under an open source license is for
> the most part simply being altruistic and helping their fellow developers
> by providing tutorials, examples and proof-of-concepts for projects
> consistent with a single developer. The developer's personal beliefs will
> determine what license is appropriate - but generally either "permissive"
> (e.g. BSD) or "copyleft" (e.g. GPL).

It has nothing to do with personal beliefs unless you are lucky enough to
so situated you don't need money.  But if you have to pay your own way
anything that makes it hard or impossible to charge for the work (see
below) is an immediate non-starter.

> A permissive license might be appropriate if the goal is to provide
> benefit to as many people as possible with minimum constraints (a
> permissive license typically only imposes keeping the original license and
> copyright notice, and prevents being sued for errors or not being fit for
> use).

The Court has consistently held that such blanket waivers of liability are
null and void if any consideration (money) trades hands.   So the minute I
sell a piece of software regardless of its license I am liable for any
misuse or damages that I would customary  be liable for under a normal
commercial license of work for hire contract.   Thus the only way to avoid
such liability is specifically list the applications which the code is
suitable for and say no use outside of those applications is allowed.
Both BSD and GPL do not allow that and by clauses 5 and 6 of the OSD ( such restrictions are by definition
not open source.

> However, if you believe someone who modifies your code has an obligation
> to share in kind, then imposing this through a copyleft license will likely
> be appropriate. Note though that the GPL only requires source to be shared
> with those who receive the software in non-source form, which may not
> include the original developer! Also note that payment is irrelevant so far
> as the license is concerned. For example, the GPL does not prevent me from
> "selling" a customized version of ERPNext (an enterprise ERP application
> licensed using the GPL), so long as I distribute the source for my changes
> to those who I have provided my modified version to. (I mean "selling" in
> concept as I would not own the code, but would be able to charge for
> customization services).

And here goes the *ABSOLUTE* reason why no developer who ever hopes to make
any money at all from their work should *EVER* use GPL.   What stops the
person I give the source to from selling it for less (which makes sense
because they have none of the up front costs of developing it in the first
place) and defeating the very reason why I sold it in the first place (to
make a living).   This is nothing more then legalized reverse Robin Hood
(steal from those least able to defend their rights [aka the poor] and give
it to those who are most able to defend rights that they don't deserve [aka
the rich]).  What a wonderful recipe to do what capitalists have always
attempted to do which is make huge profits for little or no expense.   This
is the very scenario that Stallman was protesting when he created the
fatally flawed first version of GPL and it is never been cured in revised

> The license becomes more significant for projects with multiple
> developers, projects that incorporate open-source software to expedite
> development, and companies who use the software. Vague ownership

Quite the opposite large projects with a lot of developers can usually do
pass the hat style funding just fine and thus are free to pick what ever
license they want.   Small projects rarely can generate enough donations to
make this possible and thus picking a license that forces you to do so is
suicidal to the project and the well being of the team.

> of the code or vague allowed use creates risks for the entire community.
> What if two developers work together for a year to create a software
> application but then part ways. Who owns the rights to the codebase? Do the
> developers share ownership jointly or individually? Can one developer
> continue

That is why many teams will have a copyright notice of "copyright XXX YYY
and contributors" (yyy is the entity that started the work).   For example
all my open source code reads "Copyright XXX Friedman-Nixon-Wong
Enterprises and Contributors".   This allows people to come and go as they
please and not lose access to what they have done.

> development of the software on their own if the other developer doesn't
> want them to? Does each developer have rights only to the characters they
> typed? What are the risks to a company if the project cannot show they have
> a legal right to offer the software (which could be the result of including
> GPL code in a BSD project, or re-using code created under contract to an
> employer)? What are the risks if the company uses the software to create
> their own product? What if the software is an enterprise ERP, CRM or FRACAS
> system and the company uses it to run their business! A company that
> proactively protects shareholders from risky legal situations would have to
> just walk away.....

If you just add the simple wording "and contributors" none of the problems
above are issues.    That assumes your using BSD and not GPL (GPL makes
almost all the above massive issues).

> Licensing itself isn't complicated, it's all the other details....  ;-)

Correct but you're focusing on the wrong details and misreading the ones
you do focus on.

> ---
> Dale Scott
> Engineering and NPI Leader
> Web:
> Email: dale at

Aryeh M. Friedman, Lead Developer,

More information about the freebsd-questions mailing list