The more I spend time as a software developer, the more strongly I believe that UX is 80% of what makes a tool good, and that a lot of programmers really just don’t get that.
Programmers making things for other programmers will always be forgiven as long as it works. Programmers making things for the general population will not be forgiven to the same extent if at all. As soon as someone releases something that is polished, it will be used even if it doesn't work as well.
And as we all know, this is why the iPhone has been so successful despite bringing Android-like features years after they were launched.