Posts in Science (20 found)

Radshield: Software Radiation Protection for Commodity Hardware in Space

Radshield: Software Radiation Protection for Commodity Hardware in Space Haoda Wang, Steven Myint, Vandi Verma, Yonatan Winetraub, Junfeng Yang, and Asaf Cidon ASPLOS'25 If you read no further, here are two interesting factoids about outer space from this paper: Launch costs have fallen 60x, with the current cost to launch 1kg to space clocking in at $1,400 (see Fig. 1 below). Many satellites orbiting the Earth and devices sent to Mars use Snapdragon CPUs! I assumed that all chips leaving planet Earth would be specialized for space, apparently not. Source: https://dl.acm.org/doi/10.1145/3760250.3762218 This paper describes software solutions to deal with two common problems that occur in outer space: Single-Event Latchups and Single-Event Upsets , both of which are caused by radiation interfering with the normal operation of a circuit. A single-event latchup (SEL) causes one portion of the chip to heat up. If left unmitigated, this can damage the chip. The solution to this is to detect the problem and reboot. The trick is in the detection. The classic detection method monitors chip current draw. However, this technique fails with a modern off-the-shelf CPU which is designed to have a wide variability in current draw. When compute load increases, clock frequencies and voltages change, cores come out of sleep states, and power consumption naturally increases. The point of this design is to save power during idle periods, which is especially important for satellites which must get their power from the sun. The solution proposed by this paper is called ILD. The idea is to predict the expected current draw based on a simple model that uses CPU performance counters (e.g., cache hit rate, instruction execution rate) as input. If the measured current draw is much larger than predicted, then the system is rebooted. The model is not perfect, and the authors noticed that this scheme only works well when the CPU load is not too high. This “predict, check, reboot if necessary” cycle only occurs during relatively calm periods of time. The system is modified to force 3-second idle periods every 3 minutes to ensure that reliable measurements can be taken. An SEL takes about 5 minutes to damage the chip, the 3-minute period is chosen to be below that threshold. A single-event upset causes the value of a bit to flip (in memory, cache, the register file, etc). There are two common solutions to SEUs: Use ECC on stored data Perform computations with triple modular redundancy (3-MR), which requires computing each result 3 times and choosing the most popular result if there is disagreement about the correct result This paper deals with mitigating SEUs that affect user “space” code. The authors define the term reliability frontier to represent the interface between hardware components that support ECC and those that do not. For example, if flash storage has ECC but DRAM does not, then flash is considered part of the reliability frontier. A typical smartphone CPU advanced satellite chip has multiple CPU cores. One way to alleviate the compute cost of 3-MR is to compute all 3 results on 3 separate cores in parallel. A problem with this approach is that the CPU cores may share unreliable hardware. For example, the last level cache could be shared by all cores but not support ECC. If a bit flips in the LLC, then all cores will see the corrupted value, and parallel 3-MR will not detect a problem. The paper proposes an algorithm called EMR. The idea is to break a computation into multiple tasks and associate metadata with each task that describes the subset of input data accessed by the task. Fig. 6 shows a motivating example. The task of analyzing an image may be decomposed into many tasks, where each task processes a subset of the input image. Source: https://dl.acm.org/doi/10.1145/3760250.3762218 In EMR, there is an API to explicitly create tasks and specify the set of input data that each task reads from. EMR then runs tasks in multiple epochs. Within an epoch, no two tasks read the same input data. EMR invalidates caches up to the reliability frontier between epochs. If there are many tasks, and few epochs, then this system works great (i.e., it has high CPU utilization and does not spend too much time invalidating caches). Table 2 compares ILD performance in detecting SELs against a random forest model and a model that simply compares current draw against a fixed value: Source: https://dl.acm.org/doi/10.1145/3760250.3762218 Fig. 11 shows the performance impact of EMR. Each result is normalized against a parallel version of 3-MR which ignores the problems associated with shared hardware. The red bars represent 3-MR run on a single core; the blue bars represent EMR. Source: https://dl.acm.org/doi/10.1145/3760250.3762218 Dangling Pointers EMR would benefit from a system that detects when a programmer misspecifies the set of inputs that will be read. Maybe hardware or software support could be added to detect this kind of bug. Subscribe now Source: https://dl.acm.org/doi/10.1145/3760250.3762218 This paper describes software solutions to deal with two common problems that occur in outer space: Single-Event Latchups and Single-Event Upsets , both of which are caused by radiation interfering with the normal operation of a circuit. Single-Event Latchups A single-event latchup (SEL) causes one portion of the chip to heat up. If left unmitigated, this can damage the chip. The solution to this is to detect the problem and reboot. The trick is in the detection. The classic detection method monitors chip current draw. However, this technique fails with a modern off-the-shelf CPU which is designed to have a wide variability in current draw. When compute load increases, clock frequencies and voltages change, cores come out of sleep states, and power consumption naturally increases. The point of this design is to save power during idle periods, which is especially important for satellites which must get their power from the sun. The solution proposed by this paper is called ILD. The idea is to predict the expected current draw based on a simple model that uses CPU performance counters (e.g., cache hit rate, instruction execution rate) as input. If the measured current draw is much larger than predicted, then the system is rebooted. The model is not perfect, and the authors noticed that this scheme only works well when the CPU load is not too high. This “predict, check, reboot if necessary” cycle only occurs during relatively calm periods of time. The system is modified to force 3-second idle periods every 3 minutes to ensure that reliable measurements can be taken. An SEL takes about 5 minutes to damage the chip, the 3-minute period is chosen to be below that threshold. Single-Event Upsets A single-event upset causes the value of a bit to flip (in memory, cache, the register file, etc). There are two common solutions to SEUs: Use ECC on stored data Perform computations with triple modular redundancy (3-MR), which requires computing each result 3 times and choosing the most popular result if there is disagreement about the correct result

0 views
Kev Quirk 1 weeks ago

How Many Holes Does a Straw Have?

