HNHacker News
TopNewBestAskShowJobs

MatteoFrigo

672 karma · joined July 4, 2021

submissionscomments
MatteoFrigo··on Biden to mandate coronavirus vaccine for federal workers
> this means 34% of vaccinated people develop a covid infection

That's not what "effective" means. It means that if your probability of getting infected without the vaccine is p, your probability of getting infected with the vaccine is .34*p. One way to think about it is that the "ineffectiveness" is the relative risk P[infected|vaccinated]/P[infected|unvaccinated], and effectiveness is 1-ineffectiveness.

A vaccine can be 100% effective even if P[infected] is negligible.

P[infected] is per unit time and does not account for the dynamics of the situation. For example, if the vaccine is not powerful enough to make R<1, then everybody becomes infected eventually regardless of the vaccine.

MatteoFrigo··on Israel’s Covid-19 boosters are preventing infections, new studies suggest
Does the link https://www.cdc.gov/mmwr/volumes/70/wr/pdfs/mm7027e2-H.pdf on the same page 11 answer your concerns? That paper (from June) explains in some details what the CDC did, and I would assume that the slides are just an update of the numbers on the paper to a later date. At least the author of the slides was an author of the paper, so I would infer that they kept doing whatever they were doing in June.

One thing that the paper is pretty clear about is that in order to proclaim a "case", the CDC reviewed medical records and interviewed the healthcare provider looking for specific criteria. It seems like all criteria include at least one test, e.g. EKG, in addition to symptoms reported by the patient. It's not like they ran a SQL query over a bunch of dudes reporting chest pain---the CDC did their homework. If anything, I have more confidence in the CDC and the vaccines now than I had before reading these documents.

MatteoFrigo··on Israel’s Covid-19 boosters are preventing infections, new studies suggest
Slide 11 appears to say that a large number of cases were hospitalized. If this interpretation is correct, we are talking about a diagnosis from a doctor, not self-reported data.
MatteoFrigo··on Rogue antibodies involved in almost one-fifth of Covid deaths
A result is scientific not when experiments confirm it, but only when repeated attempts at disproving it all fail. Without the skeptics, the crackpots, the deniers, there is no science.

When vaccines are concerned, the skeptics have been censored and ostracized (generally speaking, not on HN). Therefore, whatever results are claimed to be science are not such, or at least not yet. Relying on anecdotes is the only recourse that we have to restore some semblance of scientific process.

MatteoFrigo··on Caches, Modes, and Unstable Systems
I am looking forward to learning about the LIFO repair when you guys decide to talk about it.

However, the fact that Raft is goofy and conflates safety, liveness, and dynamics, doesn't mean that the metastability problem has not been solved in a more traditional FIFO setup.

The basic issue is that things like Raft (but most other descriptions in the literature as well) describe replication in terms of RPC: request arrives at the leader, the leader sends three RPCs to followers, waits for two acks, etc. If you actually implement things this way (and many people do) then you end up with the problem that you describe.

However, you can organize the system in a different way. A request arrives to the leader and is appended to the leader's proposer log. A separate asynchronous protocol reconciles the proposer log with the follower acceptor logs. This protocol looks like TCP, with some caveats to account for log divergence, so it is pretty well-understood technology. By dimensioning log sizes and timeouts correctly, you can deamortize the whole catchup procedure and bound the latency of every operation as seen from the client (assuming that a quorum of acceptors is available).

MatteoFrigo··on Caches, Modes, and Unstable Systems
The way I look at it, the article has two main messages.

The first message is that real systems comprise "core" components that are expected to work in all cases (e.g., databases, or CPU arithmetic units and DRAM memory) and "uncore" components that are just performance optimizations (caches, prefetchers, load estimators, whatever) and are expected to be not effective in certain cases. The point is that, while "uncore" components may well provide 100x performance improvement, the designer must make sure that the dynamics of the system are stable even if these components fail completely. A related point is that you cannot infer the dynamics of the core by looking at production metrics alone: you must either have a deep analysis of the system, or a provably robust algorithm that works in all cases, or test cases that explicitly disable caches or whatever other uncore is relevant.

