i am not familiar enough with copyright law to comment on your claim that the author of the derived work is sole owner of the copyright, but it sounds dubious to me
Title 17, Ch 1, Sec. 103 (b): "The copyright in a compilation or derivative work extends only to the material contributed by the author of such work, as distinguished from the preexisting material employed in the work, and does not imply any exclusive right in the preexisting material. The copyright in such work is independent of, and does not affect or enlarge the scope, duration, ownership, or subsistence of, any copyright protection in the preexisting material"
In other words, if I write one single line of code for your GPLd work, I own that single line. I don't own the combination of your work and my work, but I do own my line. For a more realistic example, and one that happens all the time, consider a GPL library that I use to create an application. If this application is not statically linked, then I own 100% of it. The library author has zero property claims over it.
but i suspect that companies like IBM had damned good business reasons to pick a GPLed product to contribute to.
And I suspect companies like Apple had damned good business reasons to pick a BSD licensed product to contribute to. (just had to throw that in)
In a competitive business environment where your product is pure software, the a copyleft license like the GPL makes sense. Trolltech, MySQL and some others are doing well through copyleft libraries. But IBM doesn't need to, because IBM doesn't sell the software, it sells the service. Their business model would be identical if they used a BSD instead. In fact, they are active contributors to Apache, which is under a BSD-like license, and they haven't complained once. (interestingly enough, NO ONE ever complains about Apache's license).
but you shouldn't be practicing your religion where it alienates others.
So I need to hide in the closet then?
After all, atheism and Christianity are equal, right?
In my own eyes, of course, I don't view them as equal.
But in the eyes of the law, yes, they are. I don't want any laws mandating that students in public schools must say "under God". Neither do I want any laws forbidding students to say it. And to be equal, I don't want any laws mandating their recital of "under no god" either.
On a side note, it was a Jehovah Witness friend of mine in elementary school that first made the first ammendment understandable to me. I had heard all the arguments on every side of the issue. But it was the understanding that he had the legal right to be a Jehovah's Witness inside the walls of a public school that brought it all home.
p.s. Later on in life I realized that the real problem wasn't separation of church and state, but rather, the lack of separation of school and state. These sorts of problems just don't occur in private schools, secular or otherwise. Of course, this is a different topic entirely, but it's worth thinking about. How do you reconcile a public education system that stresses bland conformity within a pluralistic and multicultural society?
what is plain rude is telling the copyright holder (i.e. owner) of the code how he has to release it.
But isn't that what the GPL is doing? It's telling the copyright holder of a derivative work how to release it. If you check the law, the copyright holder of a derivative work is *not* the original author.
Why is it rude for an application developer to demand a certain class of license from the library developer, but somehow polite for that same latter to demand a specific license from the former? Or are double standards in etiquette okay just because it's the FSF and the GPL?
I agree. I hate to see this become the norm, but it's the only way to protect *me* from my lawsuit happy coworkers.
If I had forwarded that particular article on to my fellow developers, I could have been brought up on harrassment charges. This isn't an exaggeration, because similar incidents have happened in my company.
Freedom of religion means that I don't have to stop practicing my religion just because it might offend someone. As many have stated elsewhere, the US Constitution guarantees freedom OF religion, not freedom FROM religion.
I'm quite tolerant of atheists and agnostics. I just wish they were tolerant of those who aren't.
Now of course you are taught by your parents that you should obey your teachers
Are you arguing that someone should be suing the crap out of your parents in front of the supreme court for telling you to obey your teacher? I somehow don't think you are, but that's the direction your argument leads.
If at that age you were able to make the conscious decision not to recite the pledge, that would be one thing. But you're weren't capable. That's why your parents made that decision for you. That you might think them wrong now for a decision made in the past is irrelevant, because no one else was available to make that decision for you.
"Oh dear we must take the word 'God' out of the pledge because there might be a parent somewhere telling their kids to recite it! Oh the horrors of it all!"
Now if we could just get people to stop expecting me to stand up for miscellaneous Broadway showtunes and Country&Western songs (God Bless America and God Bless the USA) I'd feel we were getting somewhere.
Hereby resolved in this here Senate of the United States, that forwith and in all haste, no one shall expect another to stand at the singing of any Broadway or Country & Western song that contains the word "God" in it, at any sporting event. Anyone who frowns or squints their eyes at those ingrates who remain seated shall be taken out behind the ballpark and flogged with last week's footlongs.
Those three or four founding fathers who were deists far outweigh in importance the dozens who where theists, especially when you quote them out of context. All hail the new revisionism!
The CNN article's emphasis on voluntariness... is grossly misleading, almost propagandistic... Most states have laws requiring the pledge to be recited every day as a class activity
More Slashdot FUD. Did any of you editors actually go to public school in the US?
Pledging allegiance was voluntary when I went, thirty years ago. Many students did not pledge. Some were Jehovah Witnesses. Others weren't US citizens. Still others simply chose not to. This wasn't in some "enlightened" urban school, but down in deep rural America.
The schools may be required in some states to have this activity. But it is not required for any of them to coerce any students into participating.
No state has a law prohibiting anyone from reciting the pledge voluntarily, whenever they want to.
And no state has a law requiring anyone from reciting it either. If you don't want to say, don't say it. Duh!
No, the postulation is that proprietary licenses are just as viral as the GPL. I've demonstrated that many, if not most, are not.
I did not argue here that the "infectiousness" of the license is good or bad. That's a different topic entirely. You have the right, and I will fully support you in it, to release you code under any legal license you wish.
I do release my own code under the BSD or MIT licenses. Why? Because I want it to be Free Software. For those of you in Rio Linda, That's Free as in "No Strings Attached".
...yet have no objection to propriatary [sic] licenses, which are equally viral.
Some proprietary licenses are viral, but the vast majority are not, particularly those that are meant to be utilized by developers. Microsoft's MFC and.NET libraries do not place any viral strings on the code I write that utilizes them. I can write an MFC application and distribute it all day long under any license I like, without paying one cent in royalties to Microsoft. But a GPL library is another matter entirely. If I utilize a GPL library I have no choice as to my application's license. This is the major reason the LGPL was created. Heck, GNU's own GTK+ toolkit still argues that Qt is bad because it's under the GPL and the LGPL.
No code that is meant to be utilized by people outside of its respective project should ever be placed under the GPL. That's just plain rude. If embedded companies grab code from within the Linux kernel to use, then they should expect to "pay", just as if they had disassembled the NT kernel and did the same. But they shouldn't be taken to task for writing a 100% original driver from scratch. Kernel code isn't meant to be utilized, but kernel API's are.
The thing that bugs me the most about the GPL is not the license. As it's written, it's not bad. Heck, compared to the MS EULA, it seems heaven sent! I have some minor quibbles with it here and there, but overall it is more than satisfactory.
My big beef is the marketing of the GPL. It's free! Free as in speech! Free as in freedom! Free as in warm fuzzies that will make the world a nicer place to raise your children! Free Free Free Free Free!
But it's only free to use. It's not free to utilize. The "marketing" glosses over this fact. All of these embedded companies jumping into bed with Linux think that they're just using the software. They're really utilizing it instead, and all those GPL conditions apply. The GPL isn't Free as in "no strings attached". Far from it.
It's always puzzled me why Linux is making strong headway into embedded companies. It's one thing to use Linux to run a webpage, install on the secretary's system, or be a development workstation. But basing your products on Linux code is going to put yoru business at odds with GPL's attached strings.
Surely businesses know this, don't they? They've got lawyers reading the GPL, don't they? Their developers aren't blindly dropping in GPL code, are they? The big problem is that lawyers aren't developers and developers aren't lawyers. What's the distinction between writing a bash script and writing a kernel driver? To the developer, everything. To the lawyer, not much difference at all.
I think these embedded companies are getting in trouble because they don't realize that a 100% original driver created from completely from scratch in a blackbox environment could still be considered a derivative work. The strings attached to the GPL look simple, but they're very convoluted out in the real world. The fact that the law does not precisely define "derivative work" doesn't help matters. It's all too easy to get the FSF breathing down your neck for the most innocent of actions.
I work for an company that makes very large and very expensive embedded systems. I know how easy it is to "infect" the system with the GPL. It's one thing to grab bash and drop it in your system because you need a POSIX shell. But it's a completely different matter to grab a module from Linux and drop it in your system because you need a USB driver. Most lawyers don't know the difference between the two. Most developers don't care because they think the lawyers are making sure everything is hunky dory.
GPL code is not business friendly, despite the marketing. It may be friendly to the consumer, but it's frequently antagonistic to the producer. BSD or MIT licensed code is much better for embedded companies. But before you GPL advocates take exception to that last sentence, stop and think if you want your own GPL code closed up into a proprietary package by and embedded software company. If the answer is no, then stop marketing your code to them! To the businesses out there, if you don't want to open up every byte of code written by your developers, use BSD or MIT licensed code instead.
It works for me! It's the Windows way that I abhor. It's damned annoying if you don't double click at the right speed.
What's the right click for in KDE (and Windows)? To manipulate the object. Renaming is a form of manipulation, as it delete, copy, and editing properties. Windows has chosen to make rename the default manipulation, and to access it with the left (action) button. What if it had chosen something else? What if every time you double clicked too slowly it added the icon to your bookmarks?
So they don't know computer applications. They know finance, marketing, operations, negotiating, and a host of other things that mostly don't have anything to do with computers, but do have a lot to do with ongoing success.
I could care less that they don't know computers. What pisses me off is that they THINK they know computers. They're always specifying acronymic technologies completely irrelevent to the task at hand.
It used to be you had to start out in "the mail room" in business and work your way up. But now it's expected that newly graduated Harvard MBAs be moved immediately into executive positions.
I'm not talking about optimization. That's a given. It's what I explicity instructed the compiler to do since I used teh -O3 switch.
I'm talking about the compiler guessing what the programmer really meant. That's not its job. Its job is to do what the programmer told it to do. The original post bemoaned the fact that programmers are using patterns of abstractions instead of relying on the compiler to do it for them. Well maybe, just maybe, I want a pattern of abstraction that's different than what his proposed compiler would give me.
The flaw here lies in the obscure methods for installing software, what happens to that software once it is installed, and how the heck to run that installed software when it doesn't show up in a dock menu somewhere.
Is that why Windows users insist on keeping an icon for every piece of software installed right on their desktop? I think some of these people are switching to multi-head setups just so they can have more desktop room for all their icons.
Thanks, I needed a good laugh today, it being a Monday and all.
The job of the compiler is to accurately translate the programmer's explicit instructions into machine code (or another language). No more, no less. It should rightly complain about syntactical and semantic problems, and if it's a polite compiler, should issue a warning for an obvious logical error. But it should NEVER presume to add to what the programmer has requested, or ignore anything he commands.
Oooooh! You dissed Java. Uuuugh! You mean person you! Rrrrrh it makes me so angry! I just want to slap you for that. Never ever ever ever say anything bad about Java. You nincompoop. Java is pristine, perfect, epiphanal. Java is my religion, my life, the air I breath. Nnnngrh. Only a toadnosed neanderthal would ever say anything bad about Java. Weaselhead, ratmouth, ignorant philistine stoat! Aaarghnnggrh...
[...loud messy explosion as one more javaboy messily ceases to be...]
if you're given an existing codebase and told to improve on it, that's exactly what you're expected to do - and it's all you're expected to do
I've done it. Several times. And gotten away with it. But I don't do it every time I see the opportunity to do so. I don't do it when it's late in the development cycle, because then QA won't have enough time to properly test it. Other times I have deadlines so tight I can't do anything but what's been requested. But when I can, I do, and I even let my boss know I'm doing it.
The fact remains is that there remains no viable alternative.
The fact is that there are dozens of alternatives. They may not be viable for you, and they may not be viable for most people, but they are more than viable for the people that use them.
Windows is a completely different beast than Linux, BSD and Macintosh. To say that Linux is unviable because it doesn't provide exactly the same benefits as Windows is like saying motocycles are unviable vehicles because they aren't automobiles.
I'm using FreeBSD as my primary desktop (yes, desktop) instead of Windows simply because I have different priorities than the typical Windows user. That doesn't make them wrong and I right, or vice versa. It just means I have different preferences.
The so-called invisible hand of the economy is supposed to ruthlessly punish companies who produce crappy products that don't give customers what they need.
Wrong. Mr. Smith's invisible hand doesn't give a rip about crappy quality. It doesn't care what the customer needs. It only cares about what the customer wants. And if the customer wants something and it is available, no natural monopoly can stand in the way of the market.
I've seen plenty of people switch to Linux, try it for a week or two, then go back to Windows. They have explicitly chosen Windows. That's what they want. They want the familiarity, the driver/software availability, etc, etc. They want to use the same system their neighbors are using. Wants have different priorities, and crap-free is apparently low on most people's list.
As Linux and BSD provide more of the benefits that most people want, more and more people will switch over.
Actually, all drinkable alchohol is grain alcohol. Every hear of barley?
i am not familiar enough with copyright law to comment on your claim that the author of the derived work is sole owner of the copyright, but it sounds dubious to me
Title 17, Ch 1, Sec. 103 (b): "The copyright in a compilation or derivative work extends only to the material contributed by the author of such work, as distinguished from the preexisting material employed in the work, and does not imply any exclusive right in the preexisting material. The copyright in such work is independent of, and does not affect or enlarge the scope, duration, ownership, or subsistence of, any copyright protection in the preexisting material"
In other words, if I write one single line of code for your GPLd work, I own that single line. I don't own the combination of your work and my work, but I do own my line. For a more realistic example, and one that happens all the time, consider a GPL library that I use to create an application. If this application is not statically linked, then I own 100% of it. The library author has zero property claims over it.
but i suspect that companies like IBM had damned good business reasons to pick a GPLed product to contribute to.
And I suspect companies like Apple had damned good business reasons to pick a BSD licensed product to contribute to. (just had to throw that in)
In a competitive business environment where your product is pure software, the a copyleft license like the GPL makes sense. Trolltech, MySQL and some others are doing well through copyleft libraries. But IBM doesn't need to, because IBM doesn't sell the software, it sells the service. Their business model would be identical if they used a BSD instead. In fact, they are active contributors to Apache, which is under a BSD-like license, and they haven't complained once. (interestingly enough, NO ONE ever complains about Apache's license).
but you shouldn't be practicing your religion where it alienates others.
So I need to hide in the closet then?
After all, atheism and Christianity are equal, right?
In my own eyes, of course, I don't view them as equal.
But in the eyes of the law, yes, they are. I don't want any laws mandating that students in public schools must say "under God". Neither do I want any laws forbidding students to say it. And to be equal, I don't want any laws mandating their recital of "under no god" either.
On a side note, it was a Jehovah Witness friend of mine in elementary school that first made the first ammendment understandable to me. I had heard all the arguments on every side of the issue. But it was the understanding that he had the legal right to be a Jehovah's Witness inside the walls of a public school that brought it all home.
p.s. Later on in life I realized that the real problem wasn't separation of church and state, but rather, the lack of separation of school and state. These sorts of problems just don't occur in private schools, secular or otherwise. Of course, this is a different topic entirely, but it's worth thinking about. How do you reconcile a public education system that stresses bland conformity within a pluralistic and multicultural society?
what is plain rude is telling the copyright holder (i.e. owner) of the code how he has to release it.
But isn't that what the GPL is doing? It's telling the copyright holder of a derivative work how to release it. If you check the law, the copyright holder of a derivative work is *not* the original author.
Why is it rude for an application developer to demand a certain class of license from the library developer, but somehow polite for that same latter to demand a specific license from the former? Or are double standards in etiquette okay just because it's the FSF and the GPL?
I agree. I hate to see this become the norm, but it's the only way to protect *me* from my lawsuit happy coworkers.
If I had forwarded that particular article on to my fellow developers, I could have been brought up on harrassment charges. This isn't an exaggeration, because similar incidents have happened in my company.
Freedom of religion means that I don't have to stop practicing my religion just because it might offend someone. As many have stated elsewhere, the US Constitution guarantees freedom OF religion, not freedom FROM religion.
I'm quite tolerant of atheists and agnostics. I just wish they were tolerant of those who aren't.
Now of course you are taught by your parents that you should obey your teachers
Are you arguing that someone should be suing the crap out of your parents in front of the supreme court for telling you to obey your teacher? I somehow don't think you are, but that's the direction your argument leads.
If at that age you were able to make the conscious decision not to recite the pledge, that would be one thing. But you're weren't capable. That's why your parents made that decision for you. That you might think them wrong now for a decision made in the past is irrelevant, because no one else was available to make that decision for you.
"Oh dear we must take the word 'God' out of the pledge because there might be a parent somewhere telling their kids to recite it! Oh the horrors of it all!"
Now if we could just get people to stop expecting me to stand up for miscellaneous Broadway showtunes and Country&Western songs (God Bless America and God Bless the USA) I'd feel we were getting somewhere.
Hereby resolved in this here Senate of the United States, that forwith and in all haste, no one shall expect another to stand at the singing of any Broadway or Country & Western song that contains the word "God" in it, at any sporting event. Anyone who frowns or squints their eyes at those ingrates who remain seated shall be taken out behind the ballpark and flogged with last week's footlongs.
Not all of them
Those three or four founding fathers who were deists far outweigh in importance the dozens who where theists, especially when you quote them out of context. All hail the new revisionism!
The CNN article's emphasis on voluntariness... is grossly misleading, almost propagandistic... Most states have laws requiring the pledge to be recited every day as a class activity
More Slashdot FUD. Did any of you editors actually go to public school in the US?
Pledging allegiance was voluntary when I went, thirty years ago. Many students did not pledge. Some were Jehovah Witnesses. Others weren't US citizens. Still others simply chose not to. This wasn't in some "enlightened" urban school, but down in deep rural America.
The schools may be required in some states to have this activity. But it is not required for any of them to coerce any students into participating.
No state has a law prohibiting anyone from reciting the pledge voluntarily, whenever they want to.
And no state has a law requiring anyone from reciting it either. If you don't want to say, don't say it. Duh!
No, the postulation is that proprietary licenses are just as viral as the GPL. I've demonstrated that many, if not most, are not.
I did not argue here that the "infectiousness" of the license is good or bad. That's a different topic entirely. You have the right, and I will fully support you in it, to release you code under any legal license you wish.
I do release my own code under the BSD or MIT licenses. Why? Because I want it to be Free Software. For those of you in Rio Linda, That's Free as in "No Strings Attached".
...yet have no objection to propriatary [sic] licenses, which are equally viral.
.NET libraries do not place any viral strings on the code I write that utilizes them. I can write an MFC application and distribute it all day long under any license I like, without paying one cent in royalties to Microsoft. But a GPL library is another matter entirely. If I utilize a GPL library I have no choice as to my application's license. This is the major reason the LGPL was created. Heck, GNU's own GTK+ toolkit still argues that Qt is bad because it's under the GPL and the LGPL.
Some proprietary licenses are viral, but the vast majority are not, particularly those that are meant to be utilized by developers. Microsoft's MFC and
No code that is meant to be utilized by people outside of its respective project should ever be placed under the GPL. That's just plain rude. If embedded companies grab code from within the Linux kernel to use, then they should expect to "pay", just as if they had disassembled the NT kernel and did the same. But they shouldn't be taken to task for writing a 100% original driver from scratch. Kernel code isn't meant to be utilized, but kernel API's are.
The thing that bugs me the most about the GPL is not the license. As it's written, it's not bad. Heck, compared to the MS EULA, it seems heaven sent! I have some minor quibbles with it here and there, but overall it is more than satisfactory.
My big beef is the marketing of the GPL. It's free! Free as in speech! Free as in freedom! Free as in warm fuzzies that will make the world a nicer place to raise your children! Free Free Free Free Free!
But it's only free to use. It's not free to utilize. The "marketing" glosses over this fact. All of these embedded companies jumping into bed with Linux think that they're just using the software. They're really utilizing it instead, and all those GPL conditions apply. The GPL isn't Free as in "no strings attached". Far from it.
It's always puzzled me why Linux is making strong headway into embedded companies. It's one thing to use Linux to run a webpage, install on the secretary's system, or be a development workstation. But basing your products on Linux code is going to put yoru business at odds with GPL's attached strings.
Surely businesses know this, don't they? They've got lawyers reading the GPL, don't they? Their developers aren't blindly dropping in GPL code, are they? The big problem is that lawyers aren't developers and developers aren't lawyers. What's the distinction between writing a bash script and writing a kernel driver? To the developer, everything. To the lawyer, not much difference at all.
I think these embedded companies are getting in trouble because they don't realize that a 100% original driver created from completely from scratch in a blackbox environment could still be considered a derivative work. The strings attached to the GPL look simple, but they're very convoluted out in the real world. The fact that the law does not precisely define "derivative work" doesn't help matters. It's all too easy to get the FSF breathing down your neck for the most innocent of actions.
I work for an company that makes very large and very expensive embedded systems. I know how easy it is to "infect" the system with the GPL. It's one thing to grab bash and drop it in your system because you need a POSIX shell. But it's a completely different matter to grab a module from Linux and drop it in your system because you need a USB driver. Most lawyers don't know the difference between the two. Most developers don't care because they think the lawyers are making sure everything is hunky dory.
GPL code is not business friendly, despite the marketing. It may be friendly to the consumer, but it's frequently antagonistic to the producer. BSD or MIT licensed code is much better for embedded companies. But before you GPL advocates take exception to that last sentence, stop and think if you want your own GPL code closed up into a proprietary package by and embedded software company. If the answer is no, then stop marketing your code to them! To the businesses out there, if you don't want to open up every byte of code written by your developers, use BSD or MIT licensed code instead.
Was right click -> Rename not intuitive enough?
It works for me! It's the Windows way that I abhor. It's damned annoying if you don't double click at the right speed.
What's the right click for in KDE (and Windows)? To manipulate the object. Renaming is a form of manipulation, as it delete, copy, and editing properties. Windows has chosen to make rename the default manipulation, and to access it with the left (action) button. What if it had chosen something else? What if every time you double clicked too slowly it added the icon to your bookmarks?
I'm gaining weight, but I can always move into a larger apartment, so who cares?
So they don't know computer applications. They know finance, marketing, operations, negotiating, and a host of other things that mostly don't have anything to do with computers, but do have a lot to do with ongoing success.
I could care less that they don't know computers. What pisses me off is that they THINK they know computers. They're always specifying acronymic technologies completely irrelevent to the task at hand.
It used to be you had to start out in "the mail room" in business and work your way up. But now it's expected that newly graduated Harvard MBAs be moved immediately into executive positions.
I'm not talking about optimization. That's a given. It's what I explicity instructed the compiler to do since I used teh -O3 switch.
I'm talking about the compiler guessing what the programmer really meant. That's not its job. Its job is to do what the programmer told it to do. The original post bemoaned the fact that programmers are using patterns of abstractions instead of relying on the compiler to do it for them. Well maybe, just maybe, I want a pattern of abstraction that's different than what his proposed compiler would give me.
The flaw here lies in the obscure methods for installing software, what happens to that software once it is installed, and how the heck to run that installed software when it doesn't show up in a dock menu somewhere.
Is that why Windows users insist on keeping an icon for every piece of software installed right on their desktop? I think some of these people are switching to multi-head setups just so they can have more desktop room for all their icons.
The programmer is doing the compiler's job.
Thanks, I needed a good laugh today, it being a Monday and all.
The job of the compiler is to accurately translate the programmer's explicit instructions into machine code (or another language). No more, no less. It should rightly complain about syntactical and semantic problems, and if it's a polite compiler, should issue a warning for an obvious logical error. But it should NEVER presume to add to what the programmer has requested, or ignore anything he commands.
Oooooh! You dissed Java. Uuuugh! You mean person you! Rrrrrh it makes me so angry! I just want to slap you for that. Never ever ever ever say anything bad about Java. You nincompoop. Java is pristine, perfect, epiphanal. Java is my religion, my life, the air I breath. Nnnngrh. Only a toadnosed neanderthal would ever say anything bad about Java. Weaselhead, ratmouth, ignorant philistine stoat! Aaarghnnggrh...
[...loud messy explosion as one more javaboy messily ceases to be...]
if you're given an existing codebase and told to improve on it, that's exactly what you're expected to do - and it's all you're expected to do
I've done it. Several times. And gotten away with it. But I don't do it every time I see the opportunity to do so. I don't do it when it's late in the development cycle, because then QA won't have enough time to properly test it. Other times I have deadlines so tight I can't do anything but what's been requested. But when I can, I do, and I even let my boss know I'm doing it.
Mainstream consumers eat at McDonalds. I think that explains the Windows dominance more than anything.
Pardon me, got to run, I've got a couple of filet mignons on the grill...
The fact remains is that there remains no viable alternative.
The fact is that there are dozens of alternatives. They may not be viable for you, and they may not be viable for most people, but they are more than viable for the people that use them.
Windows is a completely different beast than Linux, BSD and Macintosh. To say that Linux is unviable because it doesn't provide exactly the same benefits as Windows is like saying motocycles are unviable vehicles because they aren't automobiles.
I'm using FreeBSD as my primary desktop (yes, desktop) instead of Windows simply because I have different priorities than the typical Windows user. That doesn't make them wrong and I right, or vice versa. It just means I have different preferences.
The so-called invisible hand of the economy is supposed to ruthlessly punish companies who produce crappy products that don't give customers what they need.
Wrong. Mr. Smith's invisible hand doesn't give a rip about crappy quality. It doesn't care what the customer needs. It only cares about what the customer wants. And if the customer wants something and it is available, no natural monopoly can stand in the way of the market.
I've seen plenty of people switch to Linux, try it for a week or two, then go back to Windows. They have explicitly chosen Windows. That's what they want. They want the familiarity, the driver/software availability, etc, etc. They want to use the same system their neighbors are using. Wants have different priorities, and crap-free is apparently low on most people's list.
As Linux and BSD provide more of the benefits that most people want, more and more people will switch over.