The real reason people buy non refundable tickets is that they are simply less expensive that refundable tickets. Usually, not always, they are much less. Even with the change fee assessed the purchaser still us usually money ahead.
I guess I do not understand why people buy non refundable tickets and then grumble when the airline charges a change fee. If you want the flexability to make a change for free then book a changeable / refundable ticket and pay the premium. I understand things change, especially when you book months ahead, but that is a chance you take. It is your responsibility to understand the terms of the ticket and any fees or penalites that apply to it.
In some cases you can actually get upgraded to FC if you buy a full fare coach ticket that is upgradable, but will also be much more expensive that the cheapest non refundable one.