Pete Helgren wrote: a bunch of good stuff, but...
Yes. I think Mac OS based on the BSD version of Linux (or some variant
I think) is an example of F/OSS morphing into a commercial product. As
long as the license allows it, go for it!
Just a correction here: Linux is a completely different code base from
Unix. You can look up the strange and convoluted history of Unix
elsewhere, but the result is that there are basically two lines of Unix:
The commercial Unixes derived from AT&T (AIX, HP/UX, SunOS, etc), and
the open source Unixes, or the BSD family (OpenBSD, FreeBSD, etc).
GNU ("GNU's Not Unix") was developed at a time when AT&T was being more
restrictive regarding Unix. It included a goodly chunk of the Unix
utilities. Likewise, the Linux kernel was a completely independent
effort. Together, GNU and Linux ended up as a complete operating system
alternative to Unix.
This is also a good time to raise the issue of licensing of open source
software. It's been my impression that iSeries people making their code
available to the public have been somewhat lax in setting out the
licensing terms for their software. This is important since software is
copyrighted material, and usage is generally covered by license. If the
license is not explicitly spelled out, then there's effectively no
license to use it.
There are basically two types of F/OSS license. First, the BSD license
allows pretty much anything regarding usage, including taking the code,
packaging it, and selling it without restriction. Businesses tend to
The GPL, on the other hand, allows unrestricted use of the software, but
with some important conditions. In a nutshell, you can include GPL'ed
code in a derived product only if the derived product is also available
under the GPL. Developers of F/OSS tend to prefer this since it forces
others to share and share alike.
Some people hold rather hard and firm positions on which style of
license is better. Most of us though, are pragmatic, and use what
software best meets our needs.
My point here is that you can't just post software on a web site and
call if F/OSS. You have to spell out users rights in using that software.
Another point I'd like to make is that once you do make your code
available, you have to be prepared for others to enhance and improve the
code. Heck, you have to encourage it! I know it's hard for some of us to
give up control of the software we write. But that's how the really
successful F/OSS projects ended up where they are.
In general, most people will submit changes back to the original author.
But if the community is not satisfied with the way that person manages
the project, others will fork the code and start a new project with it.
That doesn't happen often, but it does happen, and you have to be
prepared to deal with it.