Subject: Mission statement, name usage, and slogans... [long]
To: None <netbsd-advocacy@netbsd.org>
From: Matthew Orgass <darkstar@pgh.net>
List: netbsd-advocacy
Date: 04/24/1999 03:40:33
  I am beginning to realize why "Of Course it Runs NetBSD" was chosen :).  

  I think part of the problem is identifying the mission of NetBSD.  There
seems to be some difference in opinion here. The NetBSD mission statement
is:

   The NetBSD Project provides a freely available and redistributable
system that professionals, hobbyists, and researchers can use in whatever
manner they wish.

  The first thing that I noticed about this statement is the omision of
any reference to the first goal ("provides a well designed, stable, and
fast BSD system"), which, according to the web page, is "probably the
primary goal of the NetBSD project."  If this is the primary goal, I think
it should be mentioned in both the mission statement and the slogan.

  The second thing I noticed is that it is aimed at "professionals,
hobbyists, and researchers."  Sorry mom.  While I don't think anyone here
wants NetBSD to ship with everything needed to make mom happy, I don't see
any reason why mom couldn't be happy running NetBSD + several easy to use
packages (not all of them exist yet, but in theory such packages could be
made).  I would not consider NetBSD to be a well designed operating system
if it was impossible to make it easy to use.  On the same token, I suspect
there are relatively few NetBSD uses that don't include *some* packages.
I think that a major feature of NetBSD is that is designed to be easily
extendable.  In fact, if someone wants to ship NetBSD + easy install tools
+ a bunch of packages (not necessarly with publicly available source) and
call it "TheirCompanyName NetBSD," they should be encouraged to do so.
More on this later.

  Note that I do not think that NetBSD *must* aim at home users to
survive.  Consider the number of NetBSD developers.  Consider the quality
of NetBSD code.  Consider the number of Linux developers.  Consider the
quality of Linux code.  Obviously, correct design also has the benefit
that it takes *much* fewer people to maintain higher quality software.
Still, I think it is in everyone's best interest to have the largest
possible user base.  This is what most commercial software developers
consider when deciding if they should release their products on a given
platform, as well as helping convince hardware developers that they
really should give you the interface specs.  More users in general attract
more users like you which attrace more applications for people like you,
etc. (providing you don't do something in atracting general users that
offends your kind of users and still target your kind of users directly
too).  General name recognition is a Very Good Thing that makes targeted
marketing *much* easier.

  The third thing I noticed was that it does not mention portability.
I don't think it needs to, as long as it mentions well designed.  After
all, well designed certainly implies portable, secure, fast, stable,
and extendable, which would be rather wordy in a mission statement.  On
the other hand, this seems to be a vey important goal, as seen by the fact
that all current slogans refer to only this feature.

  I therefore propose the following changes to the goals and mission
statement:

1) Add a fifth goal:
* Easily extended
  The NetBSD Project acknowledges that an operating system cannot and
should not be all things to all people.  Therefore, NetBSD is designed to
be easily extended through the package.  This way base operating system
does not include functionality that a large number of users do not need,
while those users can still easily add those tools that they need.  In
this way, the same operating system can be used for servers, workstations,
and home use by changing the type of packages that are installed. 

2) Add "secure" to the first goal (this is mentioned elsewhere but should
probably be on the goals page too)

3) Modify the mission statement to read:
   The NetBSD Project provides a well designed, freely available, and
freely redistributable operating system which can be configured, extended,
and modified for a variety of computing needs.


  I also recommend a NetBSD "name usage policy."  Eventually, someone may
want to sell something that is *almost* NetBSD, but not quite.  They may
want to call this "Theirname NetBSD."  I do not think this should be
allowed.  On the other hand, if someone wants to sell NetBSD + some
packages + fancy installer (not necessarily releasing the source to their
packages or fancy installer), I think it would be in the best intrest of
NetBSD to allow and even encourage them to use "Theirname NetBSD".  I
recommend the following policy (possibly proceeded with "any use of the
NetBSD name must be cleared with core@netbsd.org, however these are the
general guidelines"):

A product may use the name NetBSD if it:
  * does not only use the name NetBSD
  * does not imply that NetBSD provides support for the product
  * includes a clearly indicated and unmodified released version of
NetBSD, with the following exceptions, all of which must be indicated:
    1) security patches
    2) games
    3) pkgsrc (however the system package tools must be included)
    4) X (may be replaced with a different, standards compliant, version)
    5) install tools (may include a different version)
  * you may include different configuration files of the etc set without
