The best kittens, technology, and video games blog in the world.

Tuesday, December 20, 2022

Fun and Balance for Europa Universalis IV 1.34

Europa Universalis IV is a good game with a lot of minor issues, and the goal of Fun and Balance is to fix such small issues, to provide a "better vanilla" experience.

I created the mod long time ago, and I've been updating it every major patch. As the game changes, so does the mod, and it's been a while since I last documented the full list of what the mod is doing exactly.

I drop features from the mod a lot - usually problem areas are quite obvious to devs as much as to me, so they tend to get addressed eventually, and then my fixes aren't necessary. Occasionally a fix outlives its usefulness, but I've been trying to clean things up if they're not pulling their weight.

The mod doesn't try to affect game difficulty to a significant degree. It used to be somewhat harder than vanilla, but due to recent changes in favor systems, it's probably about even now.

So here's the full list of changes Fun and Balance makes, with their rationale. This is a fairly long list, with more important ones first.

More diplomatic relations

There are +2 base relationships, from 4 to 6. This is probably the most impactful change, and it used to be +4 before base game started adding a lot of ways to increase your relationships like Strong Duchies estate priviledge, and various monuments.

This generally increases difficulty of expanding. AI is very reluctant to go over its limit, so this change dramatically increases density of AI alliances, and makes expansion harder. Not just because there are now 2 more countries to help your target, denser network of alliances makes it a lot harder to fully isolate multiple targets diplomatically, so expansion and coalition management are both considerably harder.

As allies are a lot more important defensively than offensively, this change is a lot less useful for the player, but it enables having long term small vassals, royal marriages, or guarantees without obsessing over diplomatic slot utilization. A lot of options from the base game were very rarely used because of overly low limit.

In recent patch, with curry favors being arguably overpowered, this is less true. 2 extra allies are worth a lot more offensively than they used to. I think it still makes the game harder overall, but less so than it used to.

All strait bridges removed

Now you'll need transport ships to cross even narrow straits. This makes navies far more important, not something you need just once a game to invade Great Britain.

This surprisingly makest the game a bit harder, as AI is a lot better at dealing with such local transport than with long range invasions. Many scenarios like getting landlocked allies like Austria or Poland to help you fight Ottomans or Denmark, it's not so easy anymore.

I had to leave one, or the game would crash.

Eurocentric Institutions

Institutions were an interesting system, but they completely broke the balance between Europe and Rest of the Old World. They spread far too fast, so tech gap between Europe and India, China, or East Africa is near zero, or even goes the wrong way. That means the whole Old World plays pretty much the same way, and there's no threat of European invasion.

So the following changes have been introduced to slow down institution spread:

  • passive spread of institutions ("neighboing province has X", "friendly neighboring province has X", and "X embraced") between neighboring provinces slowed down by half - but all other spread just like before
  • spread of institutions only happens if previous institution is already present, notably you can't really get Colonialism without getting Renaissance first
  • Colonialism can only start in Europe, you can still get it as non-European from your CNs
  • dev pushing for institutions made 20% less effective - this isn't a huge change, but it prevents Korea or Ming from randomly dev pushing all institions. Realistically dev pushing as soon as possible is still optimal strategy for Rest of the Old World.
  • Harar Jugol tier 1 monument nerfed - it was giving East African every institution for free really early and breaking the system, tiers 2-3 work exactly like before

This delays spread of early/mid game institutions and should increase mid-tier tech gap somewhat, from 1-2 to 3-4. Late game none of the institutions are region-locked, so the tech gap will go away eventually, just more slowly.

The mod also reduces ahead of tech penalty from 10%/year to 1%/year. But notably you'll still be paying penalty for not having relevant institution, even if that institution didn't spawn, so realistically you can get techs 1-2 tech ahead of time.

Between these two changes, Europeans can be scary again. But I've also seen AI Delhi exceed AI Commonwealth's tech levels even with institution penalties, so don't expect return to EU3 style tech gap here.

Religious leagues for all Christian denominations

In vanilla Catholic vs Protestant religious leagues can trigger. The mod adjusts the code so that all Christan denominations can do it. If 4/7 electors follow specific non-Catholic denomination, they can even happen very early, long before the usual time.