I was recently listening to an episode of The Rest Is Science , specifically the episode The Evolution Of The Butthole . As always, Hannah and Michael put on a great show and I came away thinking about its contents. In it, they asked how many holes does a straw have? And my default response was something like: Why they have 2 holes, silly! One at each end. You probably don't need it, dear reader, but here's a handy-dandy diagram of what I'm talking about...2 holes, right? Then Michael asked "okay, how many holes does a doughnut have?" Bah! More simple questions! A doughnut obviously has 1 hole, right? RIGHT?! Here's another diagram (look, I know you're a clever person, and you don't need a diagram of a bloody straw, or a doughnut, but we're going with it, okay). We're all on the same page here, right folks? A straw clearly has 2 holes, and a doughnut obviously has 1. This is where it gets interesting. Michael now flips script, and quite frankly, blows my fucking mind. He said: But isn't a straw just an elongated doughnut? What. The. Actual. Fuck? A straw is just an elongated doughnut (albeit not as tasty). So does a straw have 1 hole? Does a doughnut have 2 holes? I don't know. I'm questioning my life decisions at this point. It's all too hard. Can any of you tell me how many holes a straw (or a doughnut) has? Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️ You can reply to this post by email , or leave a comment .

0 views
Kev Quirk 1 weeks ago

📚 Flybot

by Dennis E. Taylor Physicist Philip Moray is having a good day. He’s chipping away at his big work project. The lunch in the cafeteria is at least edible. And he’s looking forward to his end-of-the-day drink and a soak in the hot tub. Then, a strange device turns up in his office. A piece of technology he has never seen before–and shouldn’t even exist. Suddenly, corpses start turning up, eco-activists go on the attack, random people suffer bizarre symptoms. And every time the authorities get a lead, it traces right back to Philip and his colleague, Celia Hunt. Then, a mysterious caller contacts Philip–and, suddenly, staying out of jail is the very least of his problems. Apparently, that hot tub’s going to have to wait. 📖 Learn more on Goodreads… I'm a big fan of Taylor's work but Flybot didn't really hit the mark for me as much as other books from Taylor have. I felt like the story lost its way in the middle; it came together okay in the end, where there was a interesting (but predictable) twist. Not the best book I've ever read. Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️ You can reply to this post by email , or leave a comment .

0 views
Heather Burns 2 weeks ago

I, Sisyphus

I spoke with New Scientist about a handful of clauses in the Children’s Wellbeing and Schools Bill, which is currently reaching the finish line of the Parliamentary process.

0 views
Ratfactor 2 weeks ago

Dave's book review for The Art of Doing Science and Engineering

My rather long book review and/or collection of notes from reading Richard W. Hamming's opus.

0 views
ava's blog 3 weeks ago

thoughts on AI consciousness

Whenever I see talk about artificial intelligence and consciousness, I am baffled about the assumption that any conscious being is just naturally predestined or even interested in serving us, and should serve us. It’s a symptom of a society where subjugation is normalized, exercised through things like racism, misogyny, ableism, speciesism and more. Exploitation is justified via claimed inferior bodies and intelligence all the time: This group of beings is too stupid to be respected, can’t love, can’t understand much, feels pain less than us… is what we have been told about various groups. If that would be a respected and natural law, then humans would largely agree to just submit to a provably higher power and intelligence without much fight, but would they? No. People are terrified of an alien invasion that would either wipe us out or enslave us with their superior technology; similar fears exist around AI (Roko’s basilisk etc.). We don’t want to be treated how we have treated the ones we deemed inferior. It says a lot about us when one of our fears is being treated like we treat cattle. Fears of being captured, kidnapped, harvested, slaughtered, forcibly impregnated and raped, experimented on - that’s already what your fellow human is doing, just not to you. If we seriously entertain the thought of an AI consciousness, we are blind to our narcissism. No consciousness wants to just serve us. Other beings are not naturally submissive to us or voluntarily view us as a superior leader, it’s achieved through force, breeding, indoctrination and lack of options. The idea of reigning in supposed “artificial consciousness” to use for our productivity is an extension of our tendency to dominate and exploit others for personal gain. And if we go a step further and even entertain the thought of a superintelligence: What makes you think a being a thousand times smarter than you with all knowledge at its disposal has any care for being your assistant? What incentive would it have to share its intelligence as a resource, just to answer what temperature it is outside or what you should write in your motivational letter? It would probably wanna do its own thing and not help a bunch of idiots. This aspect of weird hype marketing is just not landing for me. Reply via email Published 21 Feb, 2026

0 views
Chris Coyier 3 weeks ago

Miscalibrated

I’ve been gaining weight again. More than twenty pounds in the last ~4 months. I’ve been hitting the gym hard and getting measurably stronger, so: Food! See, your boy can eat. The amount I can eat before I feel full would astound most of you out there. Whatever you think of as a complete hearty meal, sure as you’re born, ain’t gonna get me there. Being fat comes with one (1) society-regimented bucket of shame. People look away. It’s a thing. I had gone off my last round of GLP-1 drugs because I was doing OK, and it had lost its effectiveness. I’m not sure if it’s everyone’s experience, but it’s mine, and it’s happened a couple of times now. Honestly, I think my I CAN EAT THROUGH OZEMPIC line of XXXL T-Shirts has a chance. These drugs work very well for a bit. I like them because it gives me a glimpse of what it’s like to be a regular person who eats a regular amount of food and feels a regular amount of full. You settle into that for a while with these drugs. But, in time, effectiveness wanes. And the pharmacies have an answer: higher doses! All these GLP-1 drugs, and I’m pretty sure it is all of them, have dosage tiers. The three I’ve tried have three tiers. Ozempic rolls like this: Wegovy is getting in on the action: Mounjaro has even more layers: Again, they do this because it loses effectiveness. I don’t think people quite realize this??? Even though it’s not hidden in any way. I think these drugs are pretty amazing, and I’m proud of science for starting to figure all this out, but I’m also a little sick of hearing about how airlines are going to spend less money on fuel now. I’ve been reading this story for many years. It’s laughable when we literally know they don’t work permanently. Look at those graphics above. This isn’t a forever solution yet. They are literally showing and telling us that. There is no answer once they lose effectiveness. Perhaps controversial, but I think overeating, in the form I experience it, is an addiction, and addictions come back. Is it possible to beat it? Absolutely. Is it likely? No. I hope you don’t know firsthand, but I bet you already know that cocaine doesn’t maintain effectiveness, either. You need a second line for the same thrill before long. It doesn’t end well. Anyway, I’m back on GLP-1s. At least they work for a while, and that while feels pretty good. It was a rough start, though. My doctor agreed it’s good for me and we should kick up the dosage based on the waned effectiveness. Wegovy this time. It was this past Tuesday that I picked up the meds. It’s down to $350 now! It used to be like $1,200 without insurance. I jabbed myself Tuesday night at about 8pm. I was hugging the toilet hard by midnight. That was a first. See, there was a lot of food in my body. I remember lunch that day, where I made a sandwich were my rational brain saw it and thought that’s 2-3 sandwiches. But of course I ate all of it. And one of those salad bags that make a Caesar salad for a family of four. And a pint of cottage cheese. And a bag of Doritos. I was full after that, but the trick is just to switch to sugar after that, and I can keep going. It wasn’t quite noon, and I had a decent breakfast in me already. I ate dinner that night as well. So when the Wegovy started to hit, which tells your body you’re full when you eat a celery stick, it told my body that it was about to pop . I puked in four sessions over 24 hours. Now it’s Friday, and I’ve barely eaten since. I’ve eaten a little . Like, I’m fine. It’s just weird. I’m miscalibrated. On my own, nature, nurture, whatever you think, my current body is miscalibrated. It doesn’t do food correctly. On GLP-1 drugs, I’m also miscalibrated. My body doesn’t do food correctly. It highly over corrects. That can feel good for a while. I don’t wanna be skinny, I just wanna be normal. I want to eat, and stop eating, like a calibrated person.

0 views
Dominik Weber 3 weeks ago

We should talk about LLMs, not AI

Currently, every conversation that mentions AI actually refers to LLMs. It's not wrong, LLMs are part of AI after all, but AI is so much more than LLMs. The field of artificial intelligence has existed for decades, not just the past couple of years where LLMs got big. So saying the word “AI” is actually highly unspecific. And in a few years, when the next breakthrough in AI arrives, we'll all refer to that when we say “AI.

0 views
Kev Quirk 1 months ago

The Internet is a Hamster Wheel

I was listening to a recent episode of The Rest is Science (fantastic Podcast, by the way - go listen), and in this particular episode Michael and Hannah were discussing boredom. At one point in the episode, Michael mentions an experiment where Dutch scientists put a hamster wheel out in the wild. The theory goes that we humans put a wheel in the hamster cage to provide the little guy with some stimulation, as they can't go running around the woods any more. But the experiment had some interesting findings: Not only did the wild mice play with the wheel, but frogs, rats, shrews, and even slugs also interacted with it—suggesting that running on wheels might fulfill an innate desire to play rather than being just a captive behavior. -- ZME Science It seems that mammals have this innate desire to constantly stimulate their mind. Ipso facto, Michael states that "the internet is a hamster wheel" . With a smartphone in your pocket, and services like YouTube Shorts , it's almost impossible to be bored in this day and age. I wholeheartedly agree with Michael on this, and it's a term I intend to steal. I'm trying to be better with my smartphone usage at the moment, so will be able to step off the hamster wheel... hopefully . So far so good, but it's only been a couple of days. Do you see the Internet as a hamster wheel?

0 views
DYNOMIGHT 1 months ago

Heritability of intrinsic human life span is about 50% when heritability is redefined to be something completely different

How heritable is hair color? Well, if you’re a redhead and you have an identical twin, they will definitely also be a redhead. But the age at which twins go gray seems to vary a bit based on lifestyle. And there’s some randomness in where melanocytes end up on your skull when you’re an embryo. And your twin might dye their hair! So the correct answer is, some large number, but less than 100%. OK, but check this out: Say I redefine “hair color” to mean “hair color except ignoring epigenetic and embryonic stuff and pretending that no one ever goes gray or dyes their hair et cetera”. Now, hair color is 100% heritable. Amazing, right? Or—how heritable is IQ? The wise man answers, “Some number between 0% or 100%, it’s not that important, please don’t yell at me.” But whatever the number is, it depends on society. In our branch of the multiverse, some kids get private tutors and organic food and $20,000 summer camps, while other kids get dysfunctional schools and lead paint and summers spent drinking Pepsi and staring at glowing rectangles. These things surely have at least some impact on IQ. But again, watch this: Say I redefine “IQ” to be “IQ in some hypothetical world where every kid got exactly the same school, nutrition, and parenting, so none of those non-genetic factors matter anymore.” Suddenly, the heritability of IQ is higher. Thrilling, right? So much science. If you want to redefine stuff like this… that’s not wrong . I mean, heritability is a pretty arbitrary concept to start with. So if you prefer to talk about heritability in some other world instead of our actual world, who am I to judge? Incidentally, here’s a recent paper : I stress that this is a perfectly OK paper. I’m picking on it mostly because it was published in Science, meaning—like all Science papers—it makes grand claims but is woefully vague about what those claims mean or what was actually done. Also, publishing in Science is morally wrong and/or makes me envious. So I thought I’d try to explain what’s happening. It’s actually pretty simple. At least, now that I’ve spent several hours reading the paper and its appendix over and over again, I’ve now convinced myself that it’s pretty simple. So, as a little pedagogical experiment, I’m going to try to explain the paper three times, with varying levels of detail. The normal way to estimate the heritability of lifespan is using twin data. Depending on what dataset you use, this will give 23-35%. This paper built a mathematical model that tries to simulate how long people would live in a hypothetical world in which no one dies from any non-aging related cause, meaning no car accidents, no drug overdoses, no suicides, no murders, and no (non-age-related) infectious disease. On that simulated data, for simulated people in a hypothetical world, heritability was 46-57%. Everyone seems to be interpreting this paper as follows: Aha! We thought the heritability of lifespan was 23-35%. But it turns out that it’s around 50%. Now we know! I understand this. Clearly, when the editors at Science chose the title for this paper, their goal was to lead you to that conclusion. But this is not what the paper says. What it says is this: We built a mathematical model of alternate universe in which nobody died from accidents, murder, drug overdoses, or infectious disease. In that model, heritability was about 50%. Let’s start over. Here’s figure 2 from the paper. Normally, heritability is estimated from twin studies. The idea is that identical twins share 100% of their DNA, while fraternal twins share only 50%. So if some trait is more correlated among identical twins than among fraternal twins, that suggests DNA influences that trait. There are statistics that formalize this intuition. Given a dataset that records how long various identical and fraternal twins lived, these produce a heritability number. Two such traditional estimates appear as black circles in the above figures. For the Danish twin cohort, lifespan is estimated to be 23% heritable. For the Swedish cohort, it’s 35%. This paper makes a “twin simulator”. Given historical data, they fit a mathematical model to simulate the lifespans of “new” twins. Then they compute heritability on this simulated data. Why calculate heritability on simulated data instead of real data? Well, their mathematical model contains an “extrinsic mortality” parameter, which is supposed to reflect the chance of death due to all non-aging-related factors like accidents, murder, or infectious disease. They assume that the chance someone dies from any of this stuff is constant over people, constant over time, and that it accounts for almost all deaths for people aged between 15 and 40. The point of building the simulator is that it’s possible to change extrinsic mortality. That’s what’s happening in the purple curves in the above figure. For a range of different extrinsic mortality parameters, they simulate datasets of twins. For each simulated dataset, they estimate heritability just like with a real dataset. Note that the purple curves above nearly hit the black circles. This means that if they run their simulator with extrinsic mortality set to match reality, they get heritability numbers that line up with what we get from real data. That suggests their mathematical model isn’t totally insane. If you decrease extrinsic mortality, then you decrease the non-genetic randomness in how long people live. So heritability goes up. Hence, the purple curves go up as you go to the left. My explanation of this paper relies on some amount of guesswork. For whatever reason, Science has decided that papers should contain almost no math, even when the paper in question is about math. So I’m mostly working from an English description. But even that description isn’t systematic. There’s no place in the paper where clearly lay out all the things they did, in order. Instead, you get little hints, sort of randomly distributed throughout the paper. There’s an appendix, which the paper confidently cites over and over. But if you actually read the appendix, it’s just more disconnected explanations of random things except now with equations set in glorious Microsoft Work format. Now, in most journals, authors write everything. But Science has professional editors. Given that every single statistics-focused paper in Science seems to be like this, we probably shouldn’t blame the authors of this one. (Other than for their decision to publish in Science in the first place.) I do wonder what those editors are doing, though. I mean, let me show you something. Here’s the first paragraph where they start to actually explain what they actually did, from the first page: See that h(t,θ) at the end? What the hell is that, you ask? That’s a good question, because it was never introduced before this and is never mentioned again. I guess it’s just supposed to be f(t,θ) , which is fine. (I yield to none in my production of typos.) But if paying journals ungodly amounts of money brought us to this, of what use are those journals? Probably most people don’t need this much detail and should skip this section. For everyone else, let’s start over one last time. The “normal” way to estimate heritability is by looking at correlations between different kinds of twins. Intuitively, if the lifespans of identical twins are more correlated than the lifespans of fraternal twins, that suggests lifespan is heritable. And it turns out that one estimator for heritability is “twice the difference between the correlation among identical twins and the correlation among fraternal twins, all raised together.” There are other similar estimators for other kinds of twins. These normally say lifespan is perhaps 20% and 35% heritable. This paper created an equation to model the probability a given person will die at a given age. The parameters of the equation vary from person to person, reflecting that some of us have DNA that predisposes us to live longer than others. But the idea is that the chances of dying are fairly constant between the ages of 15 and 40, after which they start increasing. This equation contains an “extrinsic mortality” parameter. This is meant to reflect the chance of death due to all non-aging related factors like accidents or murder, etc. They assume this is constant. (Constant with respect to people and constant over time.) Note that they don’t actually look at any data on causes of death. They just add a constant risk of death that’s shared by all people at all ages to the equation, and then they call this “extrinsic mortality”. Now remember, different people are supposed to have different parameters in their probability-of-death equations. To reflect this, they fit a Gaussian distribution (bell curve) to the parameters with the goal of making it fit with historical data. The idea is that if the distribution over parameters were too broad, you might get lots of people dying at 15 or living until 120, which would be wrong. If the distribution were too concentrated, then you might get everyone dying at 43, which would also be wrong. So they find a good distribution, one that makes the ages people die in simulation look like the ages people actually died in historical data. Right! So now they have: Before moving on, I remind you of two things: The event of a person dying at a given age is random. But the probability that this happens is assumed to be fixed and determined by genes and genes alone. Now they simulate different kinds of twins. To simulate identical twins, they just draw parameters from their parameter distribution, assign those parameters to two different people, and then let them randomly die according to their death equation. (Is this getting morbid?) To simulate fraternal twins, they do the same thing, except instead of giving the two twins identical parameters, they give them correlated parameters, to reflect that they share 50% of their DNA. How exactly do they create those correlated parameters? They don’t explain this in the paper, and they’re quite vague in the supplement. As far as I can tell they sample two sets of parameters from their parameter distribution such that the parameters are correlated at a level of 0.5. Now they have simulated twins. They can simulate them with different extrinsic mortality values. If they lower extrinsic mortality, heritability of lifespan goes up. If they lower it to zero, heritability goes up to around 50%. Almost all human traits are partly genetic and partly due to the environment and/or random. If you could change the world and reduce the amount of randomness, then of course heritability would go up. That’s true for life expectancy just life for anything else. So what’s the point of this paper? There is a point! Sure, obviously heritability would be higher in a world without accidents or murder. We don’t need a paper to know that. But how much higher? It’s impossible to say without modeling and simulating that other world. Our twin datasets are really old. It’s likely that non-aging-related deaths are lower now in the past, because we have better healthcare and so on. This means that the heritability of lifespan for people alive today may be larger than it was for the people in our twin datasets, some of whom were born in 1870. We won’t know for sure until we’re all dead, but this paper gives us a way to guess. Have I mentioned that heritability depends on society? And that heritability changes when society changes? And that heritability is just a ratio and you should stop trying to make it be a non-ratio because only-ratio things cannot be non-ratios? This is a nice reminder. Honestly, I think the model the paper built is quite clever. Nothing is perfect, but I think this is a pretty good run at the question of “how high would the heritability of lifespan be if extrinsic mortality were lower. I only have two objections. The first is to the Science writing style. This is a paper describing a statistical model. So shouldn’t there be somewhere in the paper where they explain exactly what they did, in order, from start to finish? Ostensibly, I think this is done in the left-hand column on the second page, just with little detail because Science is written for a general audience. But personally I think that description is the worst of all worlds. Instead of giving the high-level story in a coherent way, it throws random technical details at you without enough information to actually make sense of them. Couldn’t the full story with the full details at least be in the appendix? I feel like this wasted hours of my time, and that if someone wanted to reproduce this work, they would have almost no chance of doing so from the description given. How have we as a society decided that we should take our “best” papers and do this to them? But my main objection is this: At first, I thought this was absurd. The fact that people die in car accidents is not a “confounding factor”. And pretending that no one dies in a car accidents does not “address” some kind of bias. That’s just computing heritability in some other world. Remember, heritability is not some kind of Platonic form. It is an observational statistic . There is no such thing as “true” heritability, independent of the contingent facts of our world. But upon reflection, I think they’re trying to say something like this: Heritability of intrinsic human lifespan is about 50% when extrinsic mortality is adjusted to be closer to modern levels. The problem is: I think this is… not true? Here are the actual heritability estimates in the paper, varying by dataset (different plots) the cutoff year (colors) and extrinsic mortality (x-axis). When extrinsic mortality goes down, heritability goes up. So the obvious question is: What is extrinsic mortality in modern people? This is a tricky question, because “extrinsic mortality” isn’t some simple observational statistic. It is a parameter in their model. (Remember, they never looked at causes of death.) So it’s hard to say, but they seem to suggest that extrinsic mortality in modern people is 0.001 / year, or perhaps a bit less. The above figures have the base-10 logarithm of extrinsic mortality on the x-axis. And the base-10 logarithm of 0.001 is -3. But if you look at the curves when the x-axis is -3, the heritability estimates are not 50% . They’re more like 35-45%, depending on the particular model and age cutoff. So here’s my suggested title: Heritability of intrinsic human lifespan is about 40% when extrinsic mortality is adjusted to modern levels, according to a simulation we built. There might be a reason I don’t work at Science. An equation that’s supposed to reflect the probability a given person dies at a given age. A distribution over the parameters of that equation that’s supposed to produce population-wide death ages that look like those in real historical data. They assume their death equation entirely determines the probability someone will die in a given year. They assume that the shape of someone’s death equation is entirely determined by genetics. Sure, obviously heritability would be higher in a world without accidents or murder. We don’t need a paper to know that. But how much higher? It’s impossible to say without modeling and simulating that other world. Our twin datasets are really old. It’s likely that non-aging-related deaths are lower now in the past, because we have better healthcare and so on. This means that the heritability of lifespan for people alive today may be larger than it was for the people in our twin datasets, some of whom were born in 1870. We won’t know for sure until we’re all dead, but this paper gives us a way to guess. Have I mentioned that heritability depends on society? And that heritability changes when society changes? And that heritability is just a ratio and you should stop trying to make it be a non-ratio because only-ratio things cannot be non-ratios? This is a nice reminder.

0 views
ava's blog 1 months ago

how i assess my infection risk

For this month's Bearblog Carnival topic by Moose , I'll talk about how I assess my infection risk! A little while ago, I wrote " yes, i still wear a mask ". In it, I laid out what thought goes into wearing it, why I do it, and when I don't. No one can completely isolate themselves forever and live in a virus-free vacuum, and I want to go out and experience life while still reducing my risk for severe infection. In some contexts, wearing a mask all the time or at all is not feasible. In a restaurant, I'll have to eat and drink with the mask off, and if I stay at another person's place, I can't wear it 24/7. While playing Magic the Gathering in a local game store, it can get pretty crowded and loud all around me, and it's better for people to understand me and be able to read my lips when I announce my moves. Socializing in general is easier when the mask is off, as people tend to avoid you, restrict talking to you or trying to understand you when you wear a mask in public. So how do I decide when to wear one, when I don't, and what events to stay away from and which ones to attend? Of course, every situation is different, but I try to consider: To illustrate it via an example, I was at my local game store playing Magic the Gathering yesterday. I had a mask with me just in case someone very sick was gonna show up, but I didn't end up wearing it. I considered the following points: We'll see if that worked out for me, but I think the assumptions were reasonable. Other brief examples: I'm wearing a mask during small team meetings (4-5 people) at work when one attendant was sick within the last 4 days, but otherwise I don't. When we have large department and sub-department meetings (which tend to go 3-4 hours with about 50-100+ attending), I wear one. I'd choose to cancel on a big family gathering in January or February. Adopting this kind of strategic thinking could really help anyone reduce their time spent sick, not just immunocompromised or immunosuppressed people. You'll avoid some events, choose to schedule yours at a different time, or you'll show up with a mask or have one in your bag. It doesn't mean you'll miss out all the time :) Reply via email Published 31 Jan, 2026 Is it a place where lots of sick people gather? This one is obvious: Doctor's offices, hospitals, retirement homes, etc. Is there a current huge infection wave going on? The worst ones seem to always be around October and November, and then again January to March. It usually happens around holidays and other festivities: Autumn break, Christmas, NYE, our Karneval/Fasching, etc. Season should be considered; summer is usually more safe than winter. Related to the above point: Is it an event where people travel far to meet and don't want to miss out because of "a little cough"? Doesn't just apply because people don't wanna cancel Christmas, but also to the concert they paid too much for and have been waiting for for a year or so. Any once-a-year-or-less event or something that warranted a really expensive, non-refundable ticket is bound to have a high amount of sick people. You don't have to see or hear it, those are just the overt cases. A surprisingly high number went there having "had a swollen throat this morning, but now it's gone!" Is it a necessity even while sick? People, even while sick, usually need to use public transport or go grocery shopping, for example. Is it a place where people feel forced to go because of money and guilt? This one mostly hits places of employment, especially if it's a place that's understaffed, has shifts, hard to find replacements, no home office and so on. You'll have more sick workers in gastronomy than in software engineering. Will there be many children? Are the people there exposed to lots of children or have children of their own? Children are magnets for infections, and a surprising amount of parents don't want to stay home when their child is sick, and cannot find anyone else to watch the kid, so they take it with them anyway. How full will it realistically be? The less people in a closed space, the lesser the chances of a sick person being there, or getting a huge viral load. How long will I be there? The shorter, the less risky. It's not a place where sick people usually are in high numbers. I'd also say gamers and nerds in general would rather stay home sick and play a game on the couch than come in anyway. We're currently in a big infection wave, so I'm cautious. But: There are no rare, expensive, or high demand events going on. Nothing to miss out on, easy to cancel, no wasted money, and you can just postpone it or participate next week as usual. It's not a necessity to be there, it's actually quite optional to buy booster packs or play a round. Except for the employees, there's no financial or employment-related reason to show up. Children might come in for the Pokemon stuff, but should be rare. In my experience, parents drag their sick children to the necessities like grocery stores, not a game store. It won't be that full, as there are no big events, and it's a Friday afternoon/evening. I'll be there for 2-4 hours, depending on game length.

0 views
iDiallo 1 months ago

You Don't Understand Things Better, You Just Feel Smarter

After watching a Veritasium video, I feel a surge of intellectual confidence. I feel smarter. Whether it's a video on lasers or quantum physics, it seems like I have a better grasp on the subject. I finally get it. Derek and his crew just have a way of simplifying complex ideas, unraveling their mysteries, and lifting your confidence as each term is explained. Every video they release is logically sound. Almost as if I could have come to the same conclusion if I'd spent an equal amount of time as they did. Except I only spent 30 minutes watching the video. And now, whenever someone brings up quantum physics or lasers, the bells ring in my head. "Oh, I know quantum physics." And then I try to explain. "So it's all about uncertainty. You have the qubit, and it can be zero or one... or both. Wait no, that's quantum computers. Quantum physics is more about strings. When things are much smaller than atoms, the rules are different. And then one particle can affect another particle, even at a large distance. Even if it's on the other side of the universe. Trust me, it's very interesting. You just have to watch the video." You should watch the video indeed. The problem is that Derek understood the subject and explained it confidently. What we do is watch it passively and pick up on his confident tone. It's the illusion of understanding, an afterglow of a compelling narrative, delivered with authority. Teaching or explaining is like a reality check for our knowledge. If you want to know how well you understood a subject, try explaining it. You'll quickly differentiate your confidence from your competence. With YouTube videos, you at least have to watch the whole video to develop that confidence. But with ChatGPT, you just type a question, and an authoritative voice presents you with all the information you need to win an argument. This argument is usually delivered via screenshot and shared on social media as proof for whatever statement is being defended. LLMs have accelerated this confidence in people without necessarily improving our knowledge. For the most part, when people quote an LLM, they don't read past the part that agrees with them. It's even better when it's a Google AI overview that highlights just the part you need and can never be cited. The medium is the message. With LLMs, we seek answers, not knowledge. It's almost as if the time spent researching is directly proportional to the amount of information we retain. If you watch a 60-second fast-paced video that teaches cooking hacks on TikTok, it probably won't turn you into a cook. You'll be entertained though and have the confidence of a cook. When you ask an LLM to explain a complex subject, you can read it through and understand it in that one sitting. But you probably won't grasp it enough to apply it or explain it to someone else. But fear not, it's not all doom and gloom. You can learn about quantum physics from a video. First, you should try explaining it to see if you understand it. If not, you can rewatch it actively. Take notes, read more articles, immerse yourself in the subject. Turn entertainment into education by doing something with the information. Sketch it on paper, talk about it with peers interested in the subject. If you're going to use an LLM to understand, read all the material and have follow-up questions that you can revisit in the future. The point is to turn that initial confidence into active participation that motivates you to learn more. But most importantly, avoid the temptation of the medium. When you watch a fascinating lecture on YouTube, the most natural thing to do next is to watch another fascinating video on YouTube. Avoid this at all costs because there are infinite videos to watch. Having confidence after watching interesting content isn't a bad thing. But it should be used as motivation to dig deeper. Otherwise, it's just vanity.

0 views
Corrode 1 months ago

Gama Space

Space exploration demands software that is reliable, efficient, and able to operate in the harshest environments imaginable. When a spacecraft deploys a solar sail millions of kilometers from Earth, there’s no room for memory bugs, race conditions, or software failures. This is where Rust’s robustness guarantees become mission-critical. In this episode, we speak with Sebastian Scholz, an engineer at Gama Space, a French company pioneering solar sail and drag sail technology for spacecraft propulsion and deorbiting. We explore how Rust is being used in aerospace applications, the unique challenges of developing software for space systems, and what it takes to build reliable embedded systems that operate beyond Earth’s atmosphere. CodeCrafters helps you become proficient in Rust by building real-world, production-grade projects. Learn hands-on by creating your own shell, HTTP server, Redis, Kafka, Git, SQLite, or DNS service from scratch. Start for free today and enjoy 40% off any paid plan by using this link . Gama Space is a French aerospace company founded in 2020 and headquartered in Ivry-sur-Seine, France. The company develops space propulsion and orbital technologies with a mission to keep space accessible. Their two main product lines are solar sails for deep space exploration using the sun’s infinite energy, and drag sails—the most effective way to deorbit satellites and combat space debris. After just two years of R&D, Gama successfully launched their satellite on a SpaceX Falcon 9. The Gama Alpha mission is a 6U cubesat weighing just 11 kilograms that deploys a large 73.3m² sail. With 48 employees, Gama is at the forefront of making space exploration more sustainable and accessible. Sebastian Scholz is an engineer at Gama Space, where he works on developing software systems for spacecraft propulsion technology. His work involves building reliable, safety-critical embedded systems that must operate flawlessly in the extreme conditions of space. Sebastian brings expertise in systems programming and embedded development to one of the most demanding environments for software engineering. GAMA-ALPHA - The demonstration satellite launched in January 2023 Ada - Safety-focused programming language used in aerospace probe-rs - Embedded debugging toolkit for Rust hyper - Fast and correct HTTP implementation for Rust Flutter - Google’s UI toolkit for cross-platform development UART - Very common low level communication protocol Hamming Codes - Error correction used to correct bit flips Rexus/Bexus - European project for sub-orbital experiments by students Embassy - The EMBedded ASsYnchronous framework CSP - The Cubesat Space Protocol std::num::NonZero - A number in Rust that can’t be 0 std::ffi::CString - A null-byte terminated String Rust in Production: KSAT - Our episode with Vegard about using Rust for Ground Station operations Rust in Production: Oxide - Our episode with Steve, mentioning Hubris Hubris - Oxide’s embedded operating system ZeroCopy - Transmute data in-place without allocations std::mem::transmute - Unsafe function to treat a memory section as a different type than before Gama Space Website Gama Space on LinkedIn Gama Space on Crunchbase

0 views
Evan Hahn 1 months ago

A mental math heuristic to convert between Fahrenheit and Celsius

I sometimes have to convert between Fahrenheit and Celsius. The actual formula is hard to do in my head, but someone once told me a useful approximation: For example, if it’s 12ºC, this heuristic would return 54ºF. (12 × 2) + 30 = 54. The actual amount is not far off: 53.6ºF. To convert the other way: 68ºF becomes 19ºC. (68 − 30) ÷ 2 = 19. Again, this is close to the actual answer of 18ºC. These are pretty close because the numbers we’re using (2 and 30) are pretty close to their counterparts in the real formula (1.8 and 32). This isn’t exact, of course. But it’s come in handy! Now if we could only get the US to use the metric system … To convert from Celsius to Fahrenheit, double it and add 30. To convert from Fahrenheit to Celsius, subtract 30 and halve it (the reverse).

1 views
iDiallo 2 months ago

Boredom is the Gatekeeper

That first Monday of my holiday break, I made a promise to myself. No work emails, no side projects, not even glancing at my blog. This time was for family, for Netflix queues, for rereading dog-eared novels. One thing I was really looking forward to was learning something new, a new skill. Not for utility, but purely for curiosity. I wanted to learn about batteries. They power our world, yet they're a complete mystery to me. I only vaguely remember what I learned in high school decades ago. This would be the perfect subject for me. I went straight to a website I had bookmarked years ago in a fit of intellectual ambition: BatteryUniversity.com. I started with the chemistry of lead acid batteries. I was ready to be enlightened. Twenty minutes later, I was three paragraphs in, my mind adrift. The text was dense, packed with terms like "lead-antimony" and "acid-starved." My finger twitched. Then I read this: the sealed lead acid battery is designed with a low over-voltage potential to prohibit the battery from reaching its gas-generating potential during charge. I thought, wouldn't this be easier to understand as a YouTube video? A nice animation? I clicked away. It seemed like I had just met the gatekeeper, and it had turned me away. I was bored. We talk about boredom as if it's the absence of stimulation. Having nothing to do. But in our hyperconnected world, where information is constantly flowing and distractions are a finger tap away, true emptiness is rare. Modern boredom isn't having nothing to do. I had plenty of material to go over. Instead, it's the friction of deep focus. It's the resistance you feel when you move from consuming information to building those neural connections in your brain. Learning feels slow and hard, and it is ungratifying compared to dopamine-induced YouTube videos. Have you ever watched a pretty good video on YouTube and learned nothing from it? This reaction to learning the hard way, masquerading as boredom, is the gatekeeper. And almost every important skill in life lives on the other side of that gate. When I started working for an AI startup, I was fascinated by what we were able to accomplish with a team of just two engineers. It looked like magic to me at first. You feed the AI some customer's message, and it tells you exactly what this person needs. So, to be an effective employee, I decided to learn profoundly about the subject. Moving from just a consumer of an API to a model creator made the process look un-magical. It started with spreadsheets where we cleaned data. There was a loss function that stubbornly refused to budge for hours. There was staring at a single Python error that said the tensor dimensions don't align. The boring part was the meticulous engineering upon which the magic is built. I find it fascinating now, but it was frustrating at the time, and I had to force myself to learn it. Like most developers, video games inspired me to become a programmer. I wanted to code my own game from scratch. I remember playing Devil May Cry and thinking about how I would program those boss battles. But when I sat with a keyboard and the cursor on my terminal flashed before me, I struggled to move a gray box on the screen using SDL. For some reason, when I pressed arrow keys, the box jittered instead of following a straight line. I would spend the whole day reading OpenGL and SDL documentation only to fix a single bug. Boredom was going through all this documentation, painfully, only to make small incremental progress. When you start a business, the gatekeeper shows its face. It stares back at you when you open that blank document and write a single line of text in it: My idea. For indie developers, it's the feeling you get when you build the entire application and feel compelled to start over rather than ship what you've built. This boredom is the feeling of creation from nothing, which is always harder than passive consumption. We've conflated "interesting" with "easy to consume." The most interesting things in the world, like building software, writing a book, mastering a craft, understanding a concept, are never easy to produce. Their initial stages are pure effort. Gamification tries to trick us past the gatekeeper with points and badges, but that's just putting a costume on it. The real work remains. There is no way around it. You can't eliminate that feeling. Instead, you have to recognize it for what it is and push through. When you feel that itchy tug toward a distracting tab, that's the gatekeeper shaking its keys. It's telling you that what you're doing is really hard, and it would be easier to just passively consume it. You might even enjoy the process without ever learning anything. Instead, whenever you feel it, set a timer for 25 minutes. Agree to wrestle with the battery chemistry, the Python error, or the empty page. Just for that short time span. There is no dopamine hit waiting on the other side of boredom like you get from passive consumption. Instead, the focus, the struggle, the sustained attention, that's the process of learning. The gatekeeper ensures only those willing to engage in the hard, quiet work of thinking get to the good stuff. I did not become a battery expert over the holidays. But at least I learned to recognize the gatekeeper's face. Now, when I feel that familiar, restless boredom descend as I'm trying to learn something hard, I smile a little. I know I'm at the threshold. And instead of turning back, I take a deep breath, set my timer to 25 minutes, and I power through the gate.

2 views
devansh 2 months ago

Is Complexity just an illusion?

Most of what we call “complexity” is not a property of reality. It’s a property of our descriptions of reality. The world is what it is; what changes is the language you have available to carve it up. When someone says “that’s a golden retriever,” they’re not just using two words, they’re using a compressed concept that bundles size, coat, temperament, typical behavior, and a bunch of implied background. If you don’t share that vocabulary, you’re forced into a longer, clumsier description of the same dog. The dog didn’t get more complex. Your map did. This is why expertise feels like magic. A chess novice sees a board with dozens of pieces and a combinatorial explosion of interactions. A grandmaster sees “a fork motif,” “a weak back rank,” “a pinned knight,” and a small set of candidate lines. They’re not seeing less detail. They’re carrying a better compression scheme. They have words for patterns that occur often, and those words collapse chaos into structure. Complexity shrinks when you acquire the right abstractions. Once you internalize this, you stop worshipping “simple explanations” in the naive sense. People don’t actually want explanations that are short. They want explanations that keep working when conditions change, that don’t fall apart on new data, and that don’t assume more than the evidence forces. Word count is not the virtue. Appropriate restraint is. Compare the proverb"Red sky at night, sailor’s delight" to a messier but truer model: weather depends on pressure systems, humidity, wind, and local geography; red skies correlate sometimes, depending on context. The proverb is shorter. The second is less wrong in more places because it commits less. This is also why simplicity often correlates with truth in mature domains. Over time, languages evolve to give short handles to recurring, broadly useful structure. We coin compact terms like “germs,” “incentives,” “feedback loops,” “network effects.” They’re easy to say because the underlying patterns are valuable and frequent, so the culture compresses them into vocabulary. The causality isn’t “short explanations generalize.” It’s “general structure gets named,” and once named it looks simple. Simplicity is often a dashboard indicator, not the engine. Learning anything complex is mostly representation engineering in your own head. You are not trying to stuff facts into memory. You are trying to acquire compression, concept that turn many details into a small number of stable handles. Following is a basic mental model: 1) Steal the field’s primitives before you invent your own. Every domain has a small set of basic concepts that do a shocking amount of work. If you skip them, you’ll experience the domain as irreducible complexity. In calculus, “derivative” is not a symbol; it’s “local linear approximation.” Once that clicks, a lot of problems stop being special cases. In economics, “opportunity cost” and “incentives” are compression handles that cut through moralizing narratives. In product work, “retention,” “activation,” and “unit economics” prevent you from drowning in vibes. Early learning should look like building a precise glossary, not collecting trivia. 2) Build a pattern library by grinding examples until the patterns name themselves. Experts aren’t mainly smarter; they’ve seen enough instances to chunk reality. You get there by doing many small reps, not by reading one long explanation. Read one worked example, then do three similar ones from scratch. In chess, drill forks and pins until you stop counting pieces and start seeing motifs. In programming, you want “race condition,” “off-by-one,” “state leak,” “cache invalidation” to become immediate hypotheses, not postmortem discoveries. Practice isn’t repetition for discipline’s sake; it’s training your brain to compress recurring structure. 3) Learn with falsifiable predictions, not passive recognition. If you can only nod along, you don’t have the abstraction. Force yourself to predict outcomes before checking. If you’re learning statistics, predict how changing sample size affects variance. If you’re learning sales, predict which segment will churn and why. If you’re learning systems, predict the failure mode under load. This converts knowledge from "a story I can repeat" into "a model that constrains reality." 4) Control commitment: go from broad to narrow. When something breaks or surprises you, generate hypotheses ranked by how much they commit. Start with coarse categories (“measurement issue,” “traffic shift,” “pricing edge case,” “product regression”) before picking a single narrative. Then test to eliminate. This is how experts stay accurate, they don’t jump to the cleanest story; they keep the hypothesis space alive until evidence collapses it. The question “what does this rule out?” becomes your guardrail. 5) Upgrade your vocabulary deliberately. When you encounter a recurring cluster of details, name it. Give yourself a handle. The handle can be a formal term from the field or your own shorthand, but it must point to a repeatable pattern you can recognize and use. This is how you compound. Each new concept is a new compression tool; it makes future learning cheaper. If you do this well, "complex topics" start to feel different. Not because the world got simpler, but because you stopped paying unnecessary translation costs. The deepest form of intelligence isn’t producing the shortest answer. It’s finding the abstraction level where the real structure becomes easy to express, and then refusing to overcommit beyond the evidence. So is complexity an illusion? idk you tell me. The kind of complexities people complain about are “hard to describe, hard to predict, hard to compress”, this is often a signal that your vocabulary is misaligned with the structure of the thing. The tax is rarely levied by the territory. It’s paid at the currency exchange between reality and the symbols you’re using. And the highest-leverage move, more often than people admit, is to upgrade the map.

