I assume that unlike the inhabitants of your ideal world and myself, you are a professional programmer. Why would I run LLVM or GCC instead of Visual Studio Express Edition or program in C rather than utilize a .NET language given that neither really supports Windows in the first place?
For me, free OS's aren't an option. They don't offer the tools I use to practice my profession. To the degree I program, I have access to really good free programming tools on the Microsoft stack and better integration with my existing tools. And to the degree which I desire to learn those programming tools, being partial to physical books I enjoy the benefits of Microsoft press which simply don't exist in the copyleft world.
Again, that's not to say that copyleft doesn't have benefits, but even the best tools are full of dependencies such as the requirement to install Perl to install the Eclipse editor...again something I don't want to have to explain to my father.
The volume of books on open source tools is more a function of the number of such tools. For any given tool or language, there may be very few books in print.
What does the volume of books have to do with anything? You seemed to indicate that you didn't think books were available for open source tools, but they do exist. What exactly are you looking for that isn't available?
One of "the benefits of Microsoft Press" and MSDN is the scale at which the documentation ecosystem operates. It's not a matter of finding a book, but rather of finding the right book.
I'm just trying to think of an open source tool where a comprehensive book (online or off) or some sort of documentation isn't available. Can you give an example of what kind of book you were looking for?
A part of programmers's job is to chose most appropriate tools to get the job done. It equally applies to hobbyists and professional programmers. However, licensing terms does not cause quality of tools and their documentation, it could only correlate to some extent.
The barrier you're talking about is research/learning cost. When you - for example - already have some knowledge of MS stack, unknown lands of GNU or Apple would even feel alien, so cost of using it would be higher. The opposite would be equally true. Just imagine an iPhone developer being offered to use MS stack, instead of Apple's one he's already used to.
If you simply enjoy having a large organization fix a lot of your design choices ahead of time, that's perfectly fine. You've got a lot of company. But don't pretend that everyone else lives in an ideal world because they are willing to take on more of the developer and design responsibilities than you are comfortable with.
I assume that unlike the inhabitants of your ideal world and myself, you are a professional programmer. Why would I run LLVM or GCC instead of Visual Studio Express Edition or program in C rather than utilize a .NET language given that neither really supports Windows in the first place?
For me, free OS's aren't an option. They don't offer the tools I use to practice my profession. To the degree I program, I have access to really good free programming tools on the Microsoft stack and better integration with my existing tools. And to the degree which I desire to learn those programming tools, being partial to physical books I enjoy the benefits of Microsoft press which simply don't exist in the copyleft world.
Again, that's not to say that copyleft doesn't have benefits, but even the best tools are full of dependencies such as the requirement to install Perl to install the Eclipse editor...again something I don't want to have to explain to my father.