Upvote is earned, indeed, but I know for a fact that people tend not to go to an already-answered question. That means that your answer is typically seen by two people: The one that asked the question, and others that are having the issue.
I don't necessarily have a reason for the second person, but it's definitely common. I am definitely one of them as I completely forget to upvote a question that helps.
The one that asked the questions
This one is a simple answer, really. The guy that asked the question has the opportunity to upvote your question. Doesn't mean they will. Low chance that they will in the first place, because as you said, and as I am forming your statement into my own words, most people that ask questions have lower amount of reputation.
Why should such a highly controlled factor inside of ScriptingHelpers (unlike rep, seriously. you can give rep right off the bat!) be so important? Viable questions asked/answered aren't that common to come across anyway, if I'm allowed to represent my opinion. Something that's so scarce shouldn't play such a major role in something like this.
Edit: Now that I think about it.. what are you even talking about?
My point is not that "hey the OP accepted my answer now give me upvote and reputation." If I solve their question with a full response, how do I not earn an upvote? Plus, I'm saying that I should get an automatic upvote from the asker because I answered their question. Not rep from everyone in the SH community simply because I answered the OP's question.
Until now, I've never seen a system that utilizes upvotes for something "major" other than rep. Upvotes are supposed to be what helps you give rep. And it already plays into that role--it gives 5 rep to the person you upvote. Cool and good, but really? You need other people's opinion of you, their willingness to give you their upvotes, and their acknowledgement of the importance of upvotes in order to progress somewhere? That's absolutely bizarre! Why should a rank be given by the community, furthermore, a community that consists of people learning to script, but is slightly plagued by people who copy the code and go on with their fruitless day? Ranks should be determined by the system or the higher-ups, with little interaction from the users.
The little interaction from the users should be the "Mark as Answer" button.
The rank determined by the system should only be reputation-based.
But instead, we have:
The "little" interaction from the users are the "Mark as Answer" button and the "upvote" button, in which upvotes are actually more important than rep (since they are much more scarce), as they can hold you back from achieving the role you wish to get if you're even one upvote short.
The rank determined by the system is reputation and upvote-based, which the upvotes are based upon the user.
This sounds like I made two of the same arguments, but the in correlation/reference to my previous statements, I'm saying that the player should only have one form of interaction with the ranking system: clicking the Mark as Answer button.
Clicking the upvote button is something of which people rarely do due to their little reputation or neglect of the upvote button.
>init inevitable "people's opinion is very important in the real world so eat my shorts" quote