Steve Johnson, over at Pragmatic Marketing has a good rant about a poor software experience in Another negative development rant. And while I love the rant, Jerry Aubin does a great job pointing us away from the developer in his post, Are There Lazy Programmers?
For my part, I think Jerry came close to hitting the nail on the head. While I agree that things are broken and UX should be better almost everywhere, putting the blame on the developer is pretty close to a cop-out.
(Generalizing…) I think most people perform to the level they are expected to perform; certainly not much beyond that effort. In the business world, this is largely set by the culture of the department or company. Obviously Garmin has a different set of expectations for user interactions than other companies (let’s say Apple or 37signals). One of those other companies would demand more from the developer, dev manager, product manager, and the business sponsor. In the other companies the result for the consumer would be different.
While part of the reason may be economic (we certainly hope the analysis went that deep, though I often doubt it), it may be a culture (of laziness) starting in one of the “likely failure points in the chain before the engineer gets involved”.