If you're giving away software at no cost then you are taking advantage of the marginal cost of software being close to zero.
You could charge, but then you might fail in the market due to competitors not charging. You can attempt to build a market for your time, by giving away the software.
Giving away software can definitely build a market for your time - but in the end you're selling your time, which you have a limited amount of, instead of a software product which might scale indefinitely (see "Angry Birds", for example).
Successful software sales are a function of your support costs (assuming you've jumped the first hurdle which is writing a product people want to buy).
x% of your customers will take up y hours of your time. The software (and support materials) must be designed so that x and y are reducing in size as time goes by.
Free software with paid support is more like consultancy. To scale means more staff.
Paying for support is also more complicated - there must necessarily be a two-way conversation about work done, hours taken, etc. Collecting money for software is a one-way conversaton - here's the price, take it or leave it.
I wouldn't put it in good/bad terms, I did this for years. If you are the type who enjoys building things, ultimately it gets very boring. If your business is successful (mine was) and you need to hire people, it's hard to convince the very best people to join a consulting business with little upside. The question is not whether it's good or bad, but whether it works for who you are.
It depends on your definition of "bad" and your situation - if you are selling licensed software, then selling licenses "scales" (there's little added cost for creating another license), while support has a harder time scaling since it is time based. If your business is built on selling licenses, then yes - it is "bad".
If you are releasing free software then it doesn't matter since your not offering support any way, so it's not bad.
The flip side of that is that Open Source scales up for developer hours and creativity, limited only by the size of the program's audience. As the audience grows, so also the programming resources and ideas for improvements.
Closed source development does not scale - it is limited to the available work hours and imagination of the owners.
I didn't really think of this in terms of good or bad. I guess, like most things, it can both.
I had a lot of fun doing support & sales work with clients as sales engineer for an open source software company. Access to free software is, obviously, great for me as a user.
On the other hand, it seems harder for very small companies to make a living on support (the kind you can really charge for, SLAs with big corps etc) than to sell an iPhone app, for example.
Also, if you're making your money on support, there's a possibility you might be less motivated to make your product very easy to use (not that paid software is always great in that respect, of course).