The second message is that real systems have metastable states, which surprises people. "Metastable" means that the system runs fine for a while, then something bad happens, the system goes into a bad state, and stays in the bad state after the bad stimulus is removed. Historically one of the first examples is the infamous Internet congestion collapse of 1986, which prompted the implementation of TCP congestion control. The feedback loop in that case had nothing to do with caches. What happened is that routers drop packets when the rate is too high. Packet drop caused TCP to retransmit, causing more packet drop. This feedback loop is self-sustaining and persists even if you remove the initial overload that caused the initial packet drop. See https://ee.lbl.gov/papers/congavoid.pdf for ways to avoid this problem, which are more broadly applicable than just TCP.

Specifically w.r.t. congestion collapse, my experience is that many smart engineers have never heard of it, and I stopped counting how many outages have been caused by congestion-related problems. So there is something to be learned here.

MatteoFrigo··on Canada, April: Under-65 excess mortality exceeds under-65 Covid-19 deaths
I disagree. The paper goes into some details explaining how many deaths are due to alcohol abuse vs. poisoning etc. They also have a list of conditions that they associate with the various causes of death. For example, if somebody dies of alcoholic gastritis, they classify the death as alcohol-related.

Now, like all estimates, I am sure there are errors, but it's not like they haven't done their homework.

There isn't enough data in the paper to blame the lockdown per se, however. E.g., it could be that the media fear-mongering is driving people crazy more than usual. There is no way to tell.

MatteoFrigo··on Israeli Study: Natural Immunity Is 13x Stronger Than Pfizer Covid Shots
That's (probably) correct for the population as a whole, but the case is much less clear as far as kids are concerned.

For example, look at the 0-14 graph of excess deaths at https://euromomo.eu/graphs-and-maps. It would be very hard to say that 2020 and 2021 are any different from any other year as far as kids are concerned. During that time we had all sorts of lockdown on, lockdown off, masks on, masks off, vaccines, school open, school close, but the graph stays within its normal pre-covid variance irrespective of all these interventions.

MatteoFrigo··on Israeli Study: Natural Immunity Is 13x Stronger Than Pfizer Covid Shots
You cannot conclude anything about the 16x difference (TFA says 13x, by the way) from the number of dead patients.

As a made up example to illustrate this point, assume that people are either "lucky" or "unlucky". Unlucky people die when they get the virus. Lucky people never die. Assume that one person per million is unlucky, and assume that the vaccine does absolutely nothing. Then this experiment on one million people would find one death in the vaccinated and zero deaths in the control group, inferring that natural immunity is infinitely better.

MatteoFrigo··on Latency Sneaks Up on You
Even worse, the effects that you mention (garbage collection, etc.) are morally equivalent to an increase in utilization, which pushes you towards the latency singularity that the article is talking about.

As an oversimplified example, suppose that your system is 10% utilized and that $BAD_THING (gc, or whatever) happens that effectively slows down the system by a factor of 10 at least temporarily. Your latency does not go up by 10x---it grows unbounded because now your effective utilization is 100%.

MatteoFrigo··on Latency Sneaks Up on You
You characterization of Marc Brooker as a "confident beginner" is incorrect. The guy is a senior principal engineer at AWS, was the leader of EBS when I interacted with him, and has built more systems than I care to mention. The phenomenon he is describing is totally real. Of course the article is a simplification that attempts to isolate the essence of a terrifyingly complex problem.
MatteoFrigo··on Latency Sneaks Up on You
Great article, and a line of reasoning that ought to be more widely known. There is a similar tradeoff between latency and utilization in hash tables, for essentially the same reason.