In a typical game, Protestant is still the most likely to trigger, with smaller chance of a Reformed league, and very remote chance of a Hussite one. But if you're playig with a custom non-Catholic nations, or specifically trying to spread some other religion like Hussite, Orthodox, Coptic, or Anglican, you can now do it.

More formable countries

Every culture has primary tag, and I made it possible to form most of them, changing your traditions, and missions. Some are not included if there are already obvious regional goals like Bharat, China, Russia etc. AI will also occasionally do this.

There aren't any obviously overpowered choices here, as end game tag formables usually get a lot better traditons and missions than regular countries. You can get a few decet ones, but it's mostly for more roleplaying options.

The "end game tag" check for formable tags is also disabled for the player, but AI playing as end game tag will still not form any other tags.

Disabled anti-player mechanics

EU4 is mostly fair between player and AI, but it has a few baffling mechanics where AI gets to cheat. These are removed.

Naval attrition form being at see, player-only in vanilla, is removed.

Call for Peace, also affecting only the player and never the AI, has no consequences now.

All coutries with capital in Asia can get Mandate of Heaven

This mostly gives additional options to Muslims and Hindus. Or you could go crazy, move Pope's capital to Jerusalem, and make the Pope be Emperor of China as well.

Restore Roman Empire works with subjects

Restore Roman Empire has extremely long list of provinces it needs, and they needed to be held directly, so a random PU could block you from getting it. Changed the decision so you can use it if (non tributary) subject holds them.

Trade map changes

Vanilla trade map makes it impossible for Asian to benefit from New World trade, just to let Europeans get Philippines. While historically it makes some small sense, it almost never happens in real gameplay - Europeans who colonize Asia get trade through Cape or Alexandria not through Mexico. Reversing direction of Pacific trade lets Asians get trade from New World's West Coast.

Casus Belli changes

CBs with locked out peace terms have been fixed to allow them. They're mostly useless or extremely niche, in base game. You'll still pay full cost for any such term, same you would without a CB. The biggest effect on the game is that you can declare war on your rival in December 1444 without waiting for fabricated claims and get some (undiscounted) land.

If both you and your subject have religious ideas, you can get CB on a country that your subject borders, but you don't. This doesn't significantly increase your ability to get CBs, as you could usually get one province to border your target, but it reduces bordergore slightly.

Coalition wargoal is defend capital (like it was in early patches), not win battles. Winning battles wargoal in EU4 has a lot of issues, and normally this is fine, but for coalition wars, you can get to situations where you're winning in every objective way, didn't lose a single battle, but your allies accumulated so many tiny battles lost that it would take you decades to convince the coalition to end war, while they can stab hit you every month. This isn't the most common, but it happened enough times that I decided to change it.

As defender in war you get 50% AE discount, instead of vanilla's 25%. EU4 makes being defender awful, as you don't get any CB discounts, so this brings some balance into it. It's still better to be the attacker generally, as you get your choice of CB, and most give decent discounts.

Maximum amount of gold you can get from a peace deal is doubled from 25% of warscore to 50%. This makes it slightly more worthwhile to get something from war when you don't want to take land. It's still far less than what EU3 or early EU4 allowed.

AI insistence on staying in war due to war being too short reduced by 1/3.

Power projection changes

I'd love to replace rival system completely, so that any Great Power can rival any other Great Power within range. Usually you get very limited choice of rivals beyond very early game. Sadly this is not possible, the rival system is nearly hardcoded.

The mod increases max distance for rival by 1/3, which seems to be the right number to give some flexibility without too many weird rivalries.

Power projection from rival related issues increased somewhat, and decaying more slowly, mostly to avoid nonsensical situations where you're too strong to get any power projection, as game won't let you pick rivals. I'd much rather fix rival selection, but that's not possible to mod.

Subject and opinion changes

Max hard cap of dev for diplovassalizing increased from 100 to 300. You'll still need a lot of factors to get anywhere close to that number.

Opinion penalty for annexing vassals capped at -100. In base game it could build up to ridiculous numbers if one of vassals was impossible to annex for some reason while others kept getting annexed over longer time. It was always possible to reset it to 0 by not annexing vassals for 20 years, but tracking exact date is just awkward as game does not show it anywhere. Capping it improves gameplay.