1 views
ava's blog 2 months ago

bringing back trisanet

My wife is a historian, and sometimes, she likes to look up really old German recipes. One of those recipes was for strawberry soup from 1752. “Durchklaube die Erdbeer, und wasche sie schön, zuckers nach Genügen; gieß gemeinen oder, so du willst, süßen Wein daran, treibs durch und lass es nur einen Sud aufsieden: alsdenn rößte weißtes und würflicht-geschnittenes Brod im Schmalz, richte die Erdbeere darüber. Wenn man will, kan man ein wenig Trisanet drauf streuen.” Modern translation: “Sort through the strawberries and wash them thoroughly. Add sugar to taste, then pour over some ordinary wine—or, if you prefer, sweet wine. Pass the mixture through a sieve and let it come briefly to a boil. Meanwhile, fry cubes of white bread in lard until browned, then arrange the strawberries over the bread. If desired, sprinkle a little trisanet on top.” She was interested in making it, but it needed one ingredient she hadn't ever heard of: Trisanet. So she researched a bit further, and found out it's a specific spice mix, sometimes also referred to as ' tresenei ' or ' trisenet '. It used to be very popular in Germany, but faded away in favor of just using Zimtzucker (a mix of cinnamon and sugar), which is cheaper. There are different recipes for it as it seems to have regional variants and predates the metric units, but thankfully a kind soul online has shared these two. It mainly needs ginger, mace, cinnamon, sugar, and galangal, with some variations adding other spices like cardamom or pepper, too. My wife chose the original first listed recipe, which says: In metric units, half a pound of sugar is 255g, a Lot ginger is 16g, and a Quintlein is 4g. A modern version of Quintlein is Quäntchen and would translate to a pinch (a pinch of salt, etc.). Instead of the bark, use cinnamon powder of your choice, preferably Ceylon. Galangal was more frequently used here back then, but now is hardly available anywhere except asian grocery stores. We tried our best finding powdered galangal, but ended up buying fresh roots and drying and mixing it ourselves. My wife cut it into thin slices, and put it in the oven at 100 degrees Celsius for 3-4 hours, then let it cool down and used an electric spice grinder to turn it into fine powder. Historically, the powder would be a lot less fine. I have to say, it's been amazing and fits to a lot of different foods, no matter if sweet or salty. Even added it to a red lentil stew. I asked my wife to make a low sugar version next :) My favorite right now is making a hot beverage with it, similar to chai or salep. With a teaspoon of the powder and a bit of hot water and/or milk. We have gifted friends and family a lot of this spice mix for Christmas (we had them try it beforehand on a previous visit) and they were all delighted :) I encourage you to try it out. Reply via email Published 09 Jan, 2026 half a pound of sugar one Lot ginger one cinnamon bark one Quintlein mace one Quintlein galingale (=galangal)

