294 karma · joined January 4, 2023
I guess the alternative is to get a portable high-output single burner butane stove that I can pull out when I want to arroser a steak, for example.
The function just indirects malloc with a wrapper so that all of the memory is traversable by the "bigbucket" structure. Memory is still leaked in the sense that any unfreed data will continue to consume heap memory and will still be inaccessible to the code unless the application does something with the "bigbucket" structure--which it can't safely do (see below).
There is no corresponding free() call, so data put into the "bigbucket" structure is never removed, even when the memory allocation is freed by the application. This, by definition, is a leak, which is ironic.
In an application that does a lot of allocations, the "bigbucket" structure could exhaust the heap even though there are zero memory leaks in the code. Consider the program:
int main(int argc, char** argv) {
for (long i = 0; i < 1000000; i++) {
void *foo = malloc(sizeof(char) * 1024);
free(foo);
}
return 0;
}
At the end of the million iterations, there will be zero allocated memory, but the "bigbucket" structure will have a million entries (8MB of wasted heap space on a 64-bit computer). And every pointer to allocated memory in the "bigbucket" structure is pointing to a memory address previously freed so now points to a completely undefined location--possibly in the middle of some memory block allocated later.There are already tools to identify memory leaks, such as LeakSanitiser https://clang.llvm.org/docs/LeakSanitizer.html. Use those instead.
Modern CPUs have more memory built in to L1, L2, and L3 caches than most computers had in total working memory until memory started getting cheap.
I agree with the author that has lead to some "sharp edges" for the API, but that is a normal growth pattern. I'm not saying that the API doesn't have to change, but I did want to make sure that people understand that the creators of the old APIs were not stupid, they just faced different constraints than we do now. And that led to API "shapes" that may be surprising and frustrating to use now, but made perfectly good sense at the time.
Now back to the thread:
It turns out that most people expect "random" to mean a random selection without duplication (at least until the source is exhausted). That is called a non-replacement randomization: once a song (or comic, or whatever), is played/displayed, that item is no longer considered as part of the pool for future selection. However, that requires saving state for the individual user to save which information has been presented to this specific user, which adds a whole lot of additional requirements for cookies, or account registration, or other things that we all generally loathe.
The fundamental problem here is that most people don't really understand randomness and probability. If they did, casinos and lotteries would be out of business (see The Gambler's Fallacy[1]). This is not a failure of education, or mental capabilities: it is a fundamental friction with the way that the human brain has evolved.
The human brain is fundamentally a pattern matching system. We look for "meaning" by identifying patterns in our world and extrapolating what actions we should take based on those patterns. As such, we assume that _all_ systems have memory because that's how humans learn and take action, so we generally assume everything else does, too. But truly random events have no memory: there are streaks that appear "non-random" to us, such as multiple tails occurring in a streak during a fair-coin flip. But streaks often occur in truly random data, we as humans just don't expect it.
The existence of the Feynman Point[2] is an example that even someone well versed in randomness and math thought that a string of six 9's appearing in the value of PI, an irrational number, was something worth noting.
[1]: https://www.investopedia.com/terms/g/gamblersfallacy.asp [2]: https://en.wikipedia.org/wiki/Six_nines_in_pi
Genomic data doesn't have the same risk factors--at least at the moment. I think that the point many are trying to make here is that there may be risk vectors available at some point in the future that aren't known now. A couple of theoretical examples:
* You had to give a blood sample rather than other biometric data like a retina scan.
* Spoofing DNA evidence. That would be very/prohibitively expensive/difficult at the moment, but I suppose could become as easy as 3d printing at some point in the future.
This isn't a case of a minor change to consumer rights in the TOS like changing who would arbitrate a case. It's a significant restrictive change to the rights of the customer in favor of the company. And it was made after a security breach that affected a huge portion of the companies clients which is likely to trigger lawsuits of the form that the TOS now seeks to restrict.
This is clearly a case of attempting to close the barn door after the horse was spotted in the next county over.
I suspect that a competent lawyer could fairly easily argue that this "automatic opt-in" is the same thing in a slightly different format.
The only other thing that they could say would be "We do not comment on matters involving pending litigation." But that's just a longer way of saying "No comment." It's not any more satisfying for the customers or partners understandably seeking answers to what happened, how, and why.
I would expect the court would evaluate any breach under the TOS that was in effect at the time of the breach, rather than under a new (and arguably suspect one) that was put in place after it, arguably in an attempt to "rewrite history".
Now he says if they don't advertise on X, they should be fired?
I'm confused. Though not as confused as Musk is, apparently.
It appears that the app will still have all the same bugs, problems, and usability issues. But the text, logo, and color scheme will be awesome.
For CMOs making major ad buys for carefully curated marquis brands like Apple, IBM, et al, I suspect that the only concrete number that they want to be assured of by their advertising platform is "0".
Media Matters set up a test account that showed that it was possible for X's algorithm to pair ads with objectionable content. Given that, how can X claim that "no company has its ads run next to anti semitic content in general" when Media Matters has shown that it is possible? Unless Media Matters "photoshopped" or otherwise manufactured the results--but that isn't what the filing claims. They claim that MM set up a few small accounts following only a few other accounts-fringe content and brand advertisers--and then scrolled through the feed until they found something bad.
The line in the filing that mentions that MM's tests used existing accounts to get by new member restrictions shows the fragile nature of X's arguments. Most real-life users are going to have existing accounts, so it's that experience you want to check, not the highly-constrained environment X puts new subscribers into because they don't trust them yet.
Customers like Apple, Comcast, NBCUniversal and IBM, are sophisticated ad buyers that wouldn't let a single story change their buying strategies without additional information/confirmation from X. If they made the choice to leave X, I'd bet that the Media Matters story was the last straw, not the first one. And it's quite possible that the Media Matters story was the result--rather that the cause--of those companies' decision to leave the platform in the first place.
While X is trying to spin this a Media Matters "did bad things" to convince Apple, IBM, Comcast, and NBCUniversal to stop advertising with X, it is far more likely that the highly volatile and bombastic behavior of X over the last year had far more to do with that result than Media Matters' article did.
Yes, it made money. Yes, he claimed it was legit, but it wasn't--it was money laundering illegal gains. It just sounds so much better when you call it "arbitrage".
This was all covered in the case.
To be fair, he was clearly quite smart. But...not as smart as he thought he was.
I'm not a doctor or a psychologist, so I'm not making a diagnosis, just offering the possibility that that may be what is at the root of the situation.
You have contributed to the growth of the company. Find out what they are selling shares for to new investors and sell back for that, or don't sell back at all. Those shares are part of your compensation for working there and taking the risk of a startup. Don't just give up on the value that you helped to create.
The loss of about a third of the downloads is still significant.
Is that the extent of the "custom" QUIC protocol?