Supporting independence gives bigger relation boost, can be done from lower starting opinion, and AI doesn't care as much about having too many relations when it can support independence. All this modestly increases independence support.

Colonial Nations now consider their own power (as well as that of their supporters) for liberty desire, but to balance it out gets -25% base liberty desire. In base game supporting independence of a colonial nation does not increase liberty desire at all. This overall makes holding onto colonial nations as a very weak colonizer harder, most commonly Portugal might struggle with it, if it loses its army in war and its rivals support CN's independence. But it's still a modest factor.

Quite a few vastly excessive opinion penalties got reduced to sensible levels.

Unlawful HRE territory is capped at -50 to prevent spam. Violating treaty of Tordesillas is capped at -50.

Pirated us cap changed from -100 to -25. It really made no sense that countries would be more bothered by some minor piracy than by declaring war on them and occupying all their land, and it interfered with diplomacy as AI just loves spamming piracy. Converted our culture penalty cut from -30 to -5 and capped at -100.

More building slots

Building limit increased by +1 base, and from +1 per 10dev to +1 per 5dev.

This was much more aggressive previously, but I toned it down once game made Courthouses not take building slots, effectively giving every province +1 slot.

Extra slots mostly allow a bit more flexibility with buildings, and they benefit smaller richer countries more. Especially AI as it's bad at using its slots well. Big poor countries which can't fill their slots benefit from it the least.

Unlock regional features

The mod lets everyone claim whole areas, not just individual provinces. It was locked to Russia in base game. I originally wanted to make it available at empire tier only, but last time I checked that didn't work without making separate empire versions of every government reform. In any case, this mostly reduces border gore, and saves you a modest amount of diplomatic power early game.

Catholic Holy orders are unlocked so all Catholic can use them, not just Iberians.

Covert actions changes

Covert actions are massively underpowered, so they're buffed across the board.

Stealing maps cost reduced 50 to 20. Infiltrate administration cost 40 to 20. Agitate for liberty cost 90 to 50. Slander merchants cost from 70 to 20.

Agitate for liberty and infiltrate administration unlocked without requiring any tech.

Supporting rebels made significantly cheaper and more effective.

Even with all this aggressive buffs, none of these are particularly strong.

Custom nation tweaks

Max tier of ideas increased from 4 to 10, at costs following the curve, so you'll spend a lot of points on high tiers.

Penalty for max ideas from same group removed, as it's mostly for roleplaying.

Max distance between provinces increased from 400 to 1000, again for roleplaying.

Base monarch skill changed from 2/2/2 to 3/3/3, which is actual average.

Religious rebels changes

Religious rebels increased in priority, so a province with missionary is likely to spawn religious rebels, even if other kinds are also possible. They also always want to convert your country, even Pagan rebels, and province targetting weights changed to be more interested in going after provinces they can convert or provinces with a missionary.

Religious Shift Decision

If your capital has a different religion, you can pay 3 stability to shift to that religion, similar to CK2. AI will not use this.

This is an alternative to the very frustrating experience of hoping that religious rebels will do what you want - but if you can use rebels, that's a way to get free conversions and not lose stability.

Balkan Changes

Europa Universalis IV makes a lot of highly questionable decisions for Balkans, trying to railroad Ottomans as end game boss, at expense of making a lot of things nonsensical. Ottomans do not need any help, they'll be end game boss even if we fix things.

Ahistorical "Byzantium" renamed to "East Rome". It is also primary tag for Greek culture. Concept of "Greece" as a country is an invention from 1800s', Greek-speaking Romans saw themselves as Romans well into EU4's end game. It's also possible to form it as Romania, Ottomans, or HRE, if you're Greek Orthodox.

Turkish moved to its own culture group.

"Carpathian" culture group removed. Slovak moved to West Slavic, as it was really nonsensical that it was a different culture group from Czech. The rest merged with South Slavic into "Balkan" culture group. Notably Greek is still not in it, and I'm wondering if it should (together with two micro-cultures in its group).

Ottoman decision to move capital to Constantinople does not do free culture and religion conversion.

You can declare wars in regency

This was a pointless restriction nobody needs.

Improved bad idea groups

Some idea groups - notably Naval and Maritime - are just awful, so I tried to improve them somewhat.