The phenomenon described by the author can lead to interesting social dynamics over time. The initial designer of a system understands the latency/utilization tradeoff and dimensions the system to be underutilized so as to meet latency goals. Then the system is launched and successful, so people start questioning the low utilization, and apply pressure to increase utilization in order to reduce costs. Invariably latency goes up, customers complain. Customers escalate, and projects are started to reduce latency. People screw around at the margin changing number of threads etc, but the fundamental tradeoff cannot be avoided. Nobody is happy in the end. (Been through this cycle a few times already.)

MatteoFrigo··on Delta Air Lines doesn’t want to call delta variant the ‘delta variant’
Xi is the 14-th letter of the Greek alphabet.
MatteoFrigo··on Visualizing observed deaths using polar coordinates
https://www.cdc.gov/nchs/nvss/vsrr/covid_weekly/index.htm has the age-stratified data for the US you are looking for. I think they adjust for population growth, but I am not sure.

https://euromomo.eu/graphs-and-maps/ has similar data for most of Europe and Israel, and they adjust for population growth and a seasonal component (looks like a sine wave of period 1 year).

MatteoFrigo··on Workers don’t want their old jobs on the old terms
Oh, I am not denying at all that Covid has a more severe impact on older people.

I am just saying that, looking at the data, maybe 0.1% of the 55+ workers died of Covid, and so Covid by itself does not explain the 5% drop in the FRED graph. Maybe part of the disconnect is that Covid disproportionately affects people too old to be in the workforce?

MatteoFrigo··on Workers don’t want their old jobs on the old terms
I could not find a precise definition of what the graph shows, but that's a graph of participation rate and not absolute numbers. I.e., of all the people who are alive at a certain time, what percentage are neither employed nor unemployed (where "unemployed" implies "looking for a job"). To confuse things even more, the whole percentage is normalized to Mar 2020=100.

Your estimate of the mortality in that cohort is likely off by an order of magnitude or more. I can't find an exact figure, so here is a back of the envelope estimate. https://euromomo.eu/graphs-and-maps/ tells me that about 30,000 more people of age 45-64 died in 2020 in excess of a typical year. For the purpose of estimation, I assume as a worst case that they all were 55+ and that the number of 65+ people working is not too large. How many 55-64 people exist in Europe? The euromomo graph refers to a region of about 400M people. For the purpose of this estimation, assume that people live 100 years and that age distribution is uniform, so maybe 40M are in that age range. Thus, the extra mortality in 2020 would be less than 0.1%. You can criticize this analysis in many ways, but it's hard to believe that I am off by more than a factor of 5 in either direction. Thus, I don't see how "dead by covid" can possibly justify a 5% decrease in participation rate.

