Today I came across an interesting article written on the History of Linux. The article quotes the famous newsgroup posting in which Linus Torvalds first announced his operating system project to the world. Notice how he calls it a "free" OS. It is clear that he grossly underestimated the future of this OS:
Hello everybody out there using minix -I'm doing a (free) operating system (just a hobby, won't be big andprofessional like gnu) for 386(486) AT clones. This has been brewingsince april, and is starting to get ready. I'd like any feedback onthings people like/dislike in minix, as my OS resembles it somewhat(same physical layout of the file-system (due to practical reasons)among other things). I've currently ported bash(1.08) and gcc(1.40),andthings seem to work.This implies that I'll get something practical within afew months, andI'd like to know what features most people would want. Anysuggestions are welcome, but I won't promise I'll implement them :-)Linus (torvalds@kruuna.helsinki.fi)PS. Yes - it's free of any minix code, and it has a multi-threaded fs.It is NOT protable (uses 386 task switching etc), and it probably neverwill support anything other than AT-harddisks, as that'sall I have :-(.
Linux certainly was born "free", in a day when you could download the source and use the "free" GCC compiler to create your own executable. It was a hackers dream to have unfettered access to source code. Nonetheless, as the distribution of this hacker OS grew, and commercial enterprises like RedHat and SUSE came into the picture, a change in the landscape was inevitable.
For quite some time, distributors such as RedHat operated on the model that they could maintain a competitive business by providing "free" software sans licensing fees, profiting by offering paid training and support of their distributions. As Linux became a buzz and usage grew out from the hackers and into the common marketplace inside corporations, it became obvious to the major Linux distributors that their original profit model wouldn't work
The dillema for the major Linux distributors lies in the fact that their initial distributions were designed around the open community. As the number of different software packages included in the distributions grew, so did the effort required to maintain the distributions. Thus, it became increasingly difficult (and costly) to maintain legacy distributions. As the major Linux distribution companies began to end-of-life support for legacy versions of their distributions, this created a problem for commercial users of their Linux distributions; Migration from legacy Linux distributions is not necessarily trivial, so the time and cost for enterprises to upgrade to current distributions proved extremely painful.
The need for Enterprise level support for the major linux distributions was seen as an opportunity by the distributions to fix their profit model by charging licensing fees for the use of "Enterprise Level" distributions. The distibutions would provide sofware, support, and updates for an ongoing service fee. Thus, one can no longer get "free" version of major enterprise Linux distributions like RedHat or SUSE. The source is still open, and source versions of the software are free for download, but pre-built binary packages, updates, and technical support are only available to those who pay for the enterprise distribution. Thus, the distributors satisfy the needs of both the "hacker" and the enterprise.
I find it both amusing and interesting how eventually the major "free" linux distributions had to turn to a service based licensing model. It only makes sense, as the axiom my mother taught me when I was young still holds true: "There ain't no free lunch." With Enterprise level support requirements, comes Enterprise level licening fees. New studies now show that licensing and support costs do not significantly differ between Windows Server 2003, Red Hat Enterprise Linux 3, or Novell/SUSE Linux 8.
With this fact in mind, we should quit thinking of Linux as "free". Sure, it's out there for the hacker to play with, but when the rubber hits the road for Enterprises, we need to look at the other factors outside of licensing fees and support. Don't get me wrong, I like Linux. I enjoy "hacking" with open source software as a hobbyist/computer geek. Nonetheless, there is a major difference in the needs of an Enterprise organization and someone like me tinkering around on my home network. Let's start to look at the real issues like indemnification, supporatability, interoperability, security, and all of the other myriad of challenges that will differentiate a good platform/solution from a bad one on the Enterprise level.