As a programmer I find this offensive, we work all day trying to make software good (enough).
As I see it the problem is with users, they think they should get programs, like firefox, for free.
Most programs you use on a daily basis are now larger than anything a single person can build in a lifetime, and it should be free ?
No business constraints and lack of money is what is keeping software down.
Nobody is paying anyone to 'reinvent the wheel' to be better.