indcating that they are different
  * clearly indicates any nonstandard compiler or compile options used on 
the NetBSD sources.  These may not cause the product to function
differently if the NetBSD as shipped with the product is replaced with the
official version of NetBSD of the same release compiled useing the 
standard compiler and options
  * clearly indicates which ports it supports
  * clearly indicates that the official NetBSD release is available at
www.netbsd.org
  * any additional packages are installable with pkg_add and removable
with pkg_delete as shipped with that version of NetBSD

You may still use the name NetBSD if you:
  * do not ship sources
  * ship your product with a version of X for which sources are not
publicly available
  * ship your product with install tools or packages for which the source
is not available
  * do not install your packages in /usr/pkg
  * include a different version of a tool included in the system as a
package, aliased in system configuration files (such as a color ls).  The
origional system tool must still exist in the location it appears in the
release

If your product does not meet these requirements but is binary compatable
with NetBSD, you may call it NetBSD-compatible (or "compatable with the
NetBSD Operating System"). If your product is not binary compatible, you
may call it NetBSD-based (or "based on the NetBSD Operating System").

These requirements are designed to insure that anything that is called
NetBSD uses the same sources as a released version of NetBSD, so that the 
user can obtain the release version of NetBSD and add security patches
or compile a customized kernel while remaining fully compatible with your 
product.  You do not need to provide these sources.  If you wish to extend
NetBSD you should do so through the package system, however the source of
these packages does not need to be publicly available.  If you need to
extend the base operating system, you should submit your changes under an
acceptable license and use the next release.

---

  While NetBSD isn't likely to become as fractured as Linux without such
a policy since it is a complete OS not just a kernel, I think that this
policy is a good way to insure that everything called NetBSD is really
NetBSD, while publicly encouraging companies to bundle NetBSD with their
own software.  If someone wants to sell NetBSD + KDE + WINE + fancy
graphical install and configuration tools + default setup to use Xdm as a
Win95 or NT replacement, we should strongly encourage them to do so (in
fact Corel is planning on doing something like this for Linux (Debian),
and I would love to be able to let them know that they could do the same
for NetBSD (or even better if someone from core would be willing to write
them...).  See the press release off of www.corel.com).

  Back to slogans.  FreeBSD has obviously decided that it is a "server
operating system," and comes with appropriate softare included.  NetBSD
has so far mainly appealed to those who need a server on more then one
platform, yet the base OS does not really include anything that a home
user wouldn't use (even NFS a home user with more then one computer would
probably want to use if an appropriate easy-configure tool was available).
And NetBSD certainly runs fine on a PC.  Even if they are strongly opposed
to ever using a non-intel computer, we should still encourage them to run
NetBSD.  Soon they will even be able to run WordPerfect and CorelDRAW
under Linux emulation. Therefore, I think it would be best if the slogan
appeals to as wide a variety of users as possible.  I think this would be
easiest if it primarily appealed to NetBSD's correct design (possibly also
portability, but as result of clean code).  Perhaps best something
refering to correct design, but that could be extended by a word or two to
refer to portability, security, stability, extendability, speed, etc. (so
that the main part of the slogan would be a complete slogan by itself (and
only that part listed on the main web page) but the "extentions" could be
added for various target groups, depending on what each cares most about).
No, I haven't though of anything yet, but I'm still working on it :).

  However, even though the slogan should appeal to every possible user, it
would be foolish to try to market to all of them at once.  Therefore, I
think that NetBSD should have a "marketing" web page (probably separate
from the main project page, perhaps www.netbsd.com) that just asks "who
are you?" or "what is your application?" and provides specific information
about how *you* can put NetBSD to use.  I promise to have at least a
bare-bones version of such a page up by the end of the weekend.

Comments?

Matthew Orgass
darkstar@pgh.net