We're over thinking the problem, and the cup of coffee analogy is a perfect hit, it is a pricing issue. We as developers don't know how to price our products. Just search HN and see how many posts are talking about pricing experiments.
To the post. It mainly blames three areas: customer experience, free/paid issue, and craftsmanship. Which in business talk translate to product, pricing, and promotion.
We first tried to fix this mess by cutting down the price of our products. Things didn't work, sales still going down. And what did we do? Rinse and repeat. We kept doing that until we reached the bottom price, which now seems to be free. Newsflash, the problem stills there.
Worse, to stay in business the only option we had was to keep cutting down on other areas. The candidate picked for the next round of random debugging was the product itself. Quality development costs money, so product quality had to suffer. As a result we've got this endless sea of crapware we see in the AppStore and elsewhere.
That has led to another round of random shooting at business bugs. The next victim is promotion, or in other words, software craftsmanship, which is an attempt to fix the image problem caused by the race to the bottom. It won't work! People don't care about all the sweat and tears that we put into our work, they just want to save money. And thanks to us, they're all doing that.
In the end the problem remains, and we still have to go the the source in order to make the right decisions to fix this mess. The shareware business model sure would be an easy fix, but it won't happen. Another solution, if you aren't in SAAS or IAP, is to raise your prices and pull out the free products. Some developers have done it and they have gotten good results.
Finally, people spend four bucks on a cup of Starbucks coffee because they need the kick to wakeup and go about their life. If you figure an app to do that, please don't sell it for one buck! It worths more.