The mod used to give Naval extra leader slot so it can recruit some admirals, but game changed its mind and increased leader slots to such high numbers you'll never need more, especially not admirals.

It still gives Maritime +1 merchant and +50% light ship trade power. To be honest, it's still so low tier I'm not sure anyone would take it even with the buff.

War Exhaustion changes

In vanilla War Exhaustion is largely just a tax on diplomatic power. The mod changes it so cost to reduce it is doubled if you're at war. Originally I disabled it completely, but sometimes you get stuck at long term fake war due to your allies, and I didn't want you to be stuck with big war exhaustion in such case.

War Exhastion gets reduced at peace twice as fast. It also convinces AI to peace out twice as much.

Other changes

Tradition from battles doubled, so it's influenced somewhat more by actually fighting or not, and somewhat less by forts and idea choices.

Costs to change culture, move capital, or move main trade port halved, as they were all seriously excessive. In a typical game you'll not use any of these features.

Limit of idea groups from same category removed, but that's already an option when you start a new campaign.

You can customize it

If you want to customize your experience, I tried to keep different changes separate, so you can adjust or delete any tweaks.

Overall the mod isn't trying to make it a completely different game, just a better version of what it could be.

I play about one campaign per major patch, plus run a lot of AI simulations to see if the changes work as intended. But it's definitely possible that some of the changes have serious side effects. If you play Fun and Balance, and have issues with either fun or balance, let me know.

Friday, May 06, 2022

Chinese Lockdowns

A few weeks ago I wrote Pandemic Retrospective. Events since then pretty much confirmed everything I wrote.

The West got over covid. It's still there, but old people are overwhelmingly vaccinated, so nobody cares.

Meanwhile, China is doing its best to implement Zero Covid policy. OK, so here's what I wrote back then:

There's also an interesting idea for stage 1, to totally close not just countries but each city and region, and wait for covid to disappear there, before reopening only borders between covid-free areas. But this would only work if external country borders were closed as well, and it would be extremely disruptive. China sort of did that initially, but nobody else really tried that at all.

And what China did 5 days after I wrote that post? Literally what I said, on a much larger scale than in 2020.

Chinese lockdown is based on setting up borders. Not just external borders, and just borders outside cities, but borders between districts inside cities. It's extreme borders more than extreme lockdowns.

Instead of closing factories, China converts them to a closed system, where workers live in their workplace, so they don't need to cross internal borders. That's something Europe never considered, travel was open for "essential workers" which were a huge chunk of the population, far too great for covid to be possible to contain.

It's unclear if this will be enough to achieve Zero Covid - so far the signs aren't too great, but let's imagine they do. Whichever way it goes, one thing it proves beyond any doubt is that European approach - late severe lockdowns without corresponding external or internal hard borders - didn't have the slightest chance of ever working. European style lockdowns were completely 100% counterproductive.

And since I'm in a prophetic mood, Ukraine will destroy Crimea Bridge.

Tuesday, March 29, 2022

Russia is Doomed

I drafted this post last year, with this exact title, but I ended up writing the 100 Programming Languages Speedrun instead, and didn't have time to finish it. I'm feeling a bit silly now. Anyway, nothing here is in any way related to the Russian invasion of Ukraine, so just imagine that this was posted before all that.

Russia is a regional power like Italy, Turkey, Brazil, or Saudi Arabia, LARPing as a superpower. It's baffling that people actually buy that, and think that Russia is some kind of a global superpower like US or China.

If you look at GDP or population, Russia is really unimportant. Projected population growth for Russia looks even more miserable than for the West, and their economic growth potential is very poor if you exclude two sectors.

Now Russia has two important things going for it, but here's why both will end soon.

Fossil fuel exports

Russia's biggest strength is its fossil fuel exports. If you look at export statistics, they constitute about 50% of all of Russia's exports. Exact number varies year to year based on their prices. Russia has been called "gas station masquerading as a country" for a good reason.

This is not sustainable. I despise virtue signaling over climate, but regardless of that, renewables technology is ceaselessly advancing. We already reached the point where renewables, with reasonable subsidies, are almost competitive with fossil fuels for electricity generation during good parts of the day. The main problems are intermittency of renewables, use of fossil fuels for transportation, and cost of switching all the existing infrastructure.