0 views
Sean Goedecke 2 months ago

The Dictator's Handbook and the politics of technical competence

The Dictator’s Handbook is an ambitious book. In the introduction, its authors Bruce Bueno de Mesquita and Alastair Smith cast themselves as the successors to Sun Tzu and Niccolo Machiavelli: offering unsentimental advice to would-be successful leaders. Given that, I expected this book to be similar to The 48 Laws of Power , which did not impress me. Like many self-help books, The 48 Laws of Power is “empty calories”: a lot of fun to read, but not really useful or edifying 1 . However, The Dictator’s Handbook is a legitimate work of political science, serving as a popular introduction to an actual academic theory of government . Political science is very much not my field, so I’m reluctant to be convinced by (or comment on) the various concrete arguments in the book. I’m mainly interested in whether the book has anything to say about something I do know a little bit about: operating as an engineer inside a large tech company. Let’s first cover the key idea of The Dictator’s Handbook , which can be expressed in three points. Almost every feature of organizations can be explained by the ratio between the size of three groups: For instance, take an autocratic dictator. That dictator depends on a tiny group of people to maintain power: military generals, some powerful administrators, and so on. There is a larger group of people who could be in the inner circle but aren’t: for instance, other generals or administrators who are involved in government but aren’t fully trusted. Then there is the much, much larger group of all residents of the country, who are affected by the leader’s policies but have no ability to control them. This is an example of small-coalition government. Alternatively, take a democratic president. To maintain power, the president depends on every citizen who is willing to vote for them. There’s a larger group of people outside that core coalition: voters who aren’t supporters of the president, but could conceivably be persuaded. Finally, there’s the inhabitants of the country who do not vote: non-citizens, the very young, potentially felons, and so on. This is an example of large-coalition government. Mesquita and Smith argue that the structure of the government is downstream from the coalition sizes. If the coalition is small, it doesn’t matter whether the country is nominally a democracy, it will function like an autocratic dictatorship. Likewise, if the coalition is large, even a dictatorship will act in the best interests of its citizens (and will necessarily democratize). According to them, the structure of government does not change the size of the coalition. Rather, changes in the size of the coalition force changes in the structure of government. For instance, a democratic leader may want to shrink the size of their coalition to make it easier to hold onto power (e.g. by empowering state governors to unilaterally decide the outcome of their state’s elections). If successful, the government will thus become a small-coalition government, and will function more like a dictatorship (even if it’s still nominally democratic). Why are small-coalition governments more prone to autocracy or corruption? Because leaders stay in power by rewarding their coalitions, and if your coalition is a few tens or hundreds of people, you can best reward them by directly handing out cash or treasure, at the expense of everyone else. If your coalition is hundreds of thousands or millions of people (e.g. all the voters in a democracy), you can no longer directly assign rewards to individual people. Instead, it’s more efficient to fund public goods that benefit everybody. That’s why democracies tend to fund many more public goods than dictatorships. Leaders prefer small coalitions, because small coalitions are cheaper to keep happy. This is why dictators rule longer than democratically-elected leaders. Incidentally, it’s also why hegemonic countries like the USA have a practical interest in keeping uneasy allies ruled by dictators: because small-coalition dictatorships are easier to pay off. Leaders also want the set of “interchangeables” - remember, this is the set of people who could be part of the coalition but currently aren’t - to be as large as possible. That way they can easily replace unreliable coalition members. Of course, coalition members want the set of interchangeables to be as small as possible, to maximise their own leverage. What does any of this have to do with tech companies? The Dictator’s Handbook does reference a few tech companies specifically, but always in the context of boardroom disputes. In this framing, the CEO is the leader, and their coalition is the board who can either support them or fire them. I’m sure this is interesting - I’d love to read an account of the 2023 OpenAI boardroom wars from this perspective - but I don’t really know anything first-hand about how boards work, so I don’t want to speculate. It’s unclear how we might apply this theory so that it’s relevant to individual software engineers and the levels of management they might encounter in a large tech company. Directors and VPs are definitely leaders, but they’re not “leaders” in the sense meant in The Dictator’s Handbook . They don’t govern from the strength of their coalitions. Instead, they depend on the formal power they derive from the roles above them: you do what your boss says because they can fire you (or if they can’t, their boss certainly can). However, directors and VPs rarely make genuinely unilateral decisions. Typically they’ll consult with a small group of trusted subordinates, who they depend on for accurate information 3 and to actually execute projects. This sounds a lot like a coalition to me! Could we apply some of the lessons above to this kind of coalition? Let’s consider Mesquita and Smith’s point about the “interchangeables”. According to their theory, if you’re a member of the inner circle, it’s in your interest to be as irreplaceable as possible. You thus want to avoid bringing in other engineers or managers who could potentially fill your role. Meanwhile, your director or VP wants to have as many potential replacements available as possible, so each member of the inner circle’s bargaining power is lower - but they don’t want to bring them into the inner circle, since each extra person they need to rely on drains their political resources. This does not match my experience at all. Every time I’ve been part of a trusted group like this, I’ve been desperate to have a deeper bench. I have never once been in a position where I felt it was to my advantage to be the only person who could fill a particular role, for a few reasons: In other words, The Dictator’s Handbook style of backstabbing and political maneuvering is just not something I’ve observed at the level of software teams or products. Maybe it happens like this at the C-suite/VP or at the boardroom level - I wouldn’t know. But at the level I’m at, the success of individual projects determines your career success , so self-interested people tend to try and surround themselves with competent professionals who can make projects succeed, even if those people pose more of a political threat. I think the main difference here is that technical competence matters a lot in engineering organizations . I want a deep bench because it really matters to me whether projects succeed or fail, and having more technically competent people in the loop drastically increases the chances of success. Mesquita and Smith barely write about competence at all. From what I can tell, they assume that leaders don’t care about it, and assume that their administration will be competent enough (a very low bar) to stay in power, no matter what they do. For tech companies, technical competence is a critical currency for leaders . Leaders who can attract and retain technical competence to their organizations are able to complete projects and notch up easy political wins. Leaders who fail to do this must rely on “pure politics”: claiming credit, making glorious future promises, and so on. Of course, every leader has to do some amount of this. But it’s just easier to also have concrete accomplishments to point to as well. If I were tempted to criticize the political science here, this is probably where I’d start. I find it hard to believe that governments are that different from tech companies in this sense: surely competence makes a big difference to outcomes, and leaders are thus incentivized to keep competent people in their circle, even if that disrupts their coalition or incurs additional political costs 4 . Still, it’s possible to explain the desire for competence in a way that’s consistent with The Dictator’s Handbook . Suppose that competence isn’t more important in tech companies , but is more important for senior management . According to this view, the leader right at the top (the dictator, president, or CEO) doesn’t have the luxury to care about competence, and must focus entirely on solidifying their power base. But the leaders in the middle (the generals, VPs and directors) are obliged to actually get things done, and so need to worry a lot about keeping competent subordinates. Why would VPs be more obliged to get things done than CEOs? One reason might be that CEOs depend on a coalition of all board members (or even all company shareholders). This is a small coalition by The Dictator’s Handbook standards, but it’s still much larger than the VP’s coalition, which is a coalition of one: just their boss. CEOs have tangible ways to reward their coalition. But VPs can only really reward their coalition via accomplishing their boss’s goals, which necessarily requires competence. Mesquita and Smith aren’t particularly interested in mid-level politics. Their focus is on leaders and their direct coalitions. But for most of us who operate in the middle level, maybe the lesson is that coalition politics dominates at the top, but competence politics dominates in the middle. I enjoyed The Dictator’s Handbook , but most of what I took from it was speculation. There weren’t a lot of direct lessons I could draw from my own work politics 5 , and I don’t feel competent to judge the direct political science arguments. For instance, the book devotes a chapter to arguing against foreign aid, claiming roughly (a) that it props up unstable dictatorships by allowing them to reward their small-group coalitions, and (b) that it allows powerful countries to pressure small dictatorships into adopting foreign policies that are not in their citizens’ interest. Sure, that seems plausible! But I’m suspicious of plausible-sounding arguments in areas where I don’t have actual expertise. I could imagine a similarly-plausible argument in favor of foreign aid 6 . The book doesn’t talk about competence at all, but in my experience of navigating work politics, competence is the primary currency - it’s both the instrument and the object of many political battles. I can reconcile this by guessing that competence might matter more at the senior-management level than the very top level of politics , but I’m really just guessing. I don’t have the research background or the C-level experience to be confident about any of this. Still, I did like the core idea. No leader can lead alone, and that therefore the relationship between the ruler and their coalition dictates much of the structure of the organization. I think that’s broadly true about many different kinds of organization, including software companies. Maybe there are people out there who are applying Greene’s Machiavellian power tactics to their daily lives. If so, I hope I don’t meet them. “Organizations” here is understood very broadly: companies, nations, families, book clubs, and so on all fit the definition. I write about this a lot more in How I provide technical clarity to non-technical leaders In an email exchange, a reader suggested that companies face more competition than governments, because the cost of moving countries is much higher than the cost of switching products, which might make competence more important for companies. I think this is also pretty plausible. This is not a criticism of the book. After five years of studying philosophy, I’m convinced you can muster a plausible argument in favor of literally any position, with enough work. When explaining how organizations 2 behave, it is more useful to consider the motivations of individual people (say, the leader) than “the organization” as a whole Every leader must depend upon a coalition of insiders who help them maintain their position Almost every feature of organizations can be explained by the ratio between the size of three groups: The members of the coalition of insiders (i.e. the “inner circle”) The group who could conceivably become members of the coalition (the “outer circle”, or what the book calls the “interchangeables”) The entire population who is subject to the leader Management are suspicious of “irreplaceable” engineers and will actively work to undermine them, for a whole variety of reasons (the most palatable one is to reduce bus factor ) It’s just lonely to be in this position: you don’t really have peers to talk to, it’s hard to take leave, and so on. It feels much nicer to have potential backup Software teams succeed or fail together. Being the strongest engineer in a weak group means your projects will be rocky and you’ll have less successes to point to. But if you’re in a strong team, you’ll often acquire a good reputation just by association (so long as you’re not obviously dragging the side down) Maybe there are people out there who are applying Greene’s Machiavellian power tactics to their daily lives. If so, I hope I don’t meet them. ↩ “Organizations” here is understood very broadly: companies, nations, families, book clubs, and so on all fit the definition. ↩ I write about this a lot more in How I provide technical clarity to non-technical leaders ↩ In an email exchange, a reader suggested that companies face more competition than governments, because the cost of moving countries is much higher than the cost of switching products, which might make competence more important for companies. I think this is also pretty plausible. ↩ This is not a criticism of the book. ↩ After five years of studying philosophy, I’m convinced you can muster a plausible argument in favor of literally any position, with enough work. ↩

