Saizaku

joined 1 year ago
[–] Saizaku@lemmy.dbzer0.com 27 points 3 weeks ago* (last edited 3 weeks ago)

Complete nothingburger of a study, which itself is locked behind a $25 paywall to access it. And the author of the article obviously didn't cause there's 0 mention in the article itself about the methodology used to determine the 20% revenue lost (nice round number might I add). The only thing that even alludes to the methodology used in the abstract is

When Denuvo is cracked very early on, piracy leads to an estimated 20 percent fall in total revenue on average relative to an uncracked counterfactual

Which really doesn't tell us much, how are these counterfactuals selected in the first place? What is the cirteria? How are you determining that the differences between revenue of a game that was cracked and that went uncracked are due to one game being cracked? How can anyone even confidently claim that they've normalazied the data set enoguh that these differences in revenue are mainly caused by a game being cracked, especially with how rare early denuvo cracks have been in the past few years. Statistically this sounds dubious at best, especially when we have fully open studies (like the one funded by the EU a few years back) that have found no statistical proof that piracy has any impact on revenue ( with the exception of box office revenue of big new movies being leaked and pirated while still in theaters). Surely they wouldn't have missed a 20% meadian difference in revenue.

Lastly you have major tech news outlets all reporting on a study less than a month after it was made available online. For context the journal containing this study will only be published in jan of 2025.

[–] Saizaku@lemmy.dbzer0.com 6 points 1 month ago

Because you would be using std::shared_ptr<> rather than a raw pointer, which will automatically deallocate the memory when a shared point leaves the scope in the last place that it's used in. Along with std::atmoic<shared_ptr> implements static functions that can let you acquire locks and behave like having a mutex.

Now this isn't enforced at the compiler level, mostly due to backwards compatibility reasons, but if you're writing modern c++ properly you wouldn't run into memory safety issues. If you consider that stretching the definition then I guess I am.

Granted rust does a much better job of enforcing these things as it's unburdened by decades of history and backwards compatibility.

[–] Saizaku@lemmy.dbzer0.com 5 points 1 month ago (2 children)

There's a reason why data races aren't considered a memory safety issue, because we have a concept that deals with concurrency issues - thread safety.

Also for all it's faults, thread and memory safety in java aren't issues. In fact java's concurrent data structures are unmatched in any other programming language. You can use the regular data structures in java and run into issues with concurrency but you can also use unsafe in rust so it's a bit of a moot point.

[–] Saizaku@lemmy.dbzer0.com 5 points 1 month ago (3 children)

Arguably modern c++ ( aka if you don't use raw pointers), fits all categories.

[–] Saizaku@lemmy.dbzer0.com 2 points 1 month ago

Didn't even open the link probably

[–] Saizaku@lemmy.dbzer0.com 2 points 3 months ago

That's a fair point, I guess I used binary numbers so much i uni that I just know the small ones by heart and that's why I find it easier. Following the example, I never convert 101 as 4+0+1, I just see it and know it's 5.

[–] Saizaku@lemmy.dbzer0.com 5 points 3 months ago* (last edited 3 months ago) (2 children)

Read, write, and execute are represented by the numbers 4, 2, and 1, respectively, and you add them together to get the permission

Maybe I'm the weird one here but this seems like a counter intuitive way to remeber/explain it. Each octal digit in the three digit number is actually just 3 binary digits ( 3 bit flags) in order of rwx. For example read and execute would be 101 -> 5.

[–] Saizaku@lemmy.dbzer0.com 1 points 4 months ago

At the (SQL) database level, if you are using null in any sane way, it means "this value exists but is unknown".

Null at the SQL means that the value isn't there, idk where you're getting that from. SQL doesn't have anything like JS's undefined, there's no other way to represent a missing value in sql other than null (you could technically decide on certain values for certain types, like an empty string, but that's not something SQL defines).

[–] Saizaku@lemmy.dbzer0.com 2 points 5 months ago (1 children)

They're probably being downvoted for making a huge leap just from wearing pointy highheels lol. They turned a trivial reason into a non-trivial characterization/flaw about a person.

[–] Saizaku@lemmy.dbzer0.com 2 points 11 months ago

I'm on ddg and get no such issues with the same query:

[–] Saizaku@lemmy.dbzer0.com 11 points 11 months ago (3 children)

I mean if you had bothered to open the article, it's in the 2nd paragraph:

The most comprehensive study of global climate inequality ever undertaken shows that this elite group, made up of 77 million people including billionaires, millionaires and those paid more than US$140,000 (£112,500) a year

[–] Saizaku@lemmy.dbzer0.com 2 points 11 months ago

Guilty Crown, as an anime it's nothing special, the openings by supercell and egoist are amazing. Not to mention the OST, which was composed by Hiroyuki Sawano, was absolutely amazing.

view more: next ›