The first two can be solved by cheap batteries, and battery cost fell about 90% over the last decade, with little reason that this will stop. And given enough time and money, existing infrastructure will get replaced.

Full replacement of fossil fuels will take many decades, but this is not a growth sector. And Russia has nothing to replace it with. Other raw natural resources bring a small fraction of that money.

Green useful idiot

One thing Russia succeeded in doing, is funding "environmentalist" group that oppose European energy independence. Europe could have been far closer to energy independence already if it proceeded with fracking, nuclear, clean coal, and other technologies, just as US have done. It took US twenty years from being in just as deep shit as Europe to being a net energy exporter. All it took was political will.

However "environmentalist" groups, some receiving substantial Russian funding, others being Putin's useful idiots, managed to prevent European energy independence, and made Europe more dependent on imports from Russia for the time being.

Also did I mention recently that this guy should hang from a lamp post for treason, and it's a disgrace to his whole country that nobody hanged him from a lamp post or other suitable object yet?

Anyway, while this has been extremely successful Russian subversion of democratic countries, in the long term it won't matter, as it will be possible for just about any country to just buy enough batteries, solar panels, and EVs to gain energy independence.

Weapon exports

The second thing Russia has going for them are their exports of military equipment.

Russia is targetting mid-tier market. Their equipment is much worse than top-tier exports from the US, but it's a lot cheaper, and still a lot better than low-tier weaponry poorer countries can manufacture locally.

This is going to unravel really quickly, much faster than energy exports. The reason is China. China has been trying to build weapon export industry, and there's nothing that could possibly stop them from succeeding.

Chinese industry outproduces Russian industry 20:1 and the gap is growing every year, China has amazing track record at going from low-tier to mid-tier in any key industry it wants. That's what happened to far more competitive low-tier and mid-tier smarphone market over just a few years. The high end is safe - be that Apple and Samsung or US and other NATO military equipment. And countries can do their own low-tier basic stuff like rifles if they really want to. But China is amazing at going after the whole global mid-tier market.

I don't know why nobody talks about this, but it's pretty much guaranteed that the same will happen with Russian weapons exports. China will dominate this. And other mid-tier competitors like Turkey are also trying to break into this market, all at Russia's expense.

Why military exports matter?

Weapons exports are not a huge money maker for Russia. Overall global weapons trade is about $100bln a year, just 0.5% of $20,000bln a year global trade.

This is important to Russia for two reasons. First is that modern weapon development is horrendously expensive. Spending all that R&D money and your own military being the only buyer, translates to enormous unit cost. Even US can just barely get away with it, and non-exportable F-22 was in retrospect a huge mistake, compared with exportable F-35.

Russia is just far too small a country to even attempt creating any modern non-exportable weapon systems.

The second reason is that weapon exports give Russia a lot of political influence among world's poorer countries. It's hard to criticize what Russia is doing, after your minister of defense took Russian bribes to get them to win the contracts, and now your air force is now made of Russian planes, and Russia is the only source of spare parts.

This is not going to last. Oven the next few years Chinese offers will be better, cheaper, and for most countries less politically toxic, than Russia's.

There will be some markets left, like India might be unwilling to buy from China, and too corrupt to buy from the West (which is far less willing to engage in outright corruption necessary to win military contracts), and too poor for high-end gear anyway, so they might still buy worse Russian jets over better Chinese ones. But overall, this part of Russian economy will collapse even faster than their energy exports.


As it turns out, I was late with this post. Europe is now scrambling to reduce their exposure to Russian fossil fuels, and Russian weaponry turned out to be a lot worse than advertised, so both sectors might collapse a lot sooner than I thought.

By my original guesstimated times for these, Russian energy sector would go into serious decline in 2030-2040 kind of range, but their weapon exports likely as soon as 2025-2030, while Chinese weapon exports would skyrocket just like their smartphone exports did.

People are now willing to talk about Russian fossil fuels, so that take isn't all that hot anymore. However, I haven't heard a single other person even entertaining the second point of the inevitably coming Chinese (and surprisingly Turkish) competition crushing Russian weapons exports.

Wednesday, March 23, 2022

Pandemic Retrospective

There won't be anything too controversial here, just a bit of big picture view.


Covid-19 is not over, and there's no indication that it will ever be eradicated, there are just a lot more important things going on right now.

