This thread has veered considerably from the original topic, so I am responding directly to the OP in hopes of addressing the original question instead of feeding the platform trolls.
I have a question about this, and I believe I already know the answer.
But, I had a loud argument with 2 buddies over this, this past weekend. I am certain I am right, and so are they.
Buddy one argument: 1 of my 2 buddies works for a large Canadian phone/Internet provider. He claims that there is a hidden tax passed onto consumers that pays for there servers that I guess are running linux. Perhaps they do run linux, his argument is that because they do, customers must pay for it, although it's hidden. So he says says Linux is not free.
My argument, the tax is hidden because it's not legal to charge consumers for Linux, it's open source. If i start a company, have linux for the servers, it is free. I i want to have "Support" for them, that is the cost. The Support, not the software.
Well, first off, let's start with what "Free Software," is. Free has two meanings in English, and people sometimes use them interchangeably which can be confusing. People tend to use two French terms, libre and gratuit, which both translate as "free," to clarify. Free (gratuit) means something that you don't pay for. You get something, you have no fewer dollars. It's free. Free (libre) also referes to freedom. This second definition is what "Free Software," is normally really referring to. This sense of free software means that if somebody gives you the binaries for a program, they will also give you the source code and you can modify the program and give the source to other people who will also modify it. Contrast this with something like Windows which is not Free Software (even if you get it without paying as part of a giveaway.) You aren't allowed to modify Windows and fork it to create your own version that you give to people. The Linux kernel, and many of the programs in a typical distribution of Linux are released under the Gnu General Public License, which is a free software license. It's terms are that if you give somebody binaries under the GPL, you also have to give them source. If they want to give somebody a modified version, it has to retain the GPL license. The GPL doesn't require anybody at any point to charge zero dollars. (Nor the BSD or any of the other licenses typical for Linux software, though there are some variations on the rules.)
So, your premise that it is illegal to charge for Linux is incorrect. I'll gladly sell you a copy of Ubuntu for twelve million dollars. It would be perfectly legal. The only requirement is that I give you the source code if you want it. You can then make a version of Ubuntu and sell it for twenty million dollars a copy. But, you have to give your modifications to anybody you sell it to, and they can give it away for free if they want. Given that everything you get when you buy a copy of Linux will also be available freely, vendors tend to also include support contracts with the software. But, while paying does get you support, that doesn't mean it is illegal to charge for the software directly
If a Canadian ISP uses a version of Linux that they pay for because they want the support that comes with RHEL, that doesn't mean there is a "secret tax." It's just a cost of doing business. There's no more a secret tax for staplers or hard drives or hookers for the executives. A customer pays his bill, and the company spends their money on whatever they see as the best use of their money.
Buddy number 2: he tells me I'm foolish to think there are coders / programmers out there working for nothing. Why would anyone write code, make software and give it away. He insists there is a income coming from someone. Buddy one gives him his answer. He cannot believe people write software for free.
A typical Linux distribution probably has something like a dozen lines of my code in it. I once gave a four line patch to a graphics library to improve portability. I once gave a few lines to an open source game that fixed a crash bug if you left the game sitting paused for too long. As a person who has done exactly what your friend days is impossible, I have to raise a counter question. Who would write code, make software, form a corporation, hire some marketing people out of pocket, rent an office, do a bunch of accounting paperwork, quit his day job, and try to get people to pay him for a small patch of a few lines that is only worth anything to a very small number of people? Or something to process some obscure martian elevation data for 3D rendering? Or to convert obscure tracking data? Selling software is a major pain in the ass. Even when I have written fairly substantial things, I'm not going to bother to make a software company to try and sell them. That would be ridiculous. Programmers are programmers. Programmers aren't salesmen. They solve problems that matter to them, and generally speaking, keeping something useful a secret is of no value. Maintaining a secret proprietary changeset to some software is inconvenient compared to submitting it upstream. Keeping a useful tool secret and preventing somebody from submitting useful changes is of no value. Writing software for free is often the result of a very level headed cost benefit analysis.
Imagine a company that wants to sell storage appliances that do something that Linux doesn't do. They can either start from scratch to write a kernel, and spend 95% of their time writing code they don't care about,a nd just trying to be as good as what already exists. Or, they can write a module for Linux that does whatever super RAID storage stuff they want to do, and have a product out the door and making money in 5% of the time and cost of plan A. In that case, having the changes be proprietary would obviously be of some value if you could monopolise your market. But, the benefit of that monopoly has to be considered in terms of the costs. If you open your platform, then other people will give improvements and addons and you can leverage their engineering efforts. Having a monopoly in a small market is sometimes worse for the bottom line than being a major player in a larger market. In this case, programmers are working for a very nice salary, but the software is still free.
Obviously, some people make that analysis and don't see the benefit of going the GPL/Linux route. Isilon, for example, uses BSD as a starting point for their OneFS software which runs on specialized storage clusters. BSD doesn't require the release of changes, so Isilon can keep all of their software secret, and they do good business with that model.
So this left both attacking me on how Linux cannot be free.
I have been duel booting Linux/Win X since 1999-2000. Linux has always been free, windows has always cost something.
How do you explain to buddies Open Source software, OS. They don't get it, and don't believe it.
It must cost so they say.
anyhow, had to run it by here, my friends are not dummies, nor am i, but we both can't be right.
As it turns out, none of you is completely right. Hopefully, this has clarified some of this for you. Having given away plenty of software that I've written, I can assure you that it happens. Why do people write blog posts and give them away? Why do people write forum posts for free?