MatteoFrigo··on Workers don’t want their old jobs on the old terms
The author links to FRED data that measure a 5% drop in workforce participation in the 55+ cohort. This is at least some evidence that older workers are taking it easy so far. (See https://fred.stlouisfed.org/ if you have not heard of FRED before.)
MatteoFrigo··on Workers don’t want their old jobs on the old terms
The path of least resistance is to expand the labor pool by opening or growing a new office in another region or country.
MatteoFrigo··on The Coronavirus Is Here Forever
Your case would be stronger if you linked an article that argues that chickenpox was the culprit. The article you quote suggests that the disease was leptospirosis.
MatteoFrigo··on The Sweden experiment: how no lockdowns led to mental health, healthier economy
One good source of excess mortality data for a large part of Europe (plus Israel for some reason) is at https://euromomo.eu/graphs-and-maps/, which also groups data by age in addition to country.

It may come as a surprise that, in the area covered by this source, excess mortality for children age 0-14 was actually negative in 2020.

MatteoFrigo··on The mutation that helps Delta spread
This comparison between two datapoints is not too useful. The graphs at https://euromomo.eu/graphs-and-maps/ provide a more nuanced picture, with the caveat that those are graphs of excess mortality and not necessarily covid-specific.
MatteoFrigo··on The mutation that helps Delta spread
You probably mean "virulence", not "virility". The latter word denotes the masculine ability to procreate.

The confusion arises because the Latin word "vir" means "man" (specifically of male sex, as opposed to human), and the similar word "virus" means poison.

MatteoFrigo··on Young adult (20-49) mortality in Israel during time of Covid-19 crisis
The graphs at https://euromomo.eu/graphs-and-maps should give you some idea of the typical behavior of excess mortality in many countries in Europe and adjacent regions (including Israel), by age group, by week. At least from a cursory look, there doesn't seem to be anything nefarious going on in Israel.
MatteoFrigo··on Firefox Lost Almost 50M Users: Here’s Why It Is Concerning
Not OP, but here is some context: https://blog.mozilla.org/en/mozilla/we-need-more-than-deplat...
MatteoFrigo··on Google Offices to Mandate Vaccines
I don't know about GP's country, but http://euromomo.eu/ has a lot of data whereby one can answer such questions for multiple countries in Europe.
MatteoFrigo··on US set for punishing temperatures as ‘heat dome’ to settle over country
That's not at all what "basic physics" says.

For example, in a gas at a given temperature, some molecules are more energetic and some molecules are less energetic. The distribution of energy across molecules is called the Maxwell-Boltzmann distribution and has been known, well, since Maxwell. The Maxwell-Boltzmann formula clearly shows that, if you increase the average energy per molecule, the probability of "cold" molecules goes down, not up as you are suggesting.

I am of course not suggesting that a can of gas is a good model for climate, but I want to point out that basic laws of nature push to the opposite direction than the one you are suggesting. Your wider point may well be true, but if so, it depends on more complicated mechanisms than just basic physics.

MatteoFrigo··on Binary Trees are optimal except when they’re not
What you are saying may be a valid criticism of basic undergraduate algorithms courses, but it is a bit unfair as an absolute criticism of the field. There exists a huge literature that studies algorithms under various models of the memory hierarchy, and under various models of I/O. Even Knuth's venerable The Art of Computer Programming from 50 years ago studied the problem of optimal sorting assuming that the data is on tape and one has six tape drives available (for some value of six that I forgot).
MatteoFrigo··on Binary Trees are optimal except when they’re not
If you are a fan of skip lists, you may want to look into treaps as well. "Treap" is a portmanteau of "tree" and "heap": it is a binary search tree with respect to the search key, and it is a heap in another random or quasi-random quantity such as a hash of the key. Treaps have essentially all the properties of skip lists, and they are even simpler to implement.

One way to look at treaps is to start with a skip list. A skip list has variable-size nodes, which is kind of annoying. If you transform the variable-size node into a linked list, you end up with something that is essentially a binary tree, but now you have redundant information in multiple tree nodes. If you remove all redundancy you get the treap. This is not how one usually thinks of treaps, and it is not how they were invented, but it's good to be aware of the correspondence.

For a given set of keys and hash function, the treap is effectively unique (unlike binary search trees) irrespective of the insertion order, which is sometimes a good property to have.

MatteoFrigo··on Google Drive bans distribution of “misleading content”
There is a lot of subtlety hidden in "a ^ ~a is a contradiction", because physical reality is more complex than it appears.

For example, one of the stunning consequences of Special Relativity is that there exist situations in which an observer says that event A happens before event B, and another observer says that event A happens after event B, and both are correct. Nature does not appear to be at all bothered by this "contradiction", however, and the world works just fine. Even more puzzling "contradictions" arise in quantum mechanics.

For all we know, it appears that reality is indeed dependent on the observer at a deep level. Maybe there is an even deeper level at which statements such as "a ^ ~a is false" hold, but so far nobody has been able to discover any.

MatteoFrigo··on Google Drive bans distribution of “misleading content”
Seneca had a somewhat more humane attitude towards slavery. See e.g. https://figsinwinter.medium.com/seneca-to-lucilius-47-on-sla...
← PreviousPage 6 of 7Next →