So far the only established human disease we managed to eradicate was smallpox. Polio eradication efforts have largely stalled, with little progress since year 2000. I still have some hopes that we'll win over polio, but the chance of total elimination of covid-19 in any realistic timeframe is essentially zero.

The most outcome is that covid will be just another seasonal disease like the flu, with us for the long run. This is mostly fine, as going forward, most people will get exposed to mild infection when they're young, and by the time they're old and vulnerable, they'll have some degree of immunity, from some combination of previous infections and vaccines.

Age is the main risk factor, far greater than anything else. Every extra 20 years means 10x higher death rate, or in other words every additional year of your life is extra 12% risk of death if infected.

This is a good way to put things in perspective. For example according to the few RCTs we have, masking (with a real medical mask) may offer about 10%-20% reduction in infection chance, with no reduction in severity of symptoms in case of infection. So you're about as vulnerable masked in 2022 as you'd be unmasked in 2021, just because you aged enough to counter all that benefit. And "masking" with non-medical mask doesn't seem to do anything at all.

Vaccination with regular boosters may reduce risk of death by about 80%-ish, equivalent to being about 15 years younger. So a fully vaccinated and boosted 40 year old is at about as much a risk as completely unvaccinated 25 year old. There doesn't seem to be much reduction in chance of getting infection in the first place, mostly reduced severity.

It's often underestimated just how much covid is a single-risk-factor disease, that factor being age. For example obesity increases risk of covid death by 25%. So 40 year old obese person is at as much risk as 42 year old healthy weight person.

I think it's a useful visualization tools to translate all relative risk factors into equivalent age differences.

Risk of hospitalization and other serious health outcomes roughly follows risk of death, with similar risk increase for every additional year of age.

Anti-Covid Measures

There are three stages at which we could intervene to prevent covid deaths (and other severe outcomes):

  1. prevent pandemic from getting to your country in the first place
  2. reduce spread of infection once there's already community spread
  3. reduce chance of death for an infected person

A lot of measures have been taken, but only two have been very highly effective:

  • total border closures (step 1)
  • vaccinating old people (step 3)

Everything else did either nothing, or had minor effect, or was outright counterproductive. These include such measures as:

  • bank account closures
  • contract tracing
  • firing people for having different opinion
  • hand washing
  • ivermectin
  • lockdowns
  • mask mandates
  • masking
  • mass event closure
  • partial border closures
  • quarantines for travelers
  • riots
  • school closures
  • social media bans
  • stimulus checks
  • testing
  • vaccinating low risk people
  • vaccine mandates
  • voluntary masking
  • work from home
  • etc.

