I disagree with you. Making good free software improved GNU/Linux position (GCC, Linux kernel, Apache httpd, python and may other successful projects) instead just providing what vendor is shipping binary (drivers for graphic cards, Sun-Java...) All good free software projects would not exist if we ignore them and use proprietary software instead, and community could not have impact on features that are important.
And you can never ignore the possibility of the proprietary software vendor deciding to make your life hard. With free software it's you, not them, who are in control.