Saizaku

joined 1 year ago
[–] [email protected] 26 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.

[–] [email protected] 6 points 4 weeks 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.

[–] [email protected] 5 points 4 weeks 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.

[–] [email protected] 5 points 4 weeks ago (3 children)

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

[–] [email protected] 2 points 1 month ago

Didn't even open the link probably

[–] [email protected] 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.

[–] [email protected] 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.

[–] [email protected] 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).

[–] [email protected] 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.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago) (1 children)

Not riverboat businesses, rather we have plenty of restaurants and clubs on rafts on the Danube river in belgrade.

But that's the least of our worries rn, we had elections last week and the current president and government organized massive theft of the elections. There have been massive protests for a week since. They drove people from Bosnia to vote in our elections, hell the Bosnian minister of security voted in the Belgrade mayoral elections and proudly posted about it on twitter. Apparently he's a resdient of Belgrade lol. Last night they sent a thousand cops at us to beat us up and break up the protest. Today student orgs are blocking infrastructure in Belgrade, and from 6pm we're going to the parliament building again to block it off.

Our president claimed that there were barely a thousand people gathered when he spoke through state media:

For the uninitiated our current president is Aleksandar Vucic, also known as Milosevic's minister of propaganda.

[–] [email protected] 3 points 11 months ago

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

[–] [email protected] 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

view more: next ›