"Why are you denying yourself the excellent performance of Jennifer Hale?"
Mass Effect has two leads, Mark Meer and Jennifer Hale, but you'll only hear one of them as Commander Shepard per playthrough. According to player stats, most people play as a guy, meaning Mark Meer is their Shepard throughout the trilogy.
However, Meer encourages players to give FemShep a go - purely so they can enjoy the performance of his co-star, Hale. Speaking with PC Gamer, Meer says that he's a huge fan of her work, and doesn't have any problem with players choosing to only play as FemShep because of her performance.
I have, conservatively, two dozen playthroughs under my belt at this point, including the original trilogy and remastered versions. If I had to guess, I'd say im about an 85/15 split FemShep over MaleShep. Apparently I'm in the minority, but I much prefer Hale's performance.
I'm curious as to the paragon vs renegade percentages for each character type. As in, do more people play FemShep as paragon or renegade? Same for MaleShep.
I usually play as FemShep, but when I do play BroShep, he’s usually a Paragon, because dude just sounds like a Goodie Two Shoes Boy Scout. Plus Renegade BroShep gave off serious roid rage vibes to me in a way Renegade FemShep didn’t.
I've heard the weirdest excuses for why not though, worst ones were "why would I want to play as a woman, I'm a man". Now, on your first playthrough absolutely but after that?
Not a bad reason to want to play as yourself at all, but after the first playthrough or so then it's time to start experimenting. One of the great things about RPGs is that you can be someone else entirely, and I think it opens us up to other ways of thinking. Playing as female shepard is at times a completely different experience, and you just want to explore it. It's the guys who are afraid of playing as a woman, who think it's not masculine or something weird like that. That's not okay, drop the masculinity, be the awesome femshep bitch you were born to be. Plus to them, I like to say, "Why would I want to stare at a guy's ass for 100+ hours?" Usually fucks with their masculinity a bit
Long and short, floating point math is imprecise, and when dealing with currency you must be 100% precise. One of those rules of programming: Never store (or let currency flow through) a float. That includes doubles too.
In javascript, the number type is imprecise, it is contained by a float under the hood, meaning precision can be lost. So even just parsing JSON to a number, even if you mean to move it into something like BigNumber, the precision is already not guaranteed when it finally gets to BigNumber. The safest thing to do is pass the numeric values as strings, which are guaranteed of course to represent their exact precision and value, and then use a proper precise parser to the value, like BigNumber.parse(strValue). (Even then, there's an argument that it's very rare that you ever need an amount outside of a string in a UI. Most calculations should be handled by a server that's the single source of truth in calculations, think sales tax and shipping, so a string is just a value that is presented to a user).
In C#, float and double are imprecise and not guaranteed, especially with arithmetic. Decimal is the best way to store an exact value.
In databases, it's usually best practice to store the string value of the amount for exact precise recordkeeping, with a decimal field next to it labeled something like AmountImprecise that you can use for aggregating, sorting, grouping, whatever.
Every language will have it's quirks, but essentially, take this from me, a senior fintech engineer. If you see currency amounts, think precision, and know you'll need to take extra extra care about how it's stored. You don't want to accidentally office space yourself, especially when auditors come around.