In the end, none of them had a big impact on the death rate. Notably almost all the measures attempted to target stage 2 (reduce infection rate once it's already established), and for covid that was simply the least effective stage to target.

The most unexpected thing about covid is that stage 1 interventions (total border closures) were extremely effective even after covid already got established. The original Wuhan lab leak variant was just not all that infectious, so closing borders and preventing much more infectious subsequent variants from coming in was an extremely successful approach, even in absence of other interventions. Japan is a good example of this combination.

Cargo Culting

A huge problem with global pandemic response is that countries threw away all established science, and mindlessly copied what other countries were doing, even if it was completely ineffective. So instead of 200 different policies we could meaningfully compare, it's largely same ineffective policies tried over and over.

Knowing just country age structure, border closures, and vaccination rates among old people, we can fairly accurately estimate pandemic severity, throwing away all other information.

Arguably the main problem with global pandemic response was that everyone was cargo culting part of Chinese response that was pointless (lockdowns), and in a half-assed way that couldn't have possibly worked anyway; and they did not copy the part of Chinese response that actually worked (total border closures).

What Was Not Tried

In retrospect was can safely say that nothing targetting stage 2 would have worked. Any response strict enough to eradicate transmission after it was well established would just completely crash the economy, and with borders even partially open, covid would get back in anyway. And if you closed the borders, then you didn't need to be that strict in the first place (see Japan again).

At least none of such interventions would work if they targetted general population. We could have absolutely done crazy strict lockdowns of nursing homes specifically. About a third of all covid deaths in US was in long-term-care facilities, and these are not economically significant. We could have completely isolated them from the rest of the population (food delivery in full body ppe suit kind of isolation), and likely avoided 1/3 of all covid deaths. By moving more old and vulnerable people into similar protected environments, deaths could have been reduced even more.

Nobody really tried that, and there's been overwhelming lack of interest in any interventions that segregated people by risk level. If we did something more along the lines of:

  • no restrictions of any kind on under-30s
  • some modest risk reduction recommendations for 30-60s (no mass events, work from home recommendations, masking on public transport recommendation etc.)
  • total lockdown for 60+s

That would be far more effective and far less destructive than what actually happened. To repeat the basic fact, 20 years of age difference means 10x risk of death difference. There's no sane way to treat kids and elderly the same, and that's what all countries did.

More idiotically, students were often restricted far more than adults, just because schools have far too much power over students' personal lives. It was cruel, and it did nothing to help with the pandemic.

There's some stage 3 interventions that could have had a meaningful effect, but weren't attempted.

The most notable one that would be mass vitamin D supplementation, as pre-infection vitamin D levels correlate very strongly with risk of death, and vitamin D insufficiency has been widespread in most modern populations. For people with most severe deficiency, effect size looks about as big as vaccines, based on observational studies. It would be much smaller averaged over entire population, as not everyone is as severely deficient. Unless you know that your vitamin D levels are adequate, you should absolutely get daily supplement, especially during winter, and not just for covid.

There's also some new antiviral drugs that could reduce risk of death. They happened late in the pandemic, but I guess if someone writes similar retrospective in 2025 they might get added to the list of interventions that made a big difference.

There's also an interesting idea for stage 1, to totally close not just countries but each city and region, and wait for covid to disappear there, before reopening only borders between covid-free areas. But this would only work if external country borders were closed as well, and it would be extremely disruptive. China sort of did that initially, but nobody else really tried that at all.

Who Predicted It Correctly?

Nobody at all.

Pre-pandemic expert consensus was very strongly against lockdowns, border closures, masking, and most other measures that ended up happening. Pretty much none of that was followed.

Epidemiologists' models were all universally worthless, and the whole field of epidemiology turned out to be about as reliable as social psychology.

Governments were both extremely incompetent and openly lying. The media were even dumber than usual. Social media companies were banning people for saying true things.

I don't think even any individuals got it right. As far as I know, nobody predicted either of these:

  • the initial Wuhan Lab variant was no big deal, the variants were a big deal, so total border closures would be super effective even after Wuhan lab leak variant was already there
  • vaccines would be developed very quickly, but they'd only offer big redution in severity and risk of death, and wouldn't meaningfully reduce infection rate, so mass vaccinating old people was really important, but any mass mandates are pointless

I don't think anything useful came out of prediction markets either.

Who Did Well?

The private sector did amazingly well. Rapid transformation of big parts of the economy from office-based to remote-first was amazing, and we should absolutely embrace the remote-first world, even if it made little difference for covid.

Similarly supermarkets, restaurants and so on switched very effectively from location-based services to delivery-based services. Restaurants have a lot more reason to exist than offices, but this shift is likely permanent, and a much bigger share of the economy will be online or delivery-based going forward.

Big Pharma did quite well. Multiple vaccines were developed in record time, of kind not used ever before, for kind of a virus that never had an effective vaccine before. Tests, antivirals, and so on were also developed very quickly.

What It All Means For The Next Pandemic?

Very little actually. Covid-19 had so many unusual features, there's no reason to expect the next one to be like that.

Wednesday, March 09, 2022


A small announcement. Mostly as a way to play with Crystal, I created Crystal bindings for Z3 library, and I think it might be quite usable as a MVP.

Check included examples and specs for how to use it.

Monday, March 07, 2022

New series - Open Source Adventures

I started a new series last week, Open Source Adventures. It's not terribly focused, it will be some random unrelated Open Source things I wanted to do. The first mini-project is Z3 support for Crystal programming language, but I'll jump to some very different subjects.

Just like with previous two series, you can read it on or hashnode.

The code for the series, unless it has specific reason to go elsewhere, will go to this repo.

Thursday, February 24, 2022

100 Languages Speedrun Finished!

About 100 days ago, I started the 100 Languages Speedrun series. It is now finished.

You can read all 100 episodes, as well as two bonus episodes - Tier List, and Series Retrospective.