Questions, Answer:
Q: What does NRCOL stand for?
A: No Ridiculous Constraint Or Limits.
Q: How is this license different from BSD or MIT licenses?
A: MIT and BSD licenses for some reason call themselves by location. For example, BSD
is related to Berkley. But what does Berkley have to do with software produced by
someone that doesn't work or live in Berkley?
MIT is related to Massachusetts Institute of Technology. I don't see how MIT or
BSD make any sense in a license, since they are location related.
What if I've never been to Berkley or Massachusetts? What if you live in Africa,
China, or on planet Jupiter? Why does my and your software have anything to do
with Massachusetts or Berkley, or the planet Saturn for that matter?
Maybe it is an ego thing, and they want people to know about MIT and Berkley by
embedding it right in the license acronym? Do I advertise Z505 Software in my
license acronym? No, because Z505 Software has nothing to do with NRCOL. NRCOL is
a public license, why should it be tied to Z505 Software, or Canada, or USA, or
Alberta, or Edmonton, or Calgary, or Toronto? What do cities, and companies have
to do with worldly/global software licenses? Nothing. They don't belong in the
license.
NRCOL developers still agree with the MIT/BSD license philosophy - they just
don't encourage or understand the point of embedding the city/state/institution
name into the license or the acronym.
Q: How does this differ from a Creative Commons, GNU GPL, Mozilla, or similar
license?
A: Less restrictive, and faster decision making. You spend less time reading the
license and trying to figure it out. We agree with some of the reasoning
behind GNU and Mozilla style licenses, but NRCOL is easier to grasp onto
since it is simple: release, improve, and share your knowledge with the public. No
ethical tyrannies, no political nonsense. All NRCOL expects is that you want to
help the public develop software, and hopefully you want to reduce the ridiculous
constraints, limits, and 6580 word essay style licenses with exception after
exception (GPL). NRCOL does not have as many strict requirements (strict is a
clash with freedom).
Q: Doesn't public domain style licenses like MIT, BSD, and NRCOL encourage branching
instead of merging the sources back into the single branch?
A: This assumption and biased mindset is nonsense. Look at how many linux
distributions there are. Why aren't all the linux distributions merged back into
one single branch? Merging all source into one branch is impossible in the real
world. People want a lite linux and people want a bloated linux. People want a
light web server or a bloated web server. People want a big text editor and a
small text editor.
Microsoft has merged all their sources into Windows NT (no longer is there a
Windows 98) so one could claim that Microsoft is better than linux and BSD since
Microsoft doesn't branch! Branching is possible with GNU licenses or public
licenses. In fact, one could argue that branching doesn't occur as much in
proprietary software in many cases. Basically, even microsoft has much less
branches than GNU software has. If we are going to argue about branching, then one
should use proprietary software since proprietary software branches less often.
Claiming that GNU protects software from being branched is like saying
that Microsoft Windows gives us one good and one true solution to our problems.
This attitude can also encourage bloatware.
No matter what license one chooses, there will always be branching. Even Linus
Torvalds tries to sway people into thinking that GPL discourages branching, and
that one can use GPL without being tied to politics. However, this is obviously
not true. GPL represents GPL and the people behind it... And there are hundreds
of different linux branches (such as Ubuntu and Debian nonsense).
Side note: The linux kernel might even benefit from being branched since it is
becoming bloatware ruled by a single benevolent dictator who may or may not know
what he is doing or talking about at times. The author of MINUX (where Linus got
his ideas from for Linux) still had extremely valid points about software becoming
monolithic bloatware, and even the latest MINUX is released under a BSD style
license.
Why would someone with a PhD like Andrew Tanenbaum release something in public
domain, aren't people that are smart supposed to GPL their code (sarcasm)? Why
would someone with a PhD talk about how software should be componentized and that
software should be moving away from monolithic bloatware? Is it possible that the
Best Products don't always make mainstream - many times semi-good products make
mainstream because of someone in the right place at the right time with better
marketing. Think about BATA vs VHS tapes.
Even if the GPL discouraged branching like so many claim, that would still have
disadvantages. i.e. monolithic bloatware all merged into one gigantic source
base. Sometimes, modularization is good, and public domain licenses can encourage
modularization - especially when plug-ins are not tied to the GPL and can be
installed in a program without ethical licensing worries. From a plug-in
perspective, public domain style licenses encourage businesses and people to
extend software without it being monolithicly tied to one gigantic religous
license that everyone disagrees about.
Q: If NRCOL is not restrictive, isn't it just a license where "anything goes"?
A: NRCOL has general aims and goals. It has to be structured in some way in order to
describe to you what we mean. If no license file was given with your software at
all, people may be confused about what the copyright or license on the software
is. NRCOL at least notifies your customers that you chose this method of
software development (non-restrictive long term aims).
Q: Can one charge money for programs based on NRCOL licensed code?
A: Yes - NRCOL tries to tell you that perfect software would never contain any
restrictions - but get real, we live in a world that is not perfect. So you can
charge money for your program just as you could with a BSD or MIT license based
program.
NRCOL differs from other licenses, who only allow one to charge for SERVICES
around the software (GPL). That is a simple loophole - charging for a service is
relaying the restriction elsewhere. Charging for a service is restricting! NRCOL
feels that if you are going to charge money by restricting the software, you
might as well charge for any sort of restriction - consulting costs, the time you
took to create the source code, the binary with or without source, the time it
took you to copy the software, etc.
Richard Stallman is seriously confused about
free speech and charges people money for his consulting instead of software code
(even though his consulting could be digitally replicated just as easy as
software using something called a microphone and a camera).
Q: What if some company takes my source code, and I don't get paid - they use it and
they don't submit back to me any reimbursement?
A: Start your own software company and build better software than they do. They will
probably hire you. Or your business will probably end up being better than theirs.
There is this false fear that developers have that if they don't "protect" their
software with a GNU or Mozilla style license, it will immediately get stolen and
someone else will make a million dollars instantly. Usually what happens (and what
happened to the inventor of NRCOL) is that public domain software authors get
contacted by companies to do work! Companies and businesses expect an author and
an expert to maintain a source base - and if they find this public source on the
internet, and an expert has his named stamped on the file, that expert is going
to have his phone ringing off the hook if a company really needs his software and
his expertise. In fact, one could detour companies from contacting him by
stamping the confusing mega verbose religious GNU GPL license in the file.
Releasing the source code into the public does not magically make one poor - in
fact, from real world experience, it allows one to become rich, if he wants. Do
you honestly think that if a lead programmer of BSD applied at a web hosting
company for a job, he wouldn't get hired? Do you honestly believe that the
authors of Apache web server would not get offered jobs from Google and similar
companies? And would Apache improve if one was being paid to work at Google on
the Apache server? Do you honestly believe that linux branching of distributions
where authors make money from sending CD's in the mail, is any worse than BSD
branching into Solaris, NetBSD, FreeBSD, etc.? (there are three-four main BSD
branches, but about 558 different linux distributions and flavors.
This "fear" that GNU licenses spread, the fear that one will lose all his
development to another author or company (magically) if he does not release under
GNU, is total nonsense.
People waste so much time trying to protect their source code. The NRCOL
inventor has had several companies contact him to MAINTAIN source code that he
wrote and offered into the public domain!
Most companies could care less that there is free source code out there - free
source code is useless without an expert behind it that can extend and maintain
it!
Source code is shared among elite programmers who understand it - the other
people don't know a thing about it and need you to maintain it for them! Build
companies this way, get contracts this way, make a living this way. Do what
you've always wanted - share your code with your elite friends. You'd be amazed
that offering source code into the public domain is not risky - it gets one
networked up with many more businesses. Whereas keeping the code private, or
keeping the code tied to a religous license (GPL) that is mega confused, can
detour business and detour progress.
Q: Is my software protected by warranty, or anything legal if released under NRCOL?
A: There is no warranty with NRCOL license. NRCOL believes intelligent users sort
out issues with software, and that a license cannot protect a user or guarantee
the software functions perfectly.
Q: What is NRCOL's view on copyright?
A: A symbol in the file should exist to notify who wrote something. A "copyright"
stamp is confusing, because everyone has different meanings of it. Does the
copyright imply that you cannot use the code without permission? What if the code
was released publicly but still has copyright on it? What if a person dies but
had a copyright on the code? Who knows, copyright's are confusing. NRCOL on the
other hand flat out states that the code is public domain.
It is of your best interest to stamp files with ~NRCOL along with your name so
that we know who has worked on the file. But the stamp doesn't have to be a
copyright stamp. The copyright stamp has just become popular because people feel
they are protecting their data. But if you don't state any CONDITIONS about what
your copyright protects, it can be confusing. NRCOL stamps explain in the NRCOL
license file exactly why you stamped the file. Copyrights leave too many
questions to be answered.
Also, some source files get polluted with several copyright tags from different
developers. A NRCOL stamp does not pollute the source file, because you just have
to stamp it as NRCOL once - no date is required - then list your name in the
contributors section elsewhere in the file. Stamps such as multidate copyright
(2006, 2007, 2005, 2004, 2003) is source code pollution. One must maintain the
dates and pollute the file with dates, and then add additional dates elsewhere in
the project source file such as in source notes sections. Do we need all these
dates?
A "contributor list" should be used to record a history of who worked on the file,
and to keep track of who would be the best person to contact about the file. If
strong trust is built between some of the authors of the document, they don't have
to stamp the file wherever they make a change (i.e. in some source code you don't
see stamps every few lines, because that takes extra time and becomes
redundant).
NRCOL believes that the NRCOL stamp shouldn't try to describe some magical
read-only protection like the © copyright is known for.
To reduce confusion, it is recommended that you use a NRCOL stamp instead of a
copyright, since some people interpret copyright symbols differently than others.
Copyrights just leave too many questions unanswered.
We suggest stamps be in the following format:
1. A ~NRCOL stamp at the top of the source file, no dates. NRCOL applies to the
file no matter what year
2 A contributor list.
3. Source notes - dates are okay here.
The ~NRCOL stamp should be at the top of the page
If the file is source code, label as
~NRCOL Source Text
If the file is a general document, label the document as
~NRCOL Document
If the file is a text document, label the document as
~NRCOL Text Document
If the file is a help document, label the document as
~NRCOL Help Document
Your name is your screen name, initials, or your real name. A number can be used
to suffix your name. It is not required. The number helps distinguish John Smith
from another John Smith (i.e. JS005 and JS777).
However you still may wish to use copyright or copyleft marks if you are used
to them or see some advantage. Just note that they cause confusion and are not
as unrestricted as a simple NRCOL stamp.
Q: But isn't NRCOL restrictive, stopping someone from having the sources in certain
cases?
A: Yes - life is not perfect. Charging money for consulting about GNU software is a
form of restriction too. Speech is no longer free if you charge for services
about software (on cruise ships). With NRCOL, we don't play games moving goal
posts by relaying restrictions over to services but not allowing anyone to hold
back the sources.
Ideally in a utopian world hardware and food would also be free since you could
replicate them with a 3D printer and robots run off free Tesla electricity, and
software would be free, and we would not release anything with a ponzi scheme
attached to it. In the mean time while the world is not utopian, you can still
charge for your binary file or for consulting or whatever you want.. But Richard
Stallman thinks only certain things can be charged for but not others which is
hypocrisy.
Q: How do I state what parts of my code are completely NRCOL, but some with certain
restrictions?
A: You could modify the NRCOL license or use multiple licenses that are compatible,
however modifying the NRCOL license or using many different licenses makes it
more confusing to the users and other programmers.
Q: If anyone can modify the NRCOL license, isn't that too flexible?
A: LGPL and modified GPL licenses exist too. People are always modifying
other licenses. How many times have we seen a Modified GPL or LGPL, such as the
Freepascal units included with their Run Time Library.
A simple thing to do would be to not modify NRCOL and leave it as is. Just like
shipping your code with a BSD or MIT license is simpler than making exceptions to
that license. But ultimately it is up to you.
Back to NRCOL page
|