> Is this a by-product of some compliance or self-regulatory requirement like ESRB?
Yes, Steam addressed this an announcement a few years ago:
> Q: Why do you KEEP asking my damn age throughout the store?
> A: We're with you on this. Unfortunately, many rating agencies have rules that stipulate that we cannot save your age for longer than a single browsing session. It's frustrating, but know we're filling out those age gates too.
I can understand the “better safe than sorry” mindset. If I have a 15 year old son who wants to play Resident Evil, I’d be willing to let him play it, despite the “M” rating. But I wouldn’t then want a service to set it so that he’s allowed to view M-rated games in perpetuity, since M-rated games can vary greatly.
Duration of a month in seconds? Before you balk at the idea, there exists a definition of a constant month duration for accounting stuff. I you hate dates - and yourself - try accounting, there's mind boggling stuff that makes the engineer mind recoil in absolute terror.
Actually taken almost verbatim from the report summarizing a real and subtle bug (distributed across multiple files) in code written by definitely-not-novices.
Alas, no. It's because ActiveSupport's duration arithmetic is not distributive under conversion.
The expression on the left hand side advances time (as a domain object) by exactly a month, then converts the result to integer unix time. The expression on the right adds 2629746¹ to the current unix time.
The conversion becomes dangerously magical in the presence of shared code that accepts both object and integer representations of time & duration. A consumer from one part of a system can inadvertently obtain different results to another unless they use identical calling conventions.
[1] this is 1/12 of the mean length of a gregorian year²
Oh wow. This is totally make sense when you think about it, but something that'll never cross my mind when casually checking the code. I guess this is why python's timedelta doesn't have month unit as the length of a month is highly context dependent.
I’m definitely not an expert and I haven’t found running postgres any more difficult than mysql. There are some differences that take a bit of getting used to, though.
I have first hand experience this ,as I was recently diagnosed with reactive hypoglycaemia[1]. The recommended treatment was eating protein and vegetables before carbohydrates, along with daily 12 hour fasting, and within week my symptoms were gone. It's apparently an intestinal issue, where it over-reacts to the presence of carbs when the stomach is empty, and is fairly common in people who have had bariatric surgery.
Yes, Steam addressed this an announcement a few years ago:
> Q: Why do you KEEP asking my damn age throughout the store?
> A: We're with you on this. Unfortunately, many rating agencies have rules that stipulate that we cannot save your age for longer than a single browsing session. It's frustrating, but know we're filling out those age gates too.
https://steamcommunity.com/games/593110/announcements/detail...