The problem is the normal response to their questions. Most companies, or even just people, will respond negatively to bug reports, especially if they aren't good reports. This has trained the users that they shouldn't bother asking.
Instead, they do what gets them results: They complain publicly. See, you can't ignore them if they're speaking publicly. Everyone else gets to see the problem and response, or lack thereof. In this situation, they either get a fix for the problem, or the developer loses future sales.
Here's an example from my life: I bought a mousepad on eBay for like $10. Ridiculously cheap, compared to what others were asking. When it arrived, it wasn't the right one. Now, I had 2 choices. I could contact the seller, and they'd probably tell me to ship it back at my expense, which would cost me more than the product was worth and waste my time, which was even more valuable.
Or I could just give them a low-star rating and explanation, and be done with it. I wasn't about to waste my valuable time, so I chose the bad rating.
The seller contacted me, upset. "Why didn't you contact us?" And I explained the above, and said that there was nothing they could do because I wasn't willing to spend the time and money to send the item back.
They ended up refunding my money and letting me keep the product. (Which probably sits in my closet somewhere, unused and unwanted.) I allowed them to nullify the rating.
tl;dr - So why do users take that route? It's quicker, easier, and works better.
It's also quicker, easier and more effective than navigating most companies' support tools. I don't want to spend half an hour or more registering, confirming and entering a bug report that will most likely be ignored.*
* A company taking reports seriously in a visible way is a rare occurrence in my experience.
It's the ignoring not the complexity that's frustrating. I'm suffering from an annoying bug in Google Groups. I've raised it a few times and it disappears into the void. Next time there's a bug, even if it's serious, will I bother? Probably not - my expectations are set.
-- (Edit)
Incidentally, for software issues this makes a public bug tracker something of a marketing tool. Even knowing my bug rather than lost without trace would be an improvement.
Google is especially bad in this regard. I'm a software developer, and I can probably write a pretty decent bug report. I'm also available to further look into the issue, and can use development tools. I help fix bugs if I find them in many products we use. But with Google, I just don't bother. There's often no way to even file a proper bug report, just some Google Group, and never any feedback.
In the Android Market, there's a "Contact Developer" button for every app. Click it and write an email. No "registering" or complex forms to fill out.
In my game, there's also a "feedback" button. I say early in the app description to please contact me if you have any problems. I answer any questions that come in, and am polite even to the insulting emails. Well, at least mostly polite. ;) And I typically answer them in hours, at most.
And yet I still get 1-star "complaint" posts that hurt my ratings, from people who have never contacted me. Frequently they just say that they hate the ads, which are only shown between levels, and therefore don't interfere with game-play. I guess I should work for free?
I don't think it helps to justify their behavior; if they make the least attempt and give up, that's one thing, but if they don't even try when dealing with an indie app developer who's obviously not some faceless company, that's just lazy (and in many cases selfish -- they can pay to turn off ads, after all, and the games don't write themselves). It's the EASY thing for them to do, and they're being jerks.
Or if, as you say, they've been hurt before, they're taking out hurt from Faceless Corporation on me, which is pretty much indistinguishable from being a jerk from my point of view.
I can understand how anything other than instant gratification from a mobile game would justify a bad review. This is bite-sized software. Most games only provide 30-60 minutes of entertainment anyway. If it takes that long just to get it running, you've pretty much blown it.
I'm a mobile game dev and I don't like it either, but I understand why it's right for users. We've gotta give them a seamless experience, like a restaurant. Yeah, if there's a fly in your soup you can no doubt send it back and get another one, but the damage is done.
I'm a professional game developer who's jumped into indie/mobile. The problems people with my game are having are not (in general) things not working -- there are tutorials, and it's in the Angry Birds genre, so people know how to play it pretty quickly. I just got picked up by a major publisher (hint: they've had the #1 revenue app on iOS for a large percentage of the last two months...), so I'm not the only one who thinks my game is fit to run in the big leagues.
One problem is occasionally buggy devices or firmware. I have one crash where a WebView is dying trying to display an ad, and while the ad is possibly conflicting with the WebView, I'm not sure how to FIX that, since the ad being provided isn't under my control (aside from choosing another ad provider).
And don't get me started on Samsung and the SoundPool class. It will just lock up your Samsung device to USE a SoundPool on it in a game. But only intermittently. Sigh.
When the problem is they don't like ads -- well, it's a free game, and there aren't words I'm willing to use on HN that are sufficient to describe what I think of those...individuals.
If you didn't bother to ask for help, how do you know they wouldn't have helped?
I bought a book from No Starch Press, and I hated it. (Possibly due to my own fault.) I wrote to them to complain, and they refunded my money and told me to throw away the book.
Past experience tells you what percentage of businesses will help, and what percentage will waste your time and money.
That has almost always tilted into the 'better off not trying' category. I end up with more of my time, and happier, if I don't go through the official channels. On average.
That's what companies have trained customers into.
Instead, they do what gets them results: They complain publicly. See, you can't ignore them if they're speaking publicly. Everyone else gets to see the problem and response, or lack thereof. In this situation, they either get a fix for the problem, or the developer loses future sales.
Here's an example from my life: I bought a mousepad on eBay for like $10. Ridiculously cheap, compared to what others were asking. When it arrived, it wasn't the right one. Now, I had 2 choices. I could contact the seller, and they'd probably tell me to ship it back at my expense, which would cost me more than the product was worth and waste my time, which was even more valuable.
Or I could just give them a low-star rating and explanation, and be done with it. I wasn't about to waste my valuable time, so I chose the bad rating.
The seller contacted me, upset. "Why didn't you contact us?" And I explained the above, and said that there was nothing they could do because I wasn't willing to spend the time and money to send the item back.
They ended up refunding my money and letting me keep the product. (Which probably sits in my closet somewhere, unused and unwanted.) I allowed them to nullify the rating.
tl;dr - So why do users take that route? It's quicker, easier, and works better.