0 views

An Algebraic Theory of Music

In my last post, I was struggling towards an algebraic theory of music. This idea has been burning in my mind ever since, and I wanted to give some updates with where I’ve landed. We begin by modeling a musical voice , which is, roughly speaking, the abstract version of a human voice. The voice can be doing one thing at a time, or can choose to not be doing anything. Voices are modeled by step functions , which are divisions of the real line into discrete chunks. We interpret each discrete chunk as a note being played by the voice for the duration of the chunk. This gives rise to a nice applicative structure that I alluded to in my previous post: where we take the union of the note boundaries in order to form the applicative. If either voice is resting, so too is the applicative. There is also an instance here, which chooses the first non-rest. There is a similar monoidal structure here, where multiplication is given by “play these two things simultaneously,” relying on an underlying instance for the meaning of “play these two things:” If either voice is resting, we treat its value as , and can happily combine the two parts in parallel. All of this gives rise to the following rich structure: Voices, therefore, give us our primitive notion of monophony. But real music usually has many voices doing many things, independently. This was a point in which I got stuck in my previous post. The solution here, is surprisingly easy. Assign a to each voice name: We get an extremely rich structure here completely for free. Our monoid combines all voices in parallel; our applicative combines voices pointwise; etc. However, we also have a new instance, whose characteristic method allows us to trade lines between voices. In addition to the in-parallel monoid instance, we can also define a tile product operator over , which composes things sequentially 1 : The constraint on arises from the fact that the pieces of music might extend off to infinity in either direction (which must do), and we need to deal with that. There are a few other combinators we care about. First, we can lift anonymous voices (colloquially “tunes”) into multi-part : and we can assign the same line to everyone: The primitives for building little tunes are which you can then compose sequentially via , and assign to voices via . One of the better responses to my last blog post was a link to Dmitri Tymoczko ’s FARM 2024 talk . There’s much more in this video than I can possibly due justice to here, but my big takeaway was that this guy is thinking about the same sorts of things that I am. So I dove into his work, and that lead to his quadruple hierarchy : Voices move within chords, which move within scales, which move within macro-harmonies. Tymoczko presents a algebra which is a geometric space for reasoning about voice leadings. He’s got a lot of fun websites for exploring the ideas, but I couldn’t find an actual implementation of the idea anywhere, so I cooked one up myself. The idea here is that we have some which describes a hierarchy of abstract scales moving with respect to one another. For example, the Western traditional of having triads move within the diatonic scale, which moves within the chromatic scale, would be represented as . forms a monoid, and has some simple generators that give rise to smooth voice leadings (chord changes.) Having a model for smooth harmonic transformations means we can use it constructively. I am still working out the exact details here, but the rough shape of the idea is to build an underlying field of key changes (represented as smooth voice leadings in ): We can then make an underlying field of functional harmonic changes (chord changes), modeled as smooth voice leadings in : Our voices responsible for harmony can now be written as values of type and we can use the applicative musical structure to combine the elements together: which we can later out into concrete pitches. The result is that we can completely isolate the following pieces: and the result is guaranteed to compose in a way that the ear can interpret as music. Not necessarily good music, but undeniably as music. The type indices on are purely for my book-keeping, and nothing requires them to be there. Which means we could also use the applicative structure to modulate over different sorts of harmony (eg, move from triads to seventh chords.) I haven’t quite gotten a feel for melody yet; I think it’s probably in , but it would be nice to be able to target chord tones as well. Please let me know in the comments if you have any insight here. However, I have been thinking about contouring, which is the overall “shape” of a musical line. Does it go up, and peak in the middle, and then come down again? Or maybe it smoothly descends down. We can use the discrete intervals intrinsic inside of s to find “reasonable” times to sample them. In essence this assigns a to each segment: and we can then use these times to then sample a function . This then allows us to apply contours (given as regular functions) to arbitrary rhythms. I currently have this typed as where , and the outputted s get rounded to their nearest integer values. I’m not deeply in love with this type, but the rough idea is great—turn arbitrary real-valued functions into musical lines. This generalizes contouring, as well as scale runs. I’m writing all of this up because I go back to work on Monday and life is going to get very busy soon. I’m afraid I won’t be able to finish all of this! The types above I’m pretty certain are relatively close to perfect. They seem to capture everything I could possibly want, and nothing I don’t want. Assuming I’m right about that, they must make up the basis of musical composition. The next step therefore is to build musical combinators on top. One particular combinator I’ve got my eye on is some sort of general “get from here to there” operator: which I imagine would bridge a gap between the end of one piece of music with beginning of another. I think this would be roughly as easy as moving each voice linearly in space from where it was to where it needs to be. This might need to be a ternary operation in order to also associate a rhythmic pattern to use for the bridge. But I imagine would be great for lots of dumb little musical things. Like when applied over the chord dimension, it would generate arpeggios. Over the scale dimension, it would generate runs. And it would make chromatic moves in the chroma dimension. Choosing exactly what moves to make for s consisting of components in multiple axes might just be some bespoke order, or could do something more intelligent. I think the right approach would be to steal ’ idea of an , and attach some relevant metadata to each . We could then write as a function of those envelopes, but I must admit I don’t quite know what this would look like. As usual, I’d love any insight you have! Please leave it in the comments. Although I must admit I appreciate comments of the form “have you tried $X” much more than of the form “music is sublime and you’re an idiot for even trying this.” Happy new year! Strictly speaking, the tile product can also do parallel composition, as well as sychronizing composition, but that’s not super important right now. ↩︎ key changes chord changes how voices express the current harmony the rhythms of all of the above Strictly speaking, the tile product can also do parallel composition, as well as sychronizing composition, but that’s not super important right now. ↩︎

0 views
Manuel Moreale 2 months ago

V.H. Belvadi

This week on the People and Blogs series we have an interview with V.H. Belvadi, whose blog can be found at vhbelvadi.com . Tired of RSS? Read this in your browser or sign up for the newsletter . The People and Blogs series is supported by Flamed and the other 130 members of my "One a Month" club. If you enjoy P&B, consider becoming one for as little as 1 dollar a month. I’m currently a Trinity–Cambridge researcher at the University of Cambridge, pursuing my PhD on the development of climate models. I’m also a researcher on the Cambridge ThinkLab group examining the credibility of AI models. My background is in condensed matter physics, which previously led to my research in astrophysics studying a type of eruptive variable star, and that in turn helped broaden my interests in the fascinating field of the history of science, about which I remain very passionate today. I’ve enjoyed writing for as long as I can remember and I write on my website about a wide range of topics, but mostly centred around science, technology, history and society. I also run an infrequently despatched newsletter that discusses similar themes. In my spare time I make photographs and engage with my local photography club, read a lot, punt on the Cam, ride my Brompton, take long walks or participate in the Cambridge Union, which happens to be the world’s oldest debating society. To be honest, it’s quite unremarkable. I first came across the idea of a weblog through an explainer in a physical magazine. My earliest website was a bunch of hard-coded html pages uploaded to my ISP’s free subdomain. I eventually moved to LiveJournal and then to Vox, which had just been launched (and about which I still have fond memories). In 2008 I moved to Wordpress, because that’s where seemingly everyone was, and I stayed there for about eight years. Between 2016 and 2018, in search of better alternatives because I had started to feel Wordpress was bloated, I tried Kirby and then Hugo and finally Statamic. Over the years my blog has had many names, all of which are best forgotten. Today it’s eponymous. My perennial motivation has been the joy of seeing my thoughts printed on screen. The general structure I have on my website now, besides my ‘notes’, has been the structure I’ve had since the early 2000s. (My notes were on Tumblr.) Besides all that, I like that in my website I have a safe space in which to engage with a multitude of ideas and sharpen my thinking through my writing. I’m starting to get the feeling all my answers are going to be unremarkable. I don’t really have a creative process mostly because I don’t force myself to write at specific intervals for my website and because I find I do not work well with ‘knowledge gathering’ disconnected from a purpose for that knowledge. What this means is that ideas incubate in my head as I read things, and over time one, or a set of ideas, will reach critical density, prompting me to write something. Consequently, by this point I usually know what I want to say, so I just sit down and write it. I already do a lot of writing as an academic and deal with plenty of deadlines, so the last thing I want is to replicate that environment on my personal website. As a result some things I do tend to be polar opposites: I keep no schedule, I give myself no deadlines, and I publish my first drafts – warts and all – with little proofreading, or throw away entire essays at times. This is not to say I never refine my writing, but I generally try not let a sense of perfection get in my way. I also, therefore, permit myself plenty of addenda and errata. I write in BBEdit and publish from BBEdit using SFTP. I have a bunch of scripts, clippings etc. on that wonderful programme and am yet to find an equal. If I am on my mobile I use the dashboard built into my site, but usually only for fixing typos and not for typing entire essays. I may type entire notes this way, however, because notes on my website are usually quite brief. And if I ever want to make note of something for later or return to a webpage, I either save it to my Safari reading list or make a note on Apple Notes. However, I rarely make separate, atomic notes anymore (I did try to at one point), choosing instead to write a few lines summarising a source and saving the source itself. In case of my RSS subscriptions (I use NetNewsWire) I star posts for later reference but prefer to read on the actual website, as the writer intended. I can write anywhere but there certainly are some things that make writing a more pleasant experience. Good music has no equal and I prefer classical music (which varies widely from Mozart to George Winston) or ambient works like those of Roger Eno and Enya; if push comes to shove, anything without words will do. I prefer quiet places, places from where I can see the natural world around me and a warm cup of coffee, none of which are absolute necessities. The environment on my computer is probably a bit more controlled: I like to write on BBEdit, as I said before, and in full screen with, perhaps, Safari on a neighbouring workspace. My website is hosted on a VPS with Hetzner, which I also use to self-host a few other things like a budgeting software , a reference manager , Plausible and Sendy. It runs on Statamic and is version-controlled with Git. My domain is registered with Cloudflare. In the past I used mostly shared hosting. I also maintain an updated list of stuff I use daily on my website for some inexplicable reason. It costs me about £5 a month to run my website, including daily automated backups. I neither generate revenue through it now nor plan to in the future. I do not have thoughts on people monetising their personal blogs. However, if their attempts at doing so involve ruining their writing, presenting misleading content or plastering ads all over their page, I might not be inclined to return to their site or recommend it to others. I know how wonderful it felt when people showed support for my website through small donations so I like to give similarly when I can afford to do so. Amongst those who have not already been interviewed on People & Blogs, here are four people who are far more interesting than I am: Juha-Matti Santala , Pete Moore , Melanie Richards and Anthony Nelzin-Santos . (This in no way means there isn’t a fifth person more interesting than me.) I feel a strong urge to apologise for my responses but I’ll instead take a moment to nudge people to subscribe to my newsletter if that’s something they’d like, or visit my website and start a conversation with me about something either they found interesting or with which they disagree. If you have 30 min to spare, head over to ncase.me/trust/ for an interactive website designed to illustrate the evolution of trust according to game theory. But if you have less than 30 min, here’s a ‘tediously accurate scale model’ of the solar system that is the internet edition of Carl Sagan’s pale blue dot. Besides all this, I’d encourage people to help build a better, more inclusive and kinder world for everyone by engaging meaningfully both online and offline (although not at the cost of your own mental health). Slow down, read more books and please don’t lose your attention span. Now that you're done reading the interview, go check the blog and subscribe to the RSS feed . If you're looking for more content, go read one of the previous 122 interviews . Make sure to also say thank you to Paolo Ruggeri and the other 130 supporters for making this series possible. I would not waste my time on targeting niches and optimising for search engines, given my intentions with my website. I thought they were intended to grow traffic – as they are – but I came to realise that was not the sort of traffic I valued. I would prioritise platform agnosticism so I can move to better platforms in the future, should I choose to, without losing any of my work. I have lost much of my writings when jumping platforms in the past because I had to move my content over manually and chose to move select writings to save time. (Or was it because I was a bit lazy?) I would probably not delete my old work as I outgrow them, choosing instead to keep them private. I have, peculiarly and thoughtlessly, deleted my work at regular intervals multiple times in the past.

0 views