Compare commits

...

52 Commits

Author SHA1 Message Date
Nuno Sempere 444648619c fix github markdown artifacts
10 months ago
Nuno Sempere b37666c610 add post, with typos fixed.
10 months ago
Nuno Sempere 5b2439711c savepoint
10 months ago
Nuno Sempere b02b9346b4 add melancholy image to post
10 months ago
Nuno Sempere cfef2cf3f8 replace more imgur images
10 months ago
Nuno Sempere 205eefd39b update blog/2022/11/20/brief-update-ea-funding/ to not use imgur
10 months ago
Nuno Sempere b3322f6191 fix iframe embedding to fix mobile view
11 months ago
Nuno Sempere b8d33c290c add blogpost, update index.md
11 months ago
Nuno Sempere 052364fc04 regular savepoint
12 months ago
Nuno Sempere 75ac10098e feat: add post.
12 months ago
Nuno Sempere ee4f510cd8 fix: imgur
1 year ago
Nuno Sempere ff6a29d28a more imgur replacements
1 year ago
Nuno Sempere e51c179167 more imgur updates
1 year ago
Nuno Sempere 1f80f35820 update to non-imgur images
1 year ago
Nuno Sempere 1c17a09954 remove "me in 2022" series of gifs
1 year ago
Nuno Sempere c7abc480fa reorg after imgur tweaks
1 year ago
Nuno Sempere 056da744a8 tweak: some tweaks
1 year ago
Nuno Sempere 062d1d6c29 cleaup: re imgur
1 year ago
Nuno Sempere 6d83a7e98d cleanup: after imgur
1 year ago
Nuno Sempere 58443232fd cleanup: after imgur
1 year ago
Nuno Sempere 5ed19e0164 more cleanup after imgur
1 year ago
Nuno Sempere e9383e9ed0 Revert "to be reverted"
1 year ago
Nuno Sempere 676560c948 to be reverted
1 year ago
Nuno Sempere 11a56f882e more cleaning up
1 year ago
Nuno Sempere 8e6d3353fa update imgur stuff
1 year ago
Nuno Sempere 7d5e7aa0ef tweak: start substituting imgur
1 year ago
Nuno Sempere 2045439e1f update gossip and consulting pages.
1 year ago
Nuno Sempere 08efee6bf8 update blogpost
1 year ago
Nuno Sempere 69b31ce3ef feat: add new blogpost.
1 year ago
Nuno Sempere b932577bfa tweak: update and reorder forecasting and research pages.
1 year ago
Nuno Sempere 290d51b92b feat: add consulting page, a few blogposts
1 year ago
Nuno Sempere 3b9b00acd6 feat: add new blogpost
1 year ago
Nuno Sempere 6a78c703ab tweak: save progress.
1 year ago
Nuno Sempere e440a43138 feat: add blogpost
1 year ago
Nuno Sempere 46a9def0d3 tweak: savepoint
1 year ago
Nuno Sempere 4afe0cc11e feat: savepoint
1 year ago
Nuno Sempere f6f2b63696 feat: savepoint
1 year ago
NunoSempere 88ce1d0ed7 feat: add yearly indexes
1 year ago
NunoSempere 2ffa7b08fa feat: add blogpost on bets on the EA Forum
1 year ago
NunoSempere 4c62563ade tweak: solomonoff tweaks
1 year ago
NunoSempere 08c7a78b9d tweak: add clarification
1 year ago
NunoSempere b118f69cf4 tweak: fix word
1 year ago
NunoSempere 0a79797a3e fix: typo
1 year ago
NunoSempere 4086ec8671 tweak: more typos
1 year ago
NunoSempere df8a63ef88 tweak: reorg
1 year ago
NunoSempere fb0efb6332 tweak: formatting
1 year ago
NunoSempere 6dcb410ee5 fix: formatting
1 year ago
NunoSempere 57cbb1e9ec fix: typo
1 year ago
NunoSempere 697ea68089 feat: add more solomonoff changes
1 year ago
NunoSempere ad65ae7e18 feat: add tex.
1 year ago
Nuno Sempere 99fc9fc9ee tweak: rp bayes tweaks
1 year ago
Nuno Sempere a1d7bf6d80 feat: add computable version of solomonoff induction
1 year ago

@ -23,5 +23,5 @@ There previously was a form here, but I think someone was inputting random email
</form>
<p>
The reason why I am asking for subscribers' names is explained <a href="https://nunosempere.com/.subscribe/why-name">here</a>.
The reason why I am asking for subscribers' names is explained <a href="https://nunosempere.com/.subscribe/why-name">here</a>. Frequency is roughly once a week.
</p>

@ -1,410 +0,0 @@
# How to create an autarchic website
> Where to host the blog: Our Recommendation: Use Substack or try out a hosted Ghost website—its a Goldilocks solution of easy-to-use but highly customizable. Ghost makes for a great portfolio site, blog, and newsletter service.
[Effective Ideas: Where to host the blog](https://effectiveideas.org/how-to-start-a-blog/#pt3)
No. Vat do I vant, and in vat order? Uncensorability, ability to ramp up degrees of privacy and paranoia, control over ze whole stack, and finally, ze modern comforts. Vith that in mind, I present my guide to uncensorability.
What is this meant for? Some recent examples:
- The Canadian government [grossly overreached against Canadian truckers' freedom of speech](https://twitter.com/punk6529/status/1494444624630403083).
- [Youtube-dl was banned by Github](https://www.eff.org/deeplinks/2020/11/github-reinstates-youtube-dl-after-riaas-abuse-dmca).
- [EFF Sues Proctorio on Behalf of Student It Falsely Accused of Copyright Infringement to Get Critical Tweets Taken Down](https://www.eff.org/press/releases/eff-sues-proctorio-behalf-student-it-falsely-accused-copyright-infringement-get).
## Index
1. Preliminiaries
- Introduction (^)
- Get a password manager
- Get an email
2. Get a server
- Register a domain
- Get a server
- Point your domain to your server
3. Set up a simple server
- Create and set up users
- Install nginx
- Get nginx working with a simple website
- Install TLS certificates
4. Into the rabbit hole
- Install plan9port
- Install werc
- Configure werc
- Install discount markdown
- Configure nginx to work with werc
- Install fcgi
## 1. Preliminaries
### Get you a password manager for great security
For this, I recommend [pass](https://www.passwordstore.org/) (see also the [archlinux wiki](https://wiki.archlinux.org/title/Pass)). Simple, secure.
To generate a password independent from pass:
```
function newpassword(){
characters="\!#\$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_\abcdefghijklmnopqrstuvwxyz{|}~"
# ^ excludes `
length=25
read -r -n $length new_password < <(LC_ALL=C tr -dc "$characters" < /dev/urandom)
echo $new_password
} ## Taken from pass generate. Maybe save this in your .bashrc
newpassword
pass insert -m autarchy/protonmail ## Then save both the email address and the password.
## You can then recall your password with pass show autarchy/protonmail
```
Personally, I've found it useful to wrap `pass insert -m` into an extension for pass (pass [append]()). I also found it useful to have a utility for [searching passwords](). And, as always, [backup](https://github.com/8go/pass-backup) stuff.
### Get an email
[Protonmail](https://protonmail.com/) is fine.
Mad Eye Moody recommends: Don't give Protonmail a backup email. Instead, make sure to make backups of your passwords. You can access Protonmail over [Tor](https://torproject.org/) [here](https://mail.protonmailrmez3lotccipshtkleegetolb73fuirgj7r4o4vfu7ozyd.onion). For added paranoia, you can register an [XMPP identity](https://www.shad0w.io/) instead of an email address. Also, do your own research on which service providers are the most secure.
## 2. Get a server
### Register a domain
For zis, ve will use, of course, [njal.la](https://njal.la/). The're the non-evil twin brother of [Epik domains](https://www.epik.com/). From their [FAQ](https://njal.la/faq/):
> We're a team of committed internet activists and we're also involved in other privacy projects such as the IPredator VPN service. Some of us have also been involved in projects like The Pirate Bay and Piratbyrån to mention a few things.
> We support signing up for our service using email or XMPP (and yes, we use OTR). For email we also support PGP so all of our outgoing email will be signed and encrypted.
> We accept payments via Bitcoin, Litecoin, Monero, ZCash, DASH, Bitcoin Cash, Ethereum and Paypal.
They also have [a blog](https://njal.la/blog/) vere they record takedown requests. All in all, zis is ze good stuff.
For this, you will need to setup an account on njal.la, using the email you previously created
```
newpassword
pass insert -m autarchy/njalla-account ## save both password and user
## You can later recall this with pass show autarchy/njalla,
## or with pass reveal njalla if you installed that extension
```
Mad Eye Moody recommends: Use [tornado cash](https://tornado.cash/) to anonymize your transaction history before paying njalla. Check which top-level domain names are [more uncensorable](https://www.eff.org/files/2017/08/02/domain_registry_whitepaper.pdf) (from casual reading, I would go with .br, .cr , .is, .org, .ru, of which njalla supports only .org and .ru). If if we wanted further anonymity and uncensorability, [set up an onion service](https://community.torproject.org/onion-services/setup/).
### Get a server
Previously, I had been using an Ubuntu server on [Digital Ocean](digitalocean.com), which offers servers from $5/month ($6/month including backups). But I have grown to dislike my system having 1GB worth of stuff that I don't understand. I also dislike wrangling with systemd services.
So I thought it would be fun to try Alpine Linux on [Njal.la's own servers](https://njal.la/servers/add/). This costs $15/month instead.
When buying a server from Njalla, we need to name it. And we will name it [`ramiel`](https://en.wikipedia.org/wiki/Ramiel) [^1]. We will also need to generate an ssh key to connect to it. The command to do this is `ssh-keygen -t ed25519`. After paying for our server, we'll want to set up payment to autorenew.
[^1]: Why Ramiel? Because Uriel is dead
### Point from your domain to your server.
Add a DNS record pointing from your domain to your server. In particular, you want an A record. Note that it might take a while for it to propagate, so at this point, you can either:
- Wait for ~24 until your server and domain name are connected
- Set up your users and a minimal nginx installation. This requires some additional fiddling, and I will not document it here.
## Step 3: Set up the server
### Set up a new user
We can connect to our server with
```
ssh root@your_ip
```
Then add some essential tooling:
```
apk add vim
apk add sudo
apk add git
```
Strictly speaking you could do everything as root, but this feels dirty. Instead, we will create two new users, one root user for admin tasks, called `ramiel`, and one user for normal operation of web assets, named `www`. The below process probably contains some bugs, which stackoverflow or the alpine and arch linux wikis should solve.
To create a new root user:
```
adduser ramiel
apk add doas
adduser ramiel wheel
mkdir -p /home/ramiel
mkdir /home/ramiel/.ssh
```
Then, add `permit persist :wheel` to `/etc/doas.d/doas.conf`
Then use [visudo](https://unix.stackexchange.com/questions/27594/why-do-we-need-to-use-visudo-instead-of-directly-modifying-the-sudoers-file) to add `ramiel ALL=(ALL) ALL` to `/etc/sudoers`.
Lastly, allow yourself to log into the server as this new user using ssh.
```
cp /root/.ssh/authorized_keys /home/ramiel/.ssh/authorized_keys
chown ramiel /home/ramiel/.ssh/authorized_keys
```
Then, in `/etc/ssh/sshd_config`, change:
```
PasswordAuthentication no
PermitRootLogin prohibit-password
```
to:
```
PasswordAuthentication no
PermitRootLogin yes
```
Then restart the ssh service
```
service sshd restart
exit
```
And connect with your new user
```
ssh ramiel@your_ip
```
### Install nginx
Here we make our first—of many—compromises with the [suckless](https://suckless.org/) philosophy. Unlike simpler web servers, nginx—pronounced "engine x"—is not suckless. However, I do have a job, and I'm choosing nginx because it is well documented, widely used, and has good integration with certbot, the certificates bot from the Electronic Freedom Foundation which allows me to have https (also perhaps not suckless).
To install nginx, follow instructions from [here](https://wiki.alpinelinux.org/wiki/Nginx). Digital Ocean has a few good tutorials on how to get nginx up and running, e.g., [How To Install Nginx on Ubuntu 20.04](https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-20-04). Steps are very similar on Alpine. Though Alpine doesn't have the `ufw` firewall, the package manager is called `apk`, not `apt`, and so on.
In this case, I chose to create a folder in the `/home/www` directory, rather than directly in `/www`. This is probably some residual scaredness from when I didn't want to play around too much with directories outside the home directory.
In any case, the commands I used to set up nginx were:
```
apk update
apk add nginx
adduser -D -g 'www' www
chown -R www:www /var/lib/nginx ## This is important!!
mkdir /home/www
chown -R www:www /home/www
```
We also want nginx to boot up at startup
```
rc-update add nginx default
rc-service nginx status
```
At this point, we can get a minimal website working. Create an `index.html` file somewhere, and use a nginx setup such as [this](https://github.com/NunoSempere/werc-1.5.0-tweaks/blob/master/etc/contrib/nginx/sites-available/nunosempere.com-simple) to check everything is working out ok. This is an important step, because it lets you check your work so far.
After some debugging, you should have a very simple yet fairly hard to censor website. Congratulations!
### Set up TLS
At this point, one might as well add TLS working, by following instructions such as those in [How To Secure Nginx with Let's Encrypt on Ubuntu 20.04](https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04).
Before you install SSL, you will need a DNS record, and in particular, an A record, pointing from your domain to your server. It might take a while for the DNS record to be updated; around 24 to 48 hours.
The commands for installing certificates are pretty trivial:
```
apk add --update python3 py3-pip
apk add certbot
pip install certbot-nginx
rc-service nginx stop
sudo certbot --nginx -d your-site.org
```
## 4. Into the rabbit hole
Our setup will looks as follows:
![](https://i.imgur.com/69cnAw2.png)
And the steps we will use to get this working are:
- Install plan9port
- Install werc
- Configure werc
- Install discount markdown
- Configure nginx to work with werc
- Install fcgi
Why am I using werc in Alpine linux rather than, I don't know, [Pelican](https://blog.getpelican.com/) on Debian, or [Jekyll](https://jekyllrb.com/) on Github Pages or [Gatsby](https://www.gatsbyjs.com/) on netlify? Because I am a sadomasochist, that's why. Proba
### Install plan9port
Plan9port is werc's key dependency. I might be able to get werc working with musl. But I can't be arsed. Instead, I am installing plan9port side by side with musl.
To install plan9port, add the following line:
```
https://dl-cdn.alpinelinux.org/alpine/v3.15/community/
```
to the `/etc/apk/repositories` file, to get access to community packages.
Then install plan9port
```
apk install plan9port
## https://pkgs.alpinelinux.org/package/v3.15/community/x86_64/plan9port
```
By default, plan9port gets installed to `/usr/lib/plan9/bin`. But we want the `rc` shell to be easily available:
```
cp /usr/lib/plan9/bin/rc /bin/rc
```
## Install werc
[Werc](https://werc.cat-v.org/) is a work of genius by the mad architect Uriel. It describes itself as a "a minimalist web anti-framework built following the Unix and Plan 9 tool philosophy of software design". It is a more hardcore version of Jekyll, Pelican, Blogger, or Wordpress.
```
cd /home/www
mkdir werc
cd werc
wget --no-check-certificate https://werc.cat-v.org/download/werc-1.5.0.tar.gz
sha512sum werc-1.5.0.tar.gz
## 06695bf0798d28821500d84339f873a712ceb53cec6dc5bc641a47945a811515657e749c1d8c6cfeba42432ec8557397db9231ff4b5d2eec581a5ff063ab6648 werc-1.5.0.tar.gz
tar x -f werc-1.5.0.tar.gz
cd werc-1.5.0
```
Initialize a git repository
```
git init
git add .
git commit -m "feat: start keeping track of atomic changes on top of werc-1.5.0"
git remote add
```
It's good discipline to keep track of changes which are more or less atomic. This facilitates you remembering what changes you've done, and allows you to contribute back.
Alternatively, pull in _my own personal tweaks_:
```
git init
git add .
git remote add tweaks https://github.com/NunoSempere/werc-1.5.0-tweaks.git
git pull tweaks master
```
These tweaks are a bit opinionated (e.g., they assume that you have set-up https). But they also make daily work more pleasant. Proceed at your own caution.
Mad Eye Moody recommends: Go through the [commit history](https://github.com/NunoSempere/werc-1.5.0-tweaks/commits/master) and pick and choose instead.
### Configure werc
There are several important configurations:
- Point to your plan9 binaries
- Decide whether to have a blog or not
- Whether to use http or https
- Whether to use [discount markdown](https://www.pell.portland.or.us/~orc/Code/discount/) or not, in which case you will have to install it
Of these, the more important is the first one. To let werc know where your plan9 binaries are installed
```
cd /home/www/werc/werc-1.5.0/etc/
cp initrc initrc.local
vim initrc.local
## Change one of the first lines to:
## plan9port=/usr/lib/plan9
```
To enable blog functionality, follow instructions [here](https://werc.cat-v.org/apps/blagh/)
To use https instead of http, grep for http and change it all to https. Find the necessary files using `grep http -R bin/`, or have a look at [this git commit](https://github.com/NunoSempere/werc-1.5.0-tweaks/commit/18893f3192721144e82497dce751864faa4437e4)
Personally, I'm a fan of discount markdown, because it has a few more features than the default awk markdown parser. To install discount markdown, run
```
apk install discount
```
And then have a look at [this commit](https://github.com/NunoSempere/werc-1.5.0-tweaks/commit/f492aa962b4c0627dd013f074c0d01000f6e70fe) for the necessary changes.
## Configure nginx to work with werc
Configuring nginx to work with werc is the tricky part. Luckily, [here](https://github.com/NunoSempere/werc-1.5.0-tweaks/tree/master/etc/contrib/nginx) is an example working configuration, i.e., the contents of my `/etc/nginx`. Best of luck!
One of the key pieces to connect nginx and werc is [fcgi](https://wikiless.org/wiki/FastCGI?lang=en) (fast common gateway interface). It can be installed with
```
sudo apk add spawn-fcgi
sudo apk add fcgiwrap
```
You can then spawn this with
```
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/bin/fcgiwrap
```
Alternatively, and more conveniently, you can set this up so that fcgi is spawned when the system starts. To do so, copy the following:
```
#!/sbin/openrc-run
## move to /etc/init.d/spawn-fcgi2
## Then sudo rc-update add spawn-fcgi2
## test with sudo rc-service spawn-fcgi2 start
## and sudo rc-service spawn-fcgi2 stop
PID_file="/var/tmp/spawn"
depend() {
need net
}
start() {
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/bin/fcgiwrap -P "$PID_file"
}
stop() {
kill -15 "$(cat "$PID_file")"
rm "$PID_file"
}
case $1 in
start|stop) "$1" ;;
esac
```
into a new file, `spawn-fcgi2`, and then:
```
mv spawn-fcgi2 /etc/init.d/spawn-fcgi2
cd /etc/init.d
sudo chmod 755 spawn-fcgi2
sudo rc-update add spawn-fcgi2
```
Installing fcgi, copying [my configuration](https://github.com/NunoSempere/werc-1.5.0-tweaks/tree/master/etc/contrib/nginx) and making the relevant changes probably still requires some tweaking and debugging. For instance, it's necessary that the nginx folder is owned by the `www` user. If someone wants to document this better, I welcome improvements.
## Backups
Backups, and then backups for the backups. For this, I would recommend some combination of:
- [tarsnap](https://www.tarsnap.com/)
- an online git service, like GitHub, GitLab or Codeberg
- a local git repository in a different machine
- [ipfs](https://ipfs.io/)
## Conclusion
We have seen how to create a website which is decently anonymous and hard to attack. This isn't secure enough to support a drug empire (unless?), but it should be secure enough to post slightly edgy content online. We did this the hard way in order to not rely on services like WordPress or Netlify, which would probably buckle under external pressure.

@ -1,345 +0,0 @@
# How to create an autarchic website: the easy way
> Where to host the blog: Our Recommendation: Use Substack or try out a hosted Ghost website—its a Goldilocks solution of easy-to-use but highly customizable. Ghost makes for a great portfolio site, blog, and newsletter service.
[Effective Ideas: Where to host the blog](https://effectiveideas.org/how-to-start-a-blog/#pt3)
Fuck that. Vat do I vant, and in vat order? Uncensorability, ability to ramp up degrees of privacy and paranoia, control over ze whole stack, and finally, ze modern comforts. Vith that in mind, I present: Doctor Nefarious' guide to uncensorability.
What is this meant for? Some recent examples:
- [Youtube-dl being banned by Github](https://www.eff.org/deeplinks/2020/11/github-reinstates-youtube-dl-after-riaas-abuse-dmca)
- The Canadian government [fucking around with Canadian truckers' freedom of speech](https://twitter.com/punk6529/status/1494444624630403083)
## Get you a password manager for great security
For this, I recommend [pass](https://www.passwordstore.org/) (see also the [archlinux wiki](https://wiki.archlinux.org/title/Pass)). Simple, secure.
## Get an email
[Protonmail](https://protonmail.com/) is fine.
```
function newpassword(){
characters="\!#\$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_\`abcdefghijklmnopqrstuvwxyz{|}~"
length=25
read -r -n $length new_password < <(LC_ALL=C tr -dc "$characters" < /dev/urandom)
echo $new_password
} ## Taken from pass generate. Maybe save this in your .bashrc
newpassword
pass insert -m autarchy/protonmail ## Then save both the email address and the password.
## You can then recall your password with pass show autarchy/protonmail
```
Mad Eye Moody recommends: Don't give Protonmail a backup email. But make sure to make backups of your passwords. You can access Protonmail over [Tor](https://torproject.org/) [here](https://mail.protonmailrmez3lotccipshtkleegetolb73fuirgj7r4o4vfu7ozyd.onion). For previous steps, you can register an [XMPP identity](https://www.shad0w.io/). Better yet, do your own research on which services are the most secure.
## Register a domain
For zis, ve will use, of course, [njal.la](https://njal.la/). The're the non-evil twin brother of [Epik domains](https://www.epik.com/). From their [FAQ](https://njal.la/faq/):
> We're a team of committed internet activists and we're also involved in other privacy projects such as the IPredator VPN service. Some of us have also been involved in projects like The Pirate Bay and Piratbyrån to mention a few things.
> We support signing up for our service using email or XMPP (and yes, we use OTR). For email we also support PGP so all of our outgoing email will be signed and encrypted.
> We accept payments via Bitcoin, Litecoin, Monero, ZCash, DASH, Bitcoin Cash, Ethereum and Paypal.
They also have [a blog](https://njal.la/blog/) vere they record takedown requests:
![](https://njal.la/static/downloads/2019njetski/3.jpg)
All in all, zis is ze good shit.
For this, you will need to setup an account on njal.la, using the email you previously created
```
newpassword
pass insert -m autarchy/njalla-account ## save both password and user
## You can later recall this with pass show autarchy/njalla
```
Mad Eye Moody recommends: Use tornado cash (https://tornado.cash/) to anonymize your transaction history before paying njalla. Check which top-level domain names are more uncensorable (https://www.eff.org/files/2017/08/02/domain_registry_whitepaper.pdf). Ultimately, if we wanted further anonymity and uncensorability, we would [set up an onion service](https://community.torproject.org/onion-services/setup/).
## Step 2: Get a server
Previously, I have been using an Ubuntu server on [Digital Ocean](digitalocean.com), which offers servers from $5/month ($6/month including backups). But I have grown to dislike my system having 1GB worth of stuff that I don't understand. I also dislike wrangling with systemd services.
So I thought it would be fun to try Alpine Linux on [Njal.la's own servers](https://njal.la/servers/add/). This costs $15/month instead.
When buying a server from Njalla, we need to name it. And we will name it [`ramiel`](https://en.wikipedia.org/wiki/Ramiel) [^1]. We will also need to generate an ssh key to connect to it. The command to do this is `ssh-keygen -t ed25519`. After paying for our server, we'll want to set up payment to autorenew.
[^1]: Why Ramiel? Because Uriel is dead
## Step 3: Set up the server
Our setup will looks as follows:
![](https://i.imgur.com/69cnAw2.png)
We can connect to our server with
```
ssh root@your_ip
```
Then add some essential tooling:
```
apk add vim
apk add sudo
apk add git
```
Create a new user with root permissions
### Add a new user with root permissions
Strictly speaking you could do everything as root, but this feels dirty. Instead, we will create two new users, one root user for admin tasks, called `ramiel`, and one user for normal operation of web assets, named `www`. The below process probably contains some bugs, which stackoverflow or the alpine/arch linux wiki should solve.
#### Create new user:
```
adduser ramiel
apk add doas
adduser ramiel wheel
mkdir -p /home/ramiel
mkdir /home/ramiel/.ssh
```
#### Give it wide permissions and add it to the sudoers group
Add `permit persist :wheel` to `/etc/doas.d/doas.conf`
Then use `visudo` to edit `/etc/sudoers`, and add
```
ramiel ALL=(ALL) ALL
```
### Allow us to log in with ssh
```
cp /root/.ssh/authorized_keys /home/ramiel/.ssh/authorized_keys
chown ramiel /home/ramiel/.ssh/authorized_keys
```
In `/etc/ssh/sshd_config`, change:
```
PasswordAuthentication no
PermitRootLogin prohibit-password
```
to:
```
PasswordAuthentication no
PermitRootLogin yes
```
Then restart the ssh service
```
service sshd restart
exit
```
Connect with our new user
```
ssh ramiel@your_ip
```
## Install nginx
Here we make our first—of many—compromises with the suckless philosophy. Unlike simpler web servers, nginx is not suckless. However, I do have a job, and I'm choosing nginx because it has good integration with certbot, the certificates bot from the Electronic Freedom Foundation.
To install nginx, follow instructions from [here](https://wiki.alpinelinux.org/wiki/Nginx). In this case, I chose to create a folder in the `/home/www` directory, rather than directly in `/www`. This is probably some residual scaredness from when I didn't want to play around too much with directories outside the home directory.
```
apk update
apk add nginx
adduser -D -g 'www' www
chown -R www:www /var/lib/nginx
mkdir /home/www
chown -R www:www /home/www
```
We also want nginx to boot up at startup
```
rc-update add nginx default
```
## Install werc
[Werc](https://werc.cat-v.org/) is a work of genius by the mad architect Uriel. It describes itself as a "a minimalist web anti-framework built following the Unix and Plan 9 tool philosophy of software design". It is a more hardcore version of Jekyll, Pelican, Blogger, or Wordpress.
```
cd /home/www
mkdir werc
cd werc
wget --no-check-certificate https://werc.cat-v.org/download/werc-1.5.0.tar.gz
sha512sum werc-1.5.0.tar.gz
## 06695bf0798d28821500d84339f873a712ceb53cec6dc5bc641a47945a811515657e749c1d8c6cfeba42432ec8557397db9231ff4b5d2eec581a5ff063ab6648 werc-1.5.0.tar.gz
tar x -f werc-1.5.0.tar.gz
cd werc-1.5.0
```
Initialize a git repository
```
git init
git add .
git commit -m "feat: start keeping track of atomic changes on top of werc-1.5.0"
git remote add
```
It's good discipline to keep track of changes which are more or less atomic. This facilitates you remembering what changes you've done, and allows you to contribute back.
Alternatively, pull in my tweaks:
```
git init
git add .
git remote add tweaks https://github.com/NunoSempere/werc-1.5.0-tweaks.git
git pull tweaks master
```
These tweaks are a bit opinionated (e.g., they assume that you will set-up https). But they also make daily work more pleasant. Proceed at your own caution.
Mad Eye Moody recommends: Go through the [commit history](https://github.com/NunoSempere/werc-1.5.0-tweaks/commits/master) and pick and choose instead.
### Install plan9port
I might be able to get werc working with musl. But I can't be arsed. Instead, I am installing plan9port side by side.
Add the following line:
```
https://dl-cdn.alpinelinux.org/alpine/v3.15/community/
```
to the `/etc/apk/repositories` file, to get access to community packages.
Then install plan9port
```
apk install plan9port
## https://pkgs.alpinelinux.org/package/v3.15/community/x86_64/plan9port
```
By default, plan9port gets installed to `/usr/lib/plan9/bin`. But we want `rc` to be easily available:
```
cp /usr/lib/plan9/bin/rc /bin/rc
```
### Configure werc
There are several important configurations:
- Point to your plan9 binaries
- Whether to have a blog or not
- Whether to use http or https
- Whether to use [discount markdown](https://www.pell.portland.or.us/~orc/Code/discount/) or not, in which case you will have to install it
Of these, the more important is the first one. To let werc know where your plan9 binaries are installed
```
cd /home/www/werc/werc-1.5.0/etc/
cp initrc initrc.local
vim initrc.local
## Change one of the first lines to:
## plan9port=/usr/lib/plan9
```
## Configure nginx to work with werc
[Here](https://github.com/NunoSempere/werc-1.5.0-tweaks/tree/master/etc/contrib/nginx) is an example working configuration, i.e., the contents of my `/etc/nginx`
Here, I would recommend:
1. Get nginx up and running with a simple website using somethng like [this](https://github.com/NunoSempere/werc-1.5.0-tweaks/blob/master/etc/contrib/nginx/sites-available/nunosempere.com-simple)
2. Set it up to use werc with fastcgi
3. Add a DNS record pointing from your domain to your server
4. Add SSL/TSL certificates using certbot
5. Switch werc to https
Digital Ocean has a few good tutorials on how to get nginx up and running:
- [How To Install Nginx on Ubuntu 20.04](https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-20-04)
- [How To Secure Nginx with Let's Encrypt on Ubuntu 20.04](https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04)
Steps are very similar on Alpine. Though, e.g., Alpine doesn't have the `ufw` firewall, and so on.
Before you install SSL, you will need a DNS record, and in particular, an A record, pointing from your domain to your server. It might take a while for the DNS record to be updated; around 24 to 48 hours.
The commands for installing certificates are pretty trivial:
```
apk add --update python3 py3-pip
apk add certbot
pip install certbot-nginx
rc-service nginx stop
sudo certbot --nginx -d your-site.org
```
```
sudo apk add spawn-fcgi
sudo apk add fcgiwrap
```
### Installing fcgi
```
sudo apk add spawn-fcgi
sudo apk add fcgiwrap
```
You can then spawn this with
```
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/bin/fcgiwrap
```
Alternatively, and more conveniently, you can set this up so that fcgi is spawned when the system starts. To do so, copy the following:
```
#!/sbin/openrc-run
## move to /etc/init.d/spawn-fcgi2
## Then sudo rc-update add spawn-fcgi2
## test with sudo rc-service spawn-fcgi2 start
## and sudo rc-service spawn-fcgi2 stop
PID_file="/var/tmp/spawn"
depend() {
need net
}
start() {
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/bin/fcgiwrap -P "$PID_file"
}
stop() {
kill -15 "$(cat "$PID_file")"
rm "$PID_file"
}
case $1 in
start|stop) "$1" ;;
esac
```
into `spawn-fcgi2`, and then:
```
mv spawn-fcgi2 /etc/init.d/spawn-fcgi2
cd /etc/init.d
sudo chmod 755 spawn-fcgi2
sudo rc-update add spawn-fcgi2
```
## Install discount markdown
## Debug problems

@ -1,45 +0,0 @@
// Helpers
ss(arr) = SampleSet.fromList(arr)
// Nuclear ukraine
rusiaUsesNuclearWeaponsInUkraine = ss([0.27, 0.04, 0.02, 0.001, 0.09, 0.08, 0.07])// <- fill-in
// Note that the period of time is left unspecified
// Nuclear NATO
escalationOutsideUkraineGivenUkraineWasNuked = ss([0.15, 0.09, 0.0013, 10^(-5), 0.01, 0.3, 0.05])// <- fill-in
escalationToNATOUnconditional = rusiaUsesNuclearWeaponsInUkraine *
escalationOutsideUkraineGivenUkraineWasNuked
// Nuclear NATO to nuclear London/Washington
bigUKUSCityNukedGivenEscalationOutsideUkraine = ss([0.4, 0.15, 0.9985, 0.05, 0.02, 0.002, 0.5])// <- fill-in
bigUKUSCityUnconditional = escalationToNATOUnconditional *
bigUKUSCityNukedGivenEscalationOutsideUkraine
// Impact in lost hours
remainlingLifeExpectancyInYears = 40 to 60 // <- change
daysInYear= 365
productiveHoursInDay = 6 to 18 // <- change
ableToEscapeBefore = 0.5// <- fill-in
proportionOfPeopleInLondonWhoDie = 0.7
expectedLostHours = bigUKUSCityUnconditional *
(1 - ableToEscapeBefore) *
proportionOfPeopleInLondonWhoDie *
remainlingLifeExpectancyInYears *
daysInYear *
productiveHoursInDay
// Probably good to also estimate idiosyncratic factors such as
// - Increased or decreased productivity in a city
// - Increased or decreased impact in a city
// - Value assigned to surviving in a world after a nuclear winter
// - ...
// Display
{
rusiaUsesNuclearWeaponsInUkraine: rusiaUsesNuclearWeaponsInUkraine,
escalationToNATOUnconditional: escalationToNATOUnconditional,
bigUKUSCityUnconditional: bigUKUSCityUnconditional,
expectedLostHours: expectedLostHours
}

@ -0,0 +1,53 @@
// Fish (salmon)
value_happy_salmon_year_in_human_qalys = 0.001 to 0.01
value_tortured_salmon_year_in_human_qalys = -(0.002 to 0.02)
value_farmed_salmon_year_in_human_qalys = -0.02 to 0.01
// ^ purely subjective estimates
lifetime_salmon = 2 to 3
// https://thehumaneleague.org.uk/article/how-long-do-salmon-live
weight_salmon = 3.5 to 5 // kilograms
// ^ https://www.wildcoastsalmon.com/salmonlifecycle
calories_per_kilogram_of_salmon_meat = 1700 to 2100
calories_salmon = weight_salmon * calories_per_kilogram_of_salmon_meat
// ^ see <https://www.quora.com/How-many-calories-are-in-1kg-of-salmon>
salmon_estimates = {
name: "salmon",
value_year_in_human_qalys: value_farmed_salmon_year_in_human_qalys,
weight: weight_salmon,
calories: calories_salmon,
lifetime: lifetime_salmon
}
/* Fish Welfare Initiative
Sources:
- https://www.fishwelfareinitiative.org/
- https://forum.effectivealtruism.org/posts/T5fSphiK6sQ6hyptX/opinion-estimating-invertebrate-sentience#Peter_Hurford
- https://forum.effectivealtruism.org/posts/Qk3hd6PrFManj8K6o/rethink-priorities-welfare-range-estimates
- https://nunosempere.com/blog/2023/02/19/bayesian-adjustment-to-rethink-priorities-welfare-range-estimates/
Key simplification: assume that all fish are salmon. This is inaccurate, because salmon is a very particular & expensive species of fish. But I think it's ok to start with. Later I could easily add different species.
*/
fish_potentially_helped = 1M to 2M
shrimp_potentially_helped = 1M to 2M
improvement_as_proportion_of_lifetime = 0.05 to 0.5
value_fwi_fish =
fish_potentially_helped *
improvement_as_proportion_of_lifetime *
(value_happy_salmon_year_in_human_qalys / salmon_estimates.lifetime)
value_of_shrimp_in_fish = (0.3 to 1)
// ^ very uncertain, subjective
value_fwi_shrimp =
shrimp_potentially_helped *
improvement_as_proportion_of_lifetime *
(value_happy_salmon_year_in_human_qalys / salmon_estimates.lifetime) *
value_of_shrimp_in_fish
value_fwi_so_far = value_fwi_fish + value_fwi_shrimp

@ -0,0 +1,140 @@
# interpreter for shell commands
set shell sh
# set '-eu' options for shell commands
# These options are used to have safer shell commands. Option '-e' is used to
# exit on error and option '-u' is used to give error for unset variables.
# Option '-f' disables pathname expansion which can be useful when $f, $fs, and
# $fx variables contain names with '*' or '?' characters. However, this option
# is used selectively within individual commands as it can be limiting at
# times.
set shellopts '-eu'
# set internal field separator (IFS) to "\n" for shell commands
# This is useful to automatically split file names in $fs and $fx properly
# since default file separator used in these variables (i.e. 'filesep' option)
# is newline. You need to consider the values of these options and create your
# commands accordingly.
set ifs "\n"
# leave some space at the top and the bottom of the screen
set scrolloff 10
# use enter for shell commands
map <enter> shell
# execute current file (must be executable)
map x $$f
map X !$f
# dedicated keys for file opener actions
## map o &mimeopen $f
## map O $mimeopen --ask $f
map o open $f
## toggle hidden files
map . set hidden!
# define a custom 'open' command
# This command is called when current file is not a directory. You may want to
# use either file extensions and/or mime types here. Below uses an editor for
# text files and a file opener for the rest.
cmd open ${{
## test -L $f && f=$(readlink -f $f)
## case $(file --mime-type $f -b) in
## text/*) $EDITOR $fx;;
## *) for f in $fx; do setsid $OPENER $f > /dev/null 2> /dev/null & done;;
## esac
test -L $f && f=$(readlink -f $f)
case $f in
# *.css) vim $fx;;
# *.hs) vim $fx;;
# *.js) vim $fx;;
# *.json) vim $fx;;
# *.md) vim $fx;;
*.pdf) zathura --mode fullscreen $fx & > /dev/null 2>&1 ;;
# *.sh) vim $fx;;
# *.ts) vim $fx;;
# *.txt) vim $fx;; ## Open directly in the same terminal; no & at the end.
# *.yml) vim $fx;;
# *rc) vim $fx;;
*.R) rstudio $fx & > /dev/null 2>&1 ;;
*.png) DISPLAY=:0 feh --borderless --hide-pointer $fx & > /dev/null 2>&1 ;;
*.jpg) DISPLAY=:0 feh --borderless --hide-pointer $fx & > /dev/null 2>&1 ;;
*.html) rose "file://$fx" > /dev/null 2>&1 &;;
# *) xdg-open $fx > /dev/null 2>&1 &;;
*) nvim $fx;;
# *) vim -X $fx;;
# ^ temporary solution for Xmonad
#*) case $(file --mime-type $f -b) in
# text/*) vim $fx ;;
# *) xdg-open $fx;;
## *) for f in $fx; do setsid $OPENER $f > /dev/null 2> /dev/null & done;;
## esac;;
esac
## /usr/bin/xdg-open $f
}}
# define a custom 'rename' command without prompt for overwrite
cmd rename %[ -e $1 ] && printf "file exists" || mv $f $1
map r push :rename<space>
# make sure trash folder exists
%mkdir -p ~/.trash
# move current file or selected files to trash folder
# (also see 'man mv' for backup/overwrite options)
cmd trash %set -f; mv $fx ~/.trash
# cmd trash echo "too easy to press accidentally"
# define a custom 'delete' command
# cmd delete ${{
# set -f
# printf "$fx\n"
# printf "delete?[y/n]"
# read ans
# [ $ans = "y" ] && rm -rf $fx
# }}
# use '<delete>' key for either 'trash' or 'delete' command
map <delete> trash
# map <delete> delete
# Map numpad to arrows
# map i up
# map , down
# map j updir
# map l open
# map k down
# extract the current file with the right command
# (xkcd link: https://xkcd.com/1168/)
cmd extract ${{
set -f
case $f in
*.tar.bz|*.tar.bz2|*.tbz|*.tbz2) tar xjvf $f;;
*.tar.gz|*.tgz) tar xzvf $f;;
*.tar.xz|*.txz) tar xJvf $f;;
*.zip) unzip $f;;
*.rar) unrar x $f;;
*.7z) 7z x $f;;
esac
}}
# compress current file or selected files with tar and gunzip
cmd tar ${{
set -f
mkdir $1
cp -r $fx $1
tar -czf $1.tar.gz $1
rm -rf $1
}}
# compress current file or selected files with zip
cmd zip ${{
set -f
mkdir $1
cp -r $fx $1
zip -r $1.zip $1
rm -rf $1
}}

@ -115,32 +115,32 @@ Three most important actionables:
## B. Exploratory plots.
![](.images/8a73163df20e38856be2ab2212d484b1a58b7fe9.png)
![](.images/b8025a0103dc70a976ecf604a12de6ddf2cd0ddb.png)
![](.images/02891164325de4d34fcd3ca026b4c8c74b26fdcc.png)
![](.images/df0dd280b2cd33327cfc81eef8de696e015c7562.png)
![](.images/18ba7e3dce520c9137538bab707b1b585b2f671c.png)
![](.images/aa717ffb66b96e2edc8a032dd179f8f17f33181a.png)
![](.images/8f9995e951ce75147421f5233794555542db867a.png)
![](.images/918999de00da42973f752ecb7d47a68f3c599a99.png)
![](.images/b44c2ad3d57250ceec6a5f3eede0d375c649ab16.png)
![](.images/d4989159c8011be94310198f52367c3d61189fcc.png)
![](.images/05f019dc1b238486c93e78b31e2262ba34ac80b7.png)
![](.images/86a9fc7e89b8a6e69c47c8e5fef0b79a2ad045d8.png)
![](.images/bd015fe73fb51b04114e4c87931792a2100e7674.png)
![](.images/06c70e8eeb9d81d0ecf08a9ab21f8f821f4a5980.png)
![](.images/42ca65e3812fb1007f2070e11ca5e4bab0ed9c9e.png)
![](.images/3540e439e51010f97f9423445b47440c8643ea1a.png)
![](.images/f52e2963f147e74f31654bf13e3ab6b3098d2996.png)
![](.images/1364361431dfd66aec4fb7fb9fba0473bd359e67.png)
![](.images/b65235999c982b9414bcaf59e48ce39827bfe201.png)
![](.images/38b656906584ea6736e321d7dc14c7c4be7b0b4d.png)
![](.images/13dd0da9f9a4007915097af5919e45d72a278c66.png)
![](.images/3e772f2cd88e85a0658b2b7498b9ff1311d50c58.png)
![](.images/b9fd7bdd1c95cf0d8429312b77cbceae85db049f.png)
![](.images/502b5cc72b9cee7b6330d5e01cf2894c5283a67a.png)
![](.images/8ff3e88439796d0868b305fa0c5eaef294df7c5f.png)
![](.images/ec1ab2e026861dc21df76876c5254bc94f13f10e.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/8a73163df20e38856be2ab2212d484b1a58b7fe9.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/b8025a0103dc70a976ecf604a12de6ddf2cd0ddb.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/02891164325de4d34fcd3ca026b4c8c74b26fdcc.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/df0dd280b2cd33327cfc81eef8de696e015c7562.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/18ba7e3dce520c9137538bab707b1b585b2f671c.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/aa717ffb66b96e2edc8a032dd179f8f17f33181a.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/8f9995e951ce75147421f5233794555542db867a.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/918999de00da42973f752ecb7d47a68f3c599a99.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/b44c2ad3d57250ceec6a5f3eede0d375c649ab16.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/d4989159c8011be94310198f52367c3d61189fcc.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/05f019dc1b238486c93e78b31e2262ba34ac80b7.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/86a9fc7e89b8a6e69c47c8e5fef0b79a2ad045d8.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/bd015fe73fb51b04114e4c87931792a2100e7674.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/06c70e8eeb9d81d0ecf08a9ab21f8f821f4a5980.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/42ca65e3812fb1007f2070e11ca5e4bab0ed9c9e.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/3540e439e51010f97f9423445b47440c8643ea1a.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/f52e2963f147e74f31654bf13e3ab6b3098d2996.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/1364361431dfd66aec4fb7fb9fba0473bd359e67.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/b65235999c982b9414bcaf59e48ce39827bfe201.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/38b656906584ea6736e321d7dc14c7c4be7b0b4d.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/13dd0da9f9a4007915097af5919e45d72a278c66.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/3e772f2cd88e85a0658b2b7498b9ff1311d50c58.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/b9fd7bdd1c95cf0d8429312b77cbceae85db049f.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/502b5cc72b9cee7b6330d5e01cf2894c5283a67a.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/8ff3e88439796d0868b305fa0c5eaef294df7c5f.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/ec1ab2e026861dc21df76876c5254bc94f13f10e.png)
The code to produce them can be found [here](https://nunosempere.github.io/rat/eamentalhealth/)
@ -150,11 +150,11 @@ The code to produce them can be found [here](https://nunosempere.github.io/rat/e
#### 1.1. According to age
![](.images/e8466ca8f7555d37b25e7046bf22f45c575e7c95.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/e8466ca8f7555d37b25e7046bf22f45c575e7c95.png)
#### 1.2. According to country.
![](.images/ff22d1678c0868146825ca03f26c1352d11bb850.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/ff22d1678c0868146825ca03f26c1352d11bb850.png)
#### 1.3. According to gender.
@ -172,7 +172,7 @@ Editorial bottom line: With respect to age, country, and gender, there seem to b
Initially, I was intending to find out the different mental disorder rates in the different countries, and combine that with the distribution in the data. The webpage [Our World in Data](https://ourworldindata.org/mental-health) provides the necessary data:
![](.images/241ccf3251fdd6e74c882b31aa9985cb5898c44e.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/241ccf3251fdd6e74c882b31aa9985cb5898c44e.png)
We see that the distribution is broadly similar across the countries among which EA has a presence. Most importantly, it doesn't surpass ~25% in any country, whereas among survey respondents:
@ -290,7 +290,7 @@ The effect is very robust to different modelizations: regressing instead on empt
Here is the above, presented visually
![](.images/67f6b5d117bdbcb6c7b56e5afd798d859ee7966c.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/67f6b5d117bdbcb6c7b56e5afd798d859ee7966c.png)
The following table is the cold, raw, hard data for the graphic.
@ -1357,7 +1357,7 @@ With regards to pathway 2, we have a rough upwards cross-sectional estimate of 2
* People who recover from a mental illness because of help from the EA community might not donate 10% of the counterfactual gain, but more.
* The gain is not only in the form of hours missed but in productivity gained while working.
![](.images/0d7aea62609944b3674d36602b1dd50f2d91c8fe.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/0d7aea62609944b3674d36602b1dd50f2d91c8fe.png)
With regards to pathway 3, it is my impression that people in top charities and EA organizations already get good mental healthcare, though about rogue effective altruists I cannot say much.
@ -1397,6 +1397,6 @@ SlateStarCodex's list of [mental health professionals](https://slatestarcodex.co
The point being that there are a lot of mental health resources and information online, if only one knew where to find them, and >10% of survey respondents answered that finding information on mental health resources was hard or very hard.
![](.images/3540e439e51010f97f9423445b47440c8643ea1a.png)
![](https://images.nunosempere.com/blog/2019/06/13/ea-mental-health/3540e439e51010f97f9423445b47440c8643ea1a.png)
Thus, it is a high tractability, high neglectedness, medium impact task to create such a list of mental resources for the EA community, even if collated and scavenged from other sources. If such a resource already exists, plenty of respondents do not seem to know about it.

@ -1,5 +1,5 @@
Why do social movements fail: Two concrete examples.
==============
=====================================================
Status: Time-capped analysis.
@ -146,4 +146,4 @@ There might not have been anything wrong with General Semantics per se. If a ran
### Conclusion
The above are what seem to me to be some potential failure points which the current rationality and effective altruism movements might want to avoid if they want to keep existing in 100 years. It might or might not be overkill to hire a historian for a deeper analysis.
The above are what seem to me to be some potential failure points which the current rationality and effective altruism movements might want to avoid if they want to keep existing in 100 years. It might or might not be overkill to hire a historian for a deeper analysis.

@ -106,7 +106,7 @@ And an extra property:
are enough to force the Shapley value function to take the form it takes:
![](.images/aeef390de90cb7c6fe07fcad852578fbebe162b1.svg)
![](https://images.nunosempere.com/blog/2019/10/10/shapley-formula.svg)
At this point, the reader may want to consult [Wikipedia](https://en.wikipedia.org/wiki/Shapley_value) to familiarize themselves with the mathematical formalism, or, for a book-length treatment, [_The Shapley value: Essays in honor of Lloyd S. Shapley_](http://www.library.fa.ru/files/Roth2.pdf). Ultimately, a quick way to understand it is as "the function uniquely determined by the properties above".

@ -39,11 +39,11 @@ A two-sentence version would be:
> Forecasters predicted the conclusions that would be reached by Elizabeth van Norstrand, a generalist researcher, before she conducted a study on the accuracy of various historical claims. We randomly sampled a subset of research claims for her to evaluate, and since we can set that probability arbitrarily low this method is not bottlenecked by her time.
![](.images/4a235d14d0177ec92050af5b2551cdbc337f2d1e.png)
![](https://images.nunosempere.com/blog/2019/12/19/amplifying-general-research-via-forecasting-i/4a235d14d0177ec92050af5b2551cdbc337f2d1e.png)
The below graph shows the evolution of the accuracy of the crowd prediction over time, starting from Elizabeth Van Nostrands prior. Predictions were submitted separately by two groups of forecasters: one based on a mailing list with participants interested in participating in forecasting experiments (recruited from effective altruism-adjacent events and other forecasting platforms), and one recruited from Positly, an online platform for crowdworkers.
![](.images/c7e041d8fab837233a9cc4d03c6166c54da04020.png)
![](https://images.nunosempere.com/blog/2019/12/19/amplifying-general-research-via-forecasting-i/c7e041d8fab837233a9cc4d03c6166c54da04020.png)
The y-axis shows the accuracy score on a logarithmic scale, and the x-axis shows how far along the experiment is. For example, 14 out of 28 days would correspond to 50%. The thick lines show the average score of the aggregate prediction, across all questions, at each time-point. The shaded areas show the standard error of the scores, so that the graph might be interpreted as a guess of how the two communities would predict a random new question.
@ -61,7 +61,7 @@ We measured “value provided” as the reduction in uncertainty weighted by the
Results were as follows.
![](.images/50453b84385fa25f5a934570cfa2bc6702869748.png)
![](https://images.nunosempere.com/blog/2019/12/19/amplifying-general-research-via-forecasting-i/50453b84385fa25f5a934570cfa2bc6702869748.png)
In other words, each unit of resource invested in the network-adjacent forecasters provided 72% as much returns as investing it in Elizabeth directly, and each unit invested in the crowdworkers provided negative returns, as they tended to be less accurate than Elizabeths prior.
@ -229,7 +229,7 @@ For future experiments, were considering obtaining an objective data-set with
In order to participate in the experiment, a forecaster has to turn their mental models (represented in whichever way the human brain represents models) into quantitative distributions (which is a format quite unlike that native to our brains), as shown in the following diagram:
![](.images/fd632951009d3c978277000a6ba9f3834cb4922a.png)
![](https://images.nunosempere.com/blog/2019/12/19/amplifying-general-research-via-forecasting-i/fd632951009d3c978277000a6ba9f3834cb4922a.png)
Each step in this chain is quite challenging, requires much practice to master, and can result in a loss of information.

@ -37,7 +37,7 @@ A two-sentence version would be:
> Forecasters predicted the conclusions that would be reached by Elizabeth van Norstrand, a generalist researcher, before she conducted a study on the accuracy of various historical claims. We randomly sampled a subset of research claims for her to evaluate, and since we can set that probability arbitrarily low this method is not bottlenecked by her time.
![](.images/4a235d14d0177ec92050af5b2551cdbc337f2d1e.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/4a235d14d0177ec92050af5b2551cdbc337f2d1e.png)
**1\. Evaluator extracts claims from the book and submits priors**
@ -49,7 +49,7 @@ All claims were assigned an importance rating from 1-10 based on their relevance
Elizabeth also spent 3 minutes per claim submitting an initial estimate (referred to as a “prior”).
![](.images/533cbee1908697a3c0338e0f5c83b7f960d73551.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/533cbee1908697a3c0338e0f5c83b7f960d73551.png)
Beliefs were typically encoded as distributions over the range 0% to 100%, representing where Elizabeth expected the mean of her posterior credence in the claim to be after 10 more hours of research_._ For more explanation, see this footnote \[4\].
@ -63,7 +63,7 @@ A key part of the design was that that forecasters _did_ _not know_ which questi
Two groups of forecasters participated in the experiment: one based on a mailing list with participants interested in participating in forecasting experiments (recruited from effective altruism-adjacent events and other forecasting platforms) \[6\], and one recruited from Positly, an online platform for crowdworkers. The former group is here called “Network-adjacent forecasters” and the latter “Online crowdworkers”.
![](.images/5e456cfc58967fc5c074c0287c806653d978b84b.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/5e456cfc58967fc5c074c0287c806653d978b84b.png)
**3\. The evaluator judges the claims**
@ -108,7 +108,7 @@ _You can find all the data and interactive tools for exploring it yourself,_ _[h
We were interested in comparing the performance of our pool of forecasters to “generic” participants with no prior interest or experience forecasting.
Hence, after the conclusion of the original experiment, we reran a slightly modified form of the experiment with a group of forecasters recruited through an online platform that sources high quality crowdworkers (who perform microtasks like filling out surveys or labeling images for machine learning models).
Hence, after the conclusion of the original experiment, we reran a slightly modified form of the experiment with a group of forecasters recruited through an online platform that sources high quality crowdworkers (who perform microtasks like filling out surveys or labelinghttps://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii for machine learning models).
However, it should be mentioned that these forecasters were operating under a number of disadvantages relative to other participants, which means we should be careful when interpreting their performance. In particular:
@ -125,17 +125,17 @@ The aggregate prediction was computed as the average of all forecasters' final p
The following graph shows how the aggregate performed on each question:
![](.images/f6ebc350474cbb51b21c0fa5184716c6f2e3eceb.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/f6ebc350474cbb51b21c0fa5184716c6f2e3eceb.png)
The opaque bars represent the scores from the crowdworkers, and the translucent bars, which have higher scores throughout, represent the scores from the network-adjacent forecasters. It's interesting that the order is preserved, that is, that the question difficulty was the same for both groups. Finally we dont see any correlation between question difficulty and the importance weights Elizabeth assigned to the questions.
However, the comparison is confounded by the fact that more effort was spent from the network-adjacent forecasters. The above graph also doesnt compare performance to Elizabeths priors. Hence we also plot the evolution of the aggregate score over prediction number and time (the first data-point in the below graphs represent Elizabeths priors):
![](.images/53f456d57fe63c3f65b05b21cffa42b69d45ed87.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/53f456d57fe63c3f65b05b21cffa42b69d45ed87.png)
![](.images/a547c3816ddef37ee3d560ac2d05ec50071df615.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/a547c3816ddef37ee3d560ac2d05ec50071df615.png)
![](.images/c7e041d8fab837233a9cc4d03c6166c54da04020.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/c7e041d8fab837233a9cc4d03c6166c54da04020.png)
For the last graph, the y-axis shows the score on a logarithmic scale, and the x-axis shows how far along the experiment is. For example, 14 out of 28 days would correspond to 50%. The thick lines show the average score of the aggregate prediction, across all questions, at each time-point. The shaded areas show the standard error of the scores, so that the graph might be interpreted as a guess of how the two communities would predict a random new question \[10\].
@ -147,9 +147,9 @@ One way to see this qualitatively is by observing the graphs below, where we dis
The x-axis \[12\] refers to the Elizabeths best estimate of the accuracy of a claim, from 0% to 100% (see section “Mechanism design, 1. Evaluator extracts claims” for more detail).
![](.images/b10eb78f4b874e299a1a14ef331821ebb47b042a.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/b10eb78f4b874e299a1a14ef331821ebb47b042a.png)
![](.images/449cbaaa18d85ac7e1fbf3e7d70defc290367b94.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/449cbaaa18d85ac7e1fbf3e7d70defc290367b94.png)
Another way to understand the performance of the aggregate is to note that the aggregate of network-adjacent forecasters had an average log score of -0.5. To get a rough sense of what that means, it's the score you'd get by being 70% confident in a binary event, and being correct (though note that this binary comparison merely serves to provide intuition, there are technical details making the comparison to a distributional setting a bit tricky).
@ -189,7 +189,7 @@ The value is computed using the following model (interactive calculation linked
Results were as follows.
![](.images/50453b84385fa25f5a934570cfa2bc6702869748.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/50453b84385fa25f5a934570cfa2bc6702869748.png)
_(Links to models: network-adjacent_ _[cost ratio](https://www.getguesstimate.com/models/14521)_ _and_ _[value ratio](https://observablehq.com/@jjj/amplification-effectiveness), online crowdworker_ _[cost ratio](https://www.getguesstimate.com/models/14614)_ _and_ _[value ratio](https://observablehq.com/@jjj/amplification-effectiveness-positly).)_
@ -199,7 +199,7 @@ This observation is in tension with the some of the above graphs, which show a t
Another question to consider when thinking about cost-effectiveness is diminishing returns. The following graph shows how the information gain from additional predictions diminished over time.
![](.images/6181a43348526199a4746e6da4bbdc96afdd823b.png)
![](https://images.nunosempere.com/blog/2019/12/20/amplifying-general-research-via-forecasting-ii/6181a43348526199a4746e6da4bbdc96afdd823b.png)
The x-axis shows the number of predictions after Elizabeths prior (which would be prediction number 0). The y-axis shows how much closer to a perfect score each prediction moved the aggregate, as a percentage of the distance between the previous aggregate and the perfect log score of 0 \[15\].

@ -0,0 +1,7 @@
## In 2019...
- [EA Mental Health Survey: Results and Analysis.](https://nunosempere.com/2019/06/13/ea-mental-health)
- [Why do social movements fail: Two concrete examples.](https://nunosempere.com/2019/10/04/social-movements)
- [Shapley values: Better than counterfactuals](https://nunosempere.com/2019/10/10/shapley-values-better-than-counterfactuals)
- [[Part 1] Amplifying generalist research via forecasting models of impact and challenges](https://nunosempere.com/2019/12/19/amplifying-general-research-via-forecasting-i)
- [[Part 2] Amplifying generalist research via forecasting results from a preliminary exploration](https://nunosempere.com/2019/12/20/amplifying-general-research-via-forecasting-ii)

@ -25,9 +25,9 @@ When the professors deviate from that general structure, they become less convin
The question presented is whether there is a nutrition based poverty trap. A mathematical formalism for a poverty trap is presented, in which wealth at time t+1 depends on wealth at time t. A poverty trap appears if falling below a wealth threshold leads to a further sliding down, that is, if the relationship between wealth at time t and t+1 looks like:
![](.images/be7f99df5b8aa33ef7aadd37a7560aa24505e5d9.png) as opposed to like
![](https://images.nunosempere.com/blog/2020/01/15/mit-edx-review/be7f99df5b8aa33ef7aadd37a7560aa24505e5d9.png) as opposed to like
![](.images/8b0e4c8fbb9b0400998fbbc58158fa7c79aaeebb.png)
![](https://images.nunosempere.com/blog/2020/01/15/mit-edx-review/8b0e4c8fbb9b0400998fbbc58158fa7c79aaeebb.png)
(In both cases, you start at y0 at time 0, move to y1 at time 1, to y2 at time 2, etc.)

@ -15,9 +15,9 @@ In [Shapley values: Better than counterfactuals](https://forum.effectivealtruism
* We propose several speculative forms of Shapley values: Shapley values + Moments of Consciousness, Shapley Values + Decision Theory, Shapley Values + Expected Value
* We conclude with some complimentary (and yet obligatory) ramblings about Shapley Values, Goodhart's law, and Stanovich's disrationalia.
Because this post is long, images will be interspersed throughout to clearly separate sections and provide rest for tired eyes. This is an habit I have from my blogging days, though which I have not seen used in this forum.
Because this post is long,https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii will be interspersed throughout to clearly separate sections and provide rest for tired eyes. This is an habit I have from my blogging days, though which I have not seen used in this forum.
![](.images/bc4a6add2d82c0297031b883af215a4dff297d94.png)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/bc4a6add2d82c0297031b883af215a4dff297d94.png)
## Philantropic Coordination Theory:
@ -42,7 +42,7 @@ If we try to calculate the Shapley value in this case, we notice that it depends
In any case, their Shapley values are:
![](.images/0b51c9065e85902d93abc4de5c676a162431fd9e.png) ![](.images/48294ee8a66ec565a22576254823d2292d1d6f7b.png)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/0b51c9065e85902d93abc4de5c676a162431fd9e.png) ![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/48294ee8a66ec565a22576254823d2292d1d6f7b.png)
One can understand this as follows: Player A has Value({A}) already in their hand, and Player B has Value({B}), and they're considering whether to cooperate. If they do, then the surplus from cooperating is Value({A,B}) - (Value({A}) + Value({B})), and it get's shared equally:
@ -136,7 +136,7 @@ Note that, because GiveWell's alternative is known, GiveWell doesn't have to see
* When buying a certificate of impact, the donor would in fact be willing to pay _more_ than $1, because $1 dollar can't get him that much value any more, due to diminishing returns. Similarly, GiveWell would be willing to sell it for _less_ than $1, because of the same reasons; once diminishing returns start setting in, they would have to donate less than $1 to their best alternative to get the equivalent of $1 dollar of donations to SCI. I've thus pretended that in this market with one seller and one buyer, the price is agreed to be $1. Another solution would be to have an efficient market in certificates of impact.
* The value certificate equilibrium is very similar regardless of whether one is thinking in terms of Shapley values or counterfactuals. I feel, but can't prove, that Shapley values add a kind of clarity and crispness to the reasoning, if only because they force you to consider all the moving parts.
![](.images/14578566a70fe4029fdf4fc0b37253dce1b735d2.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/14578566a70fe4029fdf4fc0b37253dce1b735d2.jpg)
## Shapley values of forecasters.
@ -202,7 +202,7 @@ while the new forecaster gets rewarded in proportion to
This still preserves some of the same incentives as above, though in this case, attribution becomes more tricky. Further, anecdotically, seeing someone's distribution before updating gives more information than seeing someone's distribution after they've updated, so just seeing the contrast between g(0) and g(1) might be useful to future forecasters.
![](.images/4bf82fbcce46ac1e5520ce4070c8883525c80bde.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/4bf82fbcce46ac1e5520ce4070c8883525c80bde.jpg)
## A value attribution impossibility theorem.
@ -279,7 +279,7 @@ With that in mind, one of the most interesting facts about Arrow's impossibility
As such, I'm hedging my bets: impossibility theorems must be taken with a grain of salt; they can be stepped over if their assumptions do not hold.
![](.images/3edb1377c2726d6123865c43360d67c08adb9aca.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/3edb1377c2726d6123865c43360d67c08adb9aca.jpg)
## Parfit's [_Five Mistakes in Moral Mathematics_](http://www.stafforini.com/docs/Parfit%20-%20Five%20mistakes%20in%20moral%20mathematics.pdf).
@ -289,7 +289,7 @@ The Indian Mathematician Brahmagupta describes the solution to the quadratic equ
to describe the solution to the quadratic equation ax^2 + bx = c.
![](.images/5c7efddde4aa1a7119a15d93783f6c682d7212cf.svg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/5c7efddde4aa1a7119a15d93783f6c682d7212cf.svg)
I read Parfit's piece with the same admiration, sadness and sorrow with which I read the above paragraph. On the one hand, he is oftent clearly right. On the other hand, he's just working with very rudimentary tools: mere words.
@ -356,7 +356,7 @@ Overall, I think that Shapley values do pretty well on the problems posed by Par
> (C7) Even if an act harms no one, this act may be wrong because it is one of a set of acts that together harm other people. Similarly, even if some act benefits no one, it can be what someone ought to do, because it is one of a set of acts that together benefit other people.
![](.images/c1c6470e1f4712d38d21ce31a6a2a4baa3671ab9.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/c1c6470e1f4712d38d21ce31a6a2a4baa3671ab9.jpg)
## Shapley value puzzles
@ -433,7 +433,7 @@ Calculate the Shapley values for:
* You (Emma)
* Lucy
![](.images/16fb6f6948ae9600cee6ae878a46ea21172e3821.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/16fb6f6948ae9600cee6ae878a46ea21172e3821.jpg)
## Speculative Shapley extensions.
@ -478,7 +478,7 @@ If you the agent's information for those expected values, this allows you to pun
However, Shapley values are probably be too unsophisticated to be used in situations which are primarily about social incentives.
![](.images/8260e1c392a2a710e9421817175e84156922de3d.jpeg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/8260e1c392a2a710e9421817175e84156922de3d.jpeg)
## Some complimentary (and yet obligatory) ramblings about Shapley Values, Goodhart's law, and Stanovich's disrationalia.
@ -527,17 +527,17 @@ To conclude, commenters in the last post emphasized that one should not consider
## Appendix: A more complicated worked example.
Suppose that you have two players, player a and Player B, and three charities: GiveDirectly, SCI, and the Not Quite Optimal Charity (NQOC).
Suppose that you have two players, player a and Player B, and three charities: GiveDirectly, SCI, and the Not Quite Optimal Charity (NQOC). Then, if y is the value, and x is the amount of spending, suppose you have:
| Charity | Value for A | Value for B |
|---------|-----------------------------------|-------------|
| GD | y=x | y=x |
| GD | y=x | y=x |
| SCI | y=2x if x<10, y=x/2 + 15 if x>=10 | y=2x |
| NQOC | 1/10 | 1/5 |
| NQOC | y=1/10x | y=1/5x |
Or, in graph form:
![](.images/b640f8bfd4ce1e54a632d7bb4a3c4bd9e9695418.jpg)
![](https://images.nunosempere.com/blog/2020/03/10/shapley-values-ii/b640f8bfd4ce1e54a632d7bb4a3c4bd9e9695418.jpg)
Caveat:
@ -571,3 +571,11 @@ In particular, if B donates only to SCI, then the value of cooperating is:
Now, we have the interesting scenario in which A is willing to sell their share of the impact for `X/4 - 1/20`, but B is willing to buy it for more, that is, for `X - 1/10`. In this case, suppose that they come to a gentleman's agreement and decide that the fair price is `(X/4 - 1/20)/2 + (X - 1/10)/2`, which simplified, is equal to `(5 X)/8 - 3/40`.
Now, player B then donates X to SCI and buys player A's certificates of impact for that donation (which are cheaper than continuing to donate). If they spend the million, then `X + (5 X)/8 - 3/40 = 1`, so X≈0.66, that is, 0.66 million are donated to SCI, whereas 0.34 million are spent buying certificates of impact from player A, which then donates that to GiveDirectly.
<p>
<section id='isso-thread'>
<noscript>Javascript needs to be activated to view comments.</noscript>
</section>
</p>

@ -1,7 +1,7 @@
New Cause Proposal: International Supply Chain Accountability
==============
\[Epistemic Status: Totally serious; altered afterwards to remove some April Fool's content. Thanks to Aaron Gertler for reading a version of this draft.\]
Epistemic Status: Totally serious; altered afterwards to remove some April Fool's content. Thanks to Aaron Gertler for reading a version of this draft.
# Related material
@ -23,11 +23,11 @@ I think that one useful way to define the term is
One could also understand supply chain accountability as a goal (making multinational companies less exploitative) rather than as a strategy, in the same way that one could understand effective altruism in terms of its ideals, rather than in terms of the specific strategies which it employs.
Example 1: After the collapse of a Bangladeshi garment factory which killed more than a thousand people \[[source / en](https://en.wikipedia.org/wiki/2013_Dhaka_garment_factory_collapse)\], a media shitstorm happened around the world. Transforming the temporary flare in outrage into specific and lasting commitments and agreements was the work of many organizations \[1\] under the banner of the concept of supply chain accountability. See: [The Bangladesh Accord on Fire and Building Safety](https://bangladeshaccord.org/)
Example 1: After the collapse of a Bangladeshi garment factory which killed more than a thousand people [source / en](https://en.wikipedia.org/wiki/2013_Dhaka_garment_factory_collapse), a media shitstorm happened around the world. Transforming the temporary flare in outrage into specific and lasting commitments and agreements was the work of many organizations [1] under the banner of the concept of supply chain accountability. See: [The Bangladesh Accord on Fire and Building Safety](https://bangladeshaccord.org/)
Example 2: Supply chain accountability in the case of Inditex, one of the biggest multinationals in the textile industry, over the last 20 years: \[[source / es](http://relats.org/documentos/GLOBBoixGarrido.pdf)\]:
Example 2: Supply chain accountability in the case of Inditex, one of the biggest multinationals in the textile industry, over the last 20 years: [source / es](http://relats.org/documentos/GLOBBoixGarrido.pdf):
* Inditex signed a "Global Framework Agreement" with Comisiones Obreras (later also with the global federation IndustriALL), and this agreement was later renewed \[[source / en](http://www.industriall-union.org/global-framework-agreements)\].
* Inditex signed a "Global Framework Agreement" with Comisiones Obreras (later also with the global federation IndustriALL), and this agreement was later renewed [source / en](http://www.industriall-union.org/global-framework-agreements).
* Comisiones Obreras carried out some investigative work in every country in which Inditex has factories, with the aim of identifying the issues which caused the most harm in each place, and slowly taking measures to improve them. For example, if a factory had fired workers which tried to syndicate, they convice the factory to rehire the workers. If a factory had hired people below working age, they made sure that these workers get enough money to complete their primary and secondary education.
* An auditing system was erected, in which Inditex itself audits their own contractors, after which Comisiones Obreras, which has less capacity, visits and audits ~2% of factories themselves.
* The philosophical underpinnings of such a Global Agreement were developed further. For example, professors at Spanish universities theorize about the topic and teach about it, providing a philosophical or moral basis about why supply chain accountability is positive and necessary. However, this is a posteriori.
@ -38,7 +38,7 @@ Example 2: Supply chain accountability in the case of Inditex, one of the bigges
Gut feeling: Very large.
Multinational companies employ a lot of people, directly or indirectly, on their chain of production. In the case of Inditex, this corresponds to 2.2 million people, distributed across 5,000 factories in 40 countries \[[source / es / 2019](http://iboix.blogspot.com/2019/12/el-acuerdo-marco-global-de-industriall.html)\]. This has grown from ~1 million in 2014 \[[source / es](http://iboix.blogspot.com/2014/07/renovacion-del-acuerdo-marco-global-de.html)\].
Multinational companies employ a lot of people, directly or indirectly, on their chain of production. In the case of Inditex, this corresponds to 2.2 million people, distributed across 5,000 factories in 40 countries [source / es / 2019](http://iboix.blogspot.com/2019/12/el-acuerdo-marco-global-de-industriall.html). This has grown from ~1 million in 2014 [source / es](http://iboix.blogspot.com/2014/07/renovacion-del-acuerdo-marco-global-de.html).
Given the number of people involved, reducing the incidence of fatal accidents, sexual abuse, exploitative working conditions, making those working conditions marginally better, marginally increasing wages, might be impactful, as would accelerating the rate at which that happens. [Here](https://www.getguesstimate.com/models/14645) is a back-of-the-envelope Guesstimate model which incorporates the number of people in Inditex's chain of production and their estimated work times, in order to calculate the estimated lives saved due to the fire and safety accord mentioned above.
@ -56,7 +56,7 @@ How tractable is this for the EA community in particular? Here are some consider
* The EA community doesn't really have a strong track record in this area, whereas other groups and organizations, like the federation [IndustriALL](http://www.industriall-union.org/) (of which Comisiones Obreras, a national workers union, is an affiliate) seems to be doing ok.
* CEA seems to be averse to public attention, though this may not apply to the EA community in general.
* On the other hand, the animal suffering movement has recently had a series of very visible victories using similar methods. Incidentally, it seems that some insights were rediscovered; perhaps the animal suffering movement could learn more effectively from trade unionism victories and defeats, and vice-versa. For example, trade unionists have historically relied more on newspapers and organizing demonstrations, and not used Facebook ads as aggressively as the animal suffering movement (but perhaps could). In the other direction, I think that actors in the space of supply chain accountability realized the importance of independent audits for pledges somewhat earlier than animal suffering movement \[2\].
* On the other hand, the animal suffering movement has recently had a series of very visible victories using similar methods. Incidentally, it seems that some insights were rediscovered; perhaps the animal suffering movement could learn more effectively from trade unionism victories and defeats, and vice-versa. For example, trade unionists have historically relied more on newspapers and organizing demonstrations, and not used Facebook ads as aggressively as the animal suffering movement (but perhaps could). In the other direction, I think that actors in the space of supply chain accountability realized the importance of independent audits for pledges somewhat earlier than animal suffering movement [2].
## Neglectedness
@ -64,7 +64,7 @@ Gut feeling: Many stakeholders, but I'm unclear what their average level of effe
While researching the area, I got the impression of a proliferation of stakeholders (IndustriALL, MSI-TN, FairTrade Initiative, the ILO, etc.), such that an additional stakeholder of average effectiveness would just stand in the way. It might thus make more sense to support and expand existing organizations (chiefly, IndustriALL), whereas with manpower or with funds.
An additional point is that if several organizations define corporate responsibility differently, companies have a tendency to choose the least demanding definitions, so an additional organization might instead only be able to do harm. \[3\]
An additional point is that if several organizations define corporate responsibility differently, companies have a tendency to choose the least demanding definitions, so an additional organization might instead only be able to do harm. [3]
Tangentially, some of the primary sources for Inditex's agreement were in Spanish, and I wonder whether EA has neglected charities in Spanish-speaking countries because of this language barrier. On this point, I have copious notes on the aforementioned agreement & related sources, which are available, in Spanish, [here](https://nunosempere.github.io/ea/CCOO-Inditex)
@ -80,11 +80,11 @@ In particular, both IndustriALL and the unions it is composed of already have a
## Does Inditex's Agreement generalize?
Or was Inditex just particularly cooperative? It does seem that Inditex was particularly cooperative, in comparison to, for example, another Spanish retailer which goes by the name of [Mango](https://en.wikipedia.org/wiki/Mango_(retailer)). Which other companies would be similarly influenced by the public opinion in their own countries?
Or was Inditex just particularly cooperative? It does seem that Inditex was particularly cooperative, in comparison to, for example, another Spanish retailer which goes by the name of [Mango](https://en.wikipedia.org/wiki/Mango_%28retailer%29). Which other companies would be similarly influenced by the public opinion in their own countries?
Is any EA local group organized well enough that a corporate accountability campaign targeting a particular company could be created and carried out, resulting in all factories in its direct and indirect chain of production being audited, within 10 years? Would there be any company particularly well-suited enough for this?
In particular, Id intuitively expect convincing a previously reluctant company to sign such a supply chain accountability agreement a to be comparable in hardness to the one which [doubled Zurichs development aid](https://forum.effectivealtruism.org/posts/dTdSnbBB2g65b2Fb9/eaf-s-ballot-initiative-doubled-zurich-s-development-aid) \[4\].
In particular, Id intuitively expect convincing a previously reluctant company to sign such a supply chain accountability agreement a to be comparable in hardness to the one which [doubled Zurichs development aid](https://forum.effectivealtruism.org/posts/dTdSnbBB2g65b2Fb9/eaf-s-ballot-initiative-doubled-zurich-s-development-aid) [4].
## How do you quantify the impact of corporate responsibility campaigns?
@ -99,28 +99,34 @@ Estimating the validity of this theory of systemic change could also be done by
# Conclusions
I am ignorant of how the marginal impact of work in this area compares to other policy work. The biggest thing international supply chain accountability has going for it is the _scale_; it could potentially absorb both great quantities of money and effort, and positively affect the lives of a very large number of people \[5\]
I am ignorant of how the marginal impact of work in this area compares to other policy work. The biggest thing international supply chain accountability has going for it is the _scale_; it could potentially absorb both great quantities of money and effort, and positively affect the lives of a very large number of people [5]
The negatives are the poor fit between EA and the trade unionism movement. In particular, EA isn't really conscious of its sometimes petty-bourgeois character \[6\], whereas trade unionism, having marxist roots and inclinations, takes class differences seriously. For example, Comisiones Obreras still is a communist/socialist organization (but less so than in the past). It is possible that having these organizations accept money would take some work, but I also believe that they could meaningfully use it.
The negatives are the poor fit between EA and the trade unionism movement. In particular, EA isn't really conscious of its sometimes petty-bourgeois character [6], whereas trade unionism, having marxist roots and inclinations, takes class differences seriously. For example, Comisiones Obreras still is a communist/socialist organization (but less so than in the past). It is possible that having these organizations accept money would take some work, but I also believe that they could meaningfully use it.
Overall, perhaps International Supply Chain Accountability would be a good target for a [shallow investigation](https://www.openphilanthropy.org/research/cause-selection#Shallow_investigations) by any EA organization which wishes to diversify their moral parliament.
---
\[1\] Which organizations? The \[Bangladesh Accord website\] mentions:
[1] : Which organizations? The [Bangladesh Accord website](https://bangladeshaccord.org/) mentions:
> “The Accord is a legally-binding agreement between global brands & retailers and IndustriALL Global Union & UNI Global Union and eight of their Bangladeshi affiliated unions to work towards a safe and healthy garment and textile industry in Bangladesh.”
These two global unions are, in practice, meta-unions, to which many other organizations are affiliated, like Comisiones Obreras in Spain.
\[2\] See: [Will companies meet their animal welfare commitments?](https://forum.effectivealtruism.org/posts/XdekdWJWkkhur9gvr/will-companies-meet-their-animal-welfare-commitments)
[2] : See: [Will companies meet their animal welfare commitments?](https://forum.effectivealtruism.org/posts/XdekdWJWkkhur9gvr/will-companies-meet-their-animal-welfare-commitments)
\[3\] I cant remember which organization was said to be less strict than the rest, and trying to track it down brings [unrelated criticism](https://en.wikipedia.org/wiki/International_Fairtrade_Certification_Mark#Criticism) of FairTrade in the food producing sector, rather than in the textile industry.
[3] : I cant remember which organization was said to be less strict than the rest, and trying to track it down brings [unrelated criticism](https://en.wikipedia.org/wiki/International_Fairtrade_Certification_Mark#Criticism) of FairTrade in the food producing sector, rather than in the textile industry.
\[4\] For example, what's up with Adidas in Germany? Is their [corporate responsibility approach](https://www.adidas-group.com/en/sustainability/managing-sustainability/general-approach/#/people-priorities-for-2020/) just blabber? (Most likely.) Do they have independent auditors? (Most likely not.)
[4] : For example, what's up with Adidas in Germany? Is their [corporate responsibility approach](https://www.adidas-group.com/en/sustainability/managing-sustainability/general-approach/#/people-priorities-for-2020/) just blabber? (Most likely.) Do they have independent auditors? (Most likely not.)
\[5\] This assessment also applies to marxist revolution more generally.
[5] : This assessment also applies to marxist revolution more generally.
Moreover, the EA movement could learn from the mistakes of communism. A point of reference which Ive personally found enlightening is be _The Revolution, Betrayed_, by Trotsky.
\[6\] If one attends [EA Global](https://slatestarcodex.com/2017/08/16/fear-and-loathing-at-effective-altruism-global-2017/), one does not get the impression that EAs, after they put down their vegetarian cocktails, will go on to the streets and sing [_The Internationale_](https://www.youtube.com/watch?v=t8EMx7Y16Vo). Perhaps theyre missing out.
[6] : If one attends [EA Global](https://slatestarcodex.com/2017/08/16/fear-and-loathing-at-effective-altruism-global-2017/), one does not get the impression that EAs, after they put down their vegetarian cocktails, will go on to the streets and sing [_The Internationale_](https://www.youtube.com/watch?v=t8EMx7Y16Vo). Perhaps theyre missing out.
<p>
<section id='isso-thread'>
<noscript>Javascript needs to be activated to view comments.</noscript>
</section>
</p>

@ -128,4 +128,4 @@ Of the questions which have been added recently to the Good Judgment Open, the c
* [Zvi on Evaluating Predictions in Hindsight](https://www.lesswrong.com/posts/BthNiWJDagLuf2LN2/evaluating-predictions-in-hindsight). A fun read. Of course, the dissing of Scott Alexander's prediction is fun to read, but I really want to see how a list of Zvi's predictions fares.
* An oldie related to the upcoming US elections: [Which Economic Indicators Best Predict Presidential Elections?](https://fivethirtyeight.blogs.nytimes.com/2011/11/18/which-economic-indicators-best-predict-presidential-elections/), from 2011's Nate Silver.
* [A rad comment exchange at GJOpen](https://www.gjopen.com/comments/comments/1018771) in which cool superforecaster @Anneinak shares some pointers.
* [As the efficient markets hypothesis turns 50, it is time to bin it](https://www.ft.com/content/dbf88254-22af-11ea-b8a1-584213ee7b2b) for a Financial Times article, from Jan 1st and thus untainted by coronavirus discussion. Related: [This LW comment by Wei Dai](https://www.lesswrong.com/posts/jAixPHwn5bmSLXiMZ/open-and-welcome-thread-february-2020?commentId=a9YCk3ZtpQZCDqeqR#wAHCXmnywzfhoQT9c) and [this tweet](https://twitter.com/ESYudkowsky/status/1233174331133284353) from Eliezer Yudkowsky. See also a very rambly article by an Australian neswpaper: [Pandemic highlights problems with efficient-market hypothesis](https://independentaustralia.net/politics/politics-display/pandemic-highlights-problems-with-efficient-market-hypothesis,13776).
* [As the efficient markets hypothesis turns 50, it is time to bin it](https://www.ft.com/content/dbf88254-22af-11ea-b8a1-584213ee7b2b) for a Financial Times article, from Jan 1st and thus untainted by coronavirus discussion. Related: [This LW comment by Wei Dai](https://www.lesswrong.com/posts/jAixPHwn5bmSLXiMZ/open-and-welcome-thread-february-2020?commentId=a9YCk3ZtpQZCDqeqR#wAHCXmnywzfhoQT9c) and [this tweet](https://twitter.com/ESYudkowsky/status/1233174331133284353) from Eliezer Yudkowsky. See also a very rambly article by an Australian neswpaper: [Pandemic highlights problems with efficient-market hypothesis](https://independentaustralia.net/politics/politics-display/pandemic-highlights-problems-with-efficient-market-hypothesis,13776).

@ -105,7 +105,7 @@ This month they've organized a flurry of activities, most notably:
PredictIt is a prediction platform restricted to US citizens, but also accessible with a VPN. This month, they present a map about the electoral college result in the USA. States are colored according to the market prices:
![](..images/654d6212cd170b9287738a89bd6b4535248ed6e1.png)
![](https://images.nunosempere.com/blog/2020/05/31/forecasting-newsletter-2020-05/654d6212cd170b9287738a89bd6b4535248ed6e1.png)
Some of the predictions I found most interesting follow. The market probabilities can be found below; the engaged reader might want to write down their own probabilities and then compare.
@ -259,7 +259,7 @@ This section contains items which have recently come to my attention, but which
> Our judges in this study were eight individuals, carefully selected for their expertise as handicappers. Each judge was presented with a list of 88 variables culled from the past performance charts. He was asked to indicate which five variables out of the 88 he would wish to use when handicapping a race, if all he could have was five variables. He was then asked to indicate which 10, which 20, and which 40 he would use if 10, 20, or 40 were available to him.
> We see that accuracy was as good with five variables as it was with 10, 20, or 40. The flat curve is an average over eight subjects and is somewhat misleading. Three of the eight actually showed a decrease in accuracy with more information, two improved, and three stayed about the same. All of the handicappers became more confident in their judgments as information increased.
> ![](..images/e8ac191e43364ff35bdc19361dd92c9a74e7109a.png)
> ![](https://images.nunosempere.com/blog/2020/05/31/forecasting-newsletter-2020-05/e8ac191e43364ff35bdc19361dd92c9a74e7109a.png)
* The study contains other nuggets, such as:
* An experiment on trying to predict the outcome of a given equation. When the feedback has a margin of error, this confuses respondents.

@ -1,8 +1,6 @@
Forecasting Newsletter: June 2020.
==============
# Forecasting Newsletter. June 2020.
## Highlights
1. Facebook launches [Forecast](https://www.forecastapp.net/), a community for crowdsourced predictions.
@ -163,4 +161,4 @@ Note to the future: All links are added automatically to the Internet Archive. I
> "I beseech you, in the bowels of Christ, think it possible that you may be mistaken." [Oliver Cromwell](https://en.wikipedia.org/wiki/Cromwell%27s_rule)
---
---

@ -115,7 +115,7 @@ Ordered in subjective order of importance:
* The International Energy Agency had terrible forecasts on solar photo-voltaic energy production, until [recently](https://pv-magazine-usa.com/2020/07/12/has-the-international-energy-agency-finally-improved-at-forecasting-solar-growth/):
> ![](.images/7244132c6380f86a5fc5327b5c6abb70e741097a.jpg)
> ![](https://images.nunosempere.com/blog/2020/08/01/forecasting-newsletter-2020-07/7244132c6380f86a5fc5327b5c6abb70e741097a.jpg)
> ...Its a scenario assuming current policies are kept and no new policies are added.
@ -241,7 +241,7 @@ Ordered in subjective order of importance:
* [Taleb](https://forecasters.org/blog/2020/06/14/on-single-point-forecasts-for-fat-tailed-variables/): _On single point forecasts for fat tailed variables_. Leitmotiv: Pandemics are fat-tailed.
> ![](.images/d263195904a7942604599ff703fcb71f28d0a156.png) ![](.images/860ccc6875dd7044a884708cd8c34c6bb3d70506.png)
> ![](https://images.nunosempere.com/blog/2020/08/01/forecasting-newsletter-2020-07/d263195904a7942604599ff703fcb71f28d0a156.png) ![](https://images.nunosempere.com/blog/2020/08/01/forecasting-newsletter-2020-07/860ccc6875dd7044a884708cd8c34c6bb3d70506.png)
> We do not need more evidence under fat tailed distributions — it is there in the properties themselves (properties for which we have ample evidence) and these clearly represent risk that must be killed in the egg (when it is still cheap to do so). Secondly, unreliable data — or any source of uncertainty — should make us follow the most paranoid route. \[...\] more uncertainty in a system makes precautionary decisions very easy to make (if I am uncertain about the skills of the pilot, I get off the plane).

@ -179,7 +179,7 @@ The Foresight Insitute organizes weekly talks; here is one with Samo Burja on [l
Last, but not least, Ozzie Gooen on [Multivariate estimation & the Squiggly language](https://www.lesswrong.com/posts/kTzADPE26xh3dyTEu/multivariate-estimation-and-the-squiggly-language):
![](.images/fef39d9a14a8ca8986c984ba2f8227d1581d9421.jpg)
![](https://images.nunosempere.com/blog/2020/10/01/forecasting-newsletter-september-2020/fef39d9a14a8ca8986c984ba2f8227d1581d9421.jpg)
---

@ -70,7 +70,7 @@ Boeing [releases](https://www.fool.com/investing/2020/10/15/boeings-commercial-m
The [World Agricultural Supply and Demand Estimates](https://www.usda.gov/oce/commodity/wasde) is a monthly report by the US Department of Agriculture. It provides monthly estimates and past figures for crops worldwide, and for livestock production in the US specifically (meat, poultry, dairy), which might be of interest to the animal suffering movement. It also provides estimates of the past reliability of those forecasts. The October report can be found [here](https://www.usda.gov/oce/commodity/wasde/wasde1020.pdf), along with a summary [here](https://www.feedstuffs.com/markets/usda-raises-meat-poultry-production-forecast). The image below presents the 2020 and 2021 predictions, as well as the 2019 numbers:
![](.images/c1fa5c2d58e4b0b76d0c7afab896ee89a7289559.png)
![](https://images.nunosempere.com/blog/2020/11/01/forecasting-newsletter-october-2020/c1fa5c2d58e4b0b76d0c7afab896ee89a7289559.png)
The Atlantic considers scenarios under which [Trump refuses to concede](https://www.theatlantic.com/magazine/archive/2020/11/what-if-trump-refuses-concede/616424/). Warning: very long, very chilling.

@ -13,7 +13,7 @@ For example if only the top forecaster wins a prize, you might want to predict a
Consider for example [this prediction contest](https://predictingpolitics.com/2020/08/02/the-predictions-are-in/), which only had a prize for #1. The following question asks about the margin Biden would win or lose Georgia by:
![](.images/f736a63590b98d329a456b5ff1cc055da86d416c.png)
![](https://images.nunosempere.com/blog/2020/11/10/incentive-problems-with-current-forecasting-competitions/f736a63590b98d329a456b5ff1cc055da86d416c.png)
Then the most likely scenario might be a close race, but the prediction which would have maximized your odds of coming in #1st might be much more extremized, because other predictors are more tightly packed in the middle.

@ -73,7 +73,7 @@ I also had a payout for insightful comments, such that the nth most upvoted comm
Note that the projects were _not_ chosen so as to maximize impact, but rather as to maximize information about whether their value could be predicted.
![](.images/0e2bfcbc0fa993098421b08b67af411ec30e8ffb.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/0e2bfcbc0fa993098421b08b67af411ec30e8ffb.png)
We observe that:
@ -96,7 +96,7 @@ Predictions:
* Centered 50% confidence interval: 33 to 74
* Centered 95% confidence interval: 11 to 111
![](.images/4a4419c6711561edc7b61a8c0633da2717c0913f.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/4a4419c6711561edc7b61a8c0633da2717c0913f.png)
Actual upvotes after one month: 31
@ -114,7 +114,7 @@ Predictions:
* Centered 50% confidence interval: 28 to 68
* Centered 95% confidence interval: 9 to 106
![](.images/a71da8f5dd6340d4f81828cb1cb5b20b292c3188.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/a71da8f5dd6340d4f81828cb1cb5b20b292c3188.png)
Actual upvotes after one month: 20 for the [first post](https://www.lesswrong.com/posts/yWmmYLCJft7u7XL5o/some-examples-of-technology-timelines), 49 for the [second one](https://www.lesswrong.com/posts/FaCqw2x59ZFhMXJr9/a-prior-for-technological-discontinuities). I'm taking 49 as the resolution.
@ -132,7 +132,7 @@ Predictions:
* Centered 50% confidence interval: 15 to 57
* Centered 95% confidence interval: 4 to 91
![](.images/e1d6f9b8bfd27b8f9102143b112b9d9c7fc75fb7.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/e1d6f9b8bfd27b8f9102143b112b9d9c7fc75fb7.png)
Actual upvotes after one month: 22
@ -150,7 +150,7 @@ Predictions:
* Centered 50% confidence interval: 17 to 60
* Centered 95% confidence interval: 6 to 102
![](.images/7da9d104143c060272f96cbd12bcc27e2c71dbf9.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/7da9d104143c060272f96cbd12bcc27e2c71dbf9.png)
Actual upvotes after one month: 20
@ -167,7 +167,7 @@ Predictions:
* Centered 50% confidence interval: 19 to 59
* Centered 95% confidence interval: 7 to 92
![](.images/89ff6294dfe357bfebc3640584d42060934103c4.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/89ff6294dfe357bfebc3640584d42060934103c4.png)
Actual upvotes after one month: 27
@ -182,7 +182,7 @@ A further idea was my proposal for my Summer Research Fellowship at FHI, though
* Centered 50% confidence interval: 24 to 70
* Centered 95% confidence interval: 10 to 103
![](.images/9e6a4434c603e9fd94e9a6819fff247011a5ab93.png)
![](https://images.nunosempere.com/blog/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of/9e6a4434c603e9fd94e9a6819fff247011a5ab93.png)
I take these data-points as further evidence that this setup is interesting or worth it; arguably a major take-away for this project is “a fairly simple forecasting system is able to produce a project which gets accepted to the FHI summer fellowship.” Because the program got ~300 [applications](https://forum.effectivealtruism.org/posts/EPGdwe6vsCY7A9HPa/review-of-fhi-s-summer-research-fellowship-2020), but only 27 participants were accepted, this puts this forecasting setup on the top 9% of applicants in terms of some fuzzy “optimization power” (though this is a simplification, because the project proposal was probably one of many factors.)

@ -11,7 +11,7 @@ As my primary conclusion, I found that assessing the relative value of projects
The reader can see my results [here](https://docs.google.com/spreadsheets/d/1BGmkDrQzDCYdMXEvIv7DhMusG-7EwBTkz8MiaEBq9VE/edit#gid=0), though Id like to note that theyre preliminary and experimental, as is the rest of this post. Towards the end of this post, there is a section which mentions more caveats.
![](.images/16bb08699adfac73a6545a3e056f19480a486da7.png)
![](https://images.nunosempere.com/blog/2020/12/01/an-experiment-to-evaluate-the-value-of-one-researcher-s-work/16bb08699adfac73a6545a3e056f19480a486da7.png)
Related work:

@ -0,0 +1,20 @@
## In 2020...
- [A review of two free online MIT Global Poverty courses](https://nunosempere.com/2020/01/15/mit-edx-review)
- [A review of two books on survey-making](https://nunosempere.com/2020/03/01/survey-making)
- [Shapley Values II: Philantropic Coordination Theory & other miscellanea.](https://nunosempere.com/2020/03/10/shapley-values-ii)
- [New Cause Proposal: International Supply Chain Accountability](https://nunosempere.com/2020/04/01/international-supply-chain-accountability)
- [Forecasting Newsletter: April 2020](https://nunosempere.com/2020/04/30/forecasting-newsletter-2020-04)
- [Forecasting Newsletter: May 2020.](https://nunosempere.com/2020/05/31/forecasting-newsletter-2020-05)
- [Forecasting Newsletter: June 2020.](https://nunosempere.com/2020/07/01/forecasting-newsletter-2020-06)
- [Forecasting Newsletter: July 2020.](https://nunosempere.com/2020/08/01/forecasting-newsletter-2020-07)
- [Forecasting Newsletter: August 2020. ](https://nunosempere.com/2020/09/01/forecasting-newsletter-august-2020)
- [Forecasting Newsletter: September 2020. ](https://nunosempere.com/2020/10/01/forecasting-newsletter-september-2020)
- [Forecasting Newsletter: October 2020.](https://nunosempere.com/2020/11/01/forecasting-newsletter-october-2020)
- [Incentive Problems With Current Forecasting Competitions.](https://nunosempere.com/2020/11/10/incentive-problems-with-current-forecasting-competitions)
- [Announcing the Forecasting Innovation Prize](https://nunosempere.com/2020/11/15/announcing-the-forecasting-innovation-prize)
- [Predicting the Value of Small Altruistic Projects: A Proof of Concept Experiment.](https://nunosempere.com/2020/11/22/predicting-the-value-of-small-altruistic-projects-a-proof-of)
- [An experiment to evaluate the value of one researcher's work](https://nunosempere.com/2020/12/01/an-experiment-to-evaluate-the-value-of-one-researcher-s-work)
- [Forecasting Newsletter: November 2020.](https://nunosempere.com/2020/12/01/forecasting-newsletter-november-2020)
- [What are good rubrics or rubric elements to evaluate and predict impact?](https://nunosempere.com/2020/12/03/what-are-good-rubrics-or-rubric-elements-to-evaluate-and)
- [Big List of Cause Candidates](https://nunosempere.com/2020/12/25/big-list-of-cause-candidates)

@ -0,0 +1,30 @@
## In 2021...
- [Forecasting Newsletter: December 2020](https://nunosempere.com/2021/01/01/forecasting-newsletter-december-2020)
- [2020: Forecasting in Review](https://nunosempere.com/2021/01/10/2020-forecasting-in-review)
- [A Funnel for Cause Candidates](https://nunosempere.com/2021/01/13/a-funnel-for-cause-candidates)
- [Forecasting Newsletter: January 2021](https://nunosempere.com/2021/02/01/forecasting-newsletter-january-2021)
- [Forecasting Prize Results](https://nunosempere.com/2021/02/19/forecasting-prize-results)
- [Forecasting Newsletter: February 2021](https://nunosempere.com/2021/03/01/forecasting-newsletter-february-2021)
- [Introducing Metaforecast: A Forecast Aggregator and Search Tool](https://nunosempere.com/2021/03/07/introducing-metaforecast-a-forecast-aggregator-and-search)
- [Relative Impact of the First 10 EA Forum Prize Winners](https://nunosempere.com/2021/03/16/relative-impact-of-the-first-10-ea-forum-prize-winners)
- [Forecasting Newsletter: March 2021](https://nunosempere.com/2021/04/01/forecasting-newsletter-march-2021)
- [Forecasting Newsletter: April 2021](https://nunosempere.com/2021/05/01/forecasting-newsletter-april-2021)
- [Forecasting Newsletter: May 2021](https://nunosempere.com/2021/06/01/forecasting-newsletter-may-2021)
- [2018-2019 Long-Term Future Fund Grantees: How did they do?](https://nunosempere.com/2021/06/16/2018-2019-long-term-future-fund-grantees-how-did-they-do)
- [What should the norms around privacy and evaluation in the EA community be?](https://nunosempere.com/2021/06/16/what-should-the-norms-around-privacy-and-evaluation-in-the)
- [Shallow evaluations of longtermist organizations](https://nunosempere.com/2021/06/24/shallow-evaluations-of-longtermist-organizations)
- [Forecasting Newsletter: June 2021](https://nunosempere.com/2021/07/01/forecasting-newsletter-june-2021)
- [Forecasting Newsletter: July 2021](https://nunosempere.com/2021/08/01/forecasting-newsletter-july-2021)
- [Forecasting Newsletter: August 2021](https://nunosempere.com/2021/09/01/forecasting-newsletter-august-2021)
- [Frank Feedback Given To Very Junior Researchers](https://nunosempere.com/2021/09/01/frank-feedback-given-to-very-junior-researchers)
- [Building Blocks of Utility Maximization](https://nunosempere.com/2021/09/20/building-blocks-of-utility-maximization)
- [Forecasting Newsletter: September 2021.](https://nunosempere.com/2021/10/01/forecasting-newsletter-september-2021)
- [An estimate of the value of Metaculus questions](https://nunosempere.com/2021/10/22/an-estimate-of-the-value-of-metaculus-questions)
- [Forecasting Newsletter: October 2021.](https://nunosempere.com/2021/11/02/forecasting-newsletter-october-2021)
- [A Model of Patient Spending and Movement Building](https://nunosempere.com/2021/11/08/a-model-of-patient-spending-and-movement-building)
- [Simple comparison polling to create utility functions](https://nunosempere.com/2021/11/15/simple-comparison-polling-to-create-utility-functions)
- [Pathways to impact for forecasting and evaluation](https://nunosempere.com/2021/11/25/pathways-to-impact-for-forecasting-and-evaluation)
- [Forecasting Newsletter: November 2021](https://nunosempere.com/2021/12/02/forecasting-newsletter-november-2021)
- [External Evaluation of the EA Wiki](https://nunosempere.com/2021/12/13/external-evaluation-of-the-ea-wiki)
- [Prediction Markets in The Corporate Setting](https://nunosempere.com/2021/12/31/prediction-markets-in-the-corporate-setting)

@ -30,9 +30,9 @@ _Open Philanthropy staff reviewed this post prior to publication._
## Background information
From 2013 to 2021, Open Philanthropy distributed $199,574,123 to [criminal justice reform](https://www.openphilanthropy.org/giving/grants?field_focus_area_target_id_selective=726) \[0\]. In 2015, they [hired Chloe Cockburn](https://www.openphilanthropy.org/blog/incoming-program-officer-criminal-justice-reform-chloe-cockburn) as a program officer, following a [“stretch goal”](https://www.openphilanthropy.org/blog/open-philanthropy-project-update-us-policy) for the year. They elaborated on their method and reasoning on [The Process of Hiring our First Cause-Specific Program Officer](https://www.openphilanthropy.org/blog/process-hiring-our-first-cause-specific-program-officer). 
From 2013 to 2021, Open Philanthropy distributed $199,574,123 to [criminal justice reform](https://www.openphilanthropy.org/giving/grants?field_focus_area_target_id_selective=726) [0]. In 2015, they [hired Chloe Cockburn](https://www.openphilanthropy.org/blog/incoming-program-officer-criminal-justice-reform-chloe-cockburn) as a program officer, following a [“stretch goal”](https://www.openphilanthropy.org/blog/open-philanthropy-project-update-us-policy) for the year. They elaborated on their method and reasoning on [The Process of Hiring our First Cause-Specific Program Officer](https://www.openphilanthropy.org/blog/process-hiring-our-first-cause-specific-program-officer). 
In that blog post, they described their expansion into the criminal justice reform space as substantially a “_bet on Chloe_”. Overall, the post was very positive about Chloe (more on red teams below). But the post expressed some reservations because “_Chloe has a generally different profile from the sorts of people GiveWell has hired in the past. In particular, she is probably less quantitatively inclined than most employees at GiveWell. This isnt surprising or concerning - most GiveWell employees are Research Analysts, and we see the Program Officer role as calling for a different set of abilities. That said, its possible that different reasoning styles will lead to disagreement at times. We think of this as only a minor concern_.” In hindsight, it seems plausible to me that this relative lack of quantitative inclination played a role in Open Philanthropy making comparatively suboptimal grants in the criminal justice space \[1\]. 
In that blog post, they described their expansion into the criminal justice reform space as substantially a “_bet on Chloe_”. Overall, the post was very positive about Chloe (more on red teams below). But the post expressed some reservations because “_Chloe has a generally different profile from the sorts of people GiveWell has hired in the past. In particular, she is probably less quantitatively inclined than most employees at GiveWell. This isnt surprising or concerning - most GiveWell employees are Research Analysts, and we see the Program Officer role as calling for a different set of abilities. That said, its possible that different reasoning styles will lead to disagreement at times. We think of this as only a minor concern_.” In hindsight, it seems plausible to me that this relative lack of quantitative inclination played a role in Open Philanthropy making comparatively suboptimal grants in the criminal justice space [1]. 
In mid-2019, Open Philanthropy published a blog post titled [GiveWells Top Charities Are (Increasingly) Hard to Beat](https://www.openphilanthropy.org/blog/givewells-top-charities-are-increasingly-hard-beat). It explained that, with [GiveWells expansion into researching more areas](https://blog.givewell.org/2019/02/07/how-givewells-research-is-evolving/), Open Philanthropy expected that there would be enough room for more funding for charities that were as good as GiveWells top charities. Thus, causes like Criminal Justice Reform looked less promising.
@ -54,9 +54,9 @@ There are around 2M people in US prisons and jails. Some are highly dangerous, b
Outlining a positive vision for reform is still an area of active work. Still, a first approximation might be as follows:
Criminals should be punished in proportion to an estimate of the harm they have caused, times a factor to account for a less than 100% chance of getting caught, to ensure that crimes are not worth it in expectation. This is in opposition to otherwise disproportionate jail sentences caused by pressures on politicians to appear tough on crime. In addition, criminals then work to provide restitution to the victim, if the victim so desires, per some restorative justice framework \[2\].
Criminals should be punished in proportion to an estimate of the harm they have caused, times a factor to account for a less than 100% chance of getting caught, to ensure that crimes are not worth it in expectation. This is in opposition to otherwise disproportionate jail sentences caused by pressures on politicians to appear tough on crime. In addition, criminals then work to provide restitution to the victim, if the victim so desires, per some restorative justice framework [2].
In a best-case scenario, criminal justice reform could achieve somewhere between a 25% reduction in incarceration in the short-term and a 75% reduction in the longer term, bringing the incarceration rate down to only twice that of Spain \[4\], while maintaining the crime rate constant. Say that $2B to $20B, or 10x to 100x the amount that Open Philanthropy has already spent, would have a 1 to 10% chance of succeeding at that goal \[5\].
In a best-case scenario, criminal justice reform could achieve somewhere between a 25% reduction in incarceration in the short-term and a 75% reduction in the longer term, bringing the incarceration rate down to only twice that of Spain [4], while maintaining the crime rate constant. Say that $2B to $20B, or 10x to 100x the amount that Open Philanthropy has already spent, would have a 1 to 10% chance of succeeding at that goal [5].
## What is the cost-effectiveness of criminal justice grants?
@ -106,7 +106,7 @@ That model produces the following distribution:
Note: `mean(cost)/mean(estimateQALYs)` is equal to $8160/QALY
This model estimates that criminal justice reform buys one QALY \[6\](quality-adjusted life year) for $76k, on average. But the model is very uncertain, and its 90% confidence interval is $1.3k  to ~$290k per QALY. It assigns a 50% chance to it costing less than ~$19k. For a calculation that instead looks at more marginal impact, see [here](https://gist.github.com/NunoSempere/1718dbadfba4012d252d6b6118b72194).
This model estimates that criminal justice reform buys one QALY [6](quality-adjusted life year) for $76k, on average. But the model is very uncertain, and its 90% confidence interval is $1.3k  to ~$290k per QALY. It assigns a 50% chance to it costing less than ~$19k. For a calculation that instead looks at more marginal impact, see [here](https://gist.github.com/NunoSempere/1718dbadfba4012d252d6b6118b72194).
_EDIT 22/06/2022_**:** Commenters pointed out that the mean of `cost / estimateQALYs` in the chart above isn't the right quantity to look at in the chart above. `mean(cost)/mean(estimateQALYs)` is probably a better representation of "expected cost per QALY. That quantity is $8160/QALY for the above model. If one looks at `1/mean(estimateQALYs/cost)`, this is $5k per QALY. Overall I would instead recommend looking at the 95% confidence intervals, rather at the means.  See [this comment thread](https://forum.effectivealtruism.org/posts/h2N9qEbvQ6RHABcae/a-critical-review-of-open-philanthropy-s-bet-on-criminal?commentId=crJ9FLTKikzadqL36) for discussion. I've added notes below each model.
@ -211,9 +211,9 @@ Some other sources of model error might be:
Of these, I think that not modelling the cost to the US of keeping someone in prison, and not modelling recidivism are one of the weakest aspects of my current model. For a model which tries to incorporate these, see the appendix. So overall, there is likely a degree of model error. But I still think that the small models point to something meaningful. 
We can also compare the estimates in this post with other estimates. A [lengthy report](https://www.openphilanthropy.org/files/Focus_Areas/Criminal_Justice_Reform/The_impacts_of_incarceration_on_crime_10.pdf) commissioned by Open Philanthropy on the impacts of incarceration on crime mostly concludes that **marginal** reduction in crime through more incarceration is non-existent—because the effects of reduced crime while prisoners are in prison are compensated by increased crime when they get out, proportional to the length of their sentence. But the report reasons about short-term effects and marginal changes, e.g., based on RCTs or natural experiments, rather than considering longer-term incentive landscape changes following systemic reform. So for the purposes of judging systemic reform rather than marginal changes, I am inclined to almost completely discount it \[7\]. That said, my unfamiliarity with the literature is likely one of the main weaknesses of this post. 
We can also compare the estimates in this post with other estimates. A [lengthy report](https://www.openphilanthropy.org/files/Focus_Areas/Criminal_Justice_Reform/The_impacts_of_incarceration_on_crime_10.pdf) commissioned by Open Philanthropy on the impacts of incarceration on crime mostly concludes that **marginal** reduction in crime through more incarceration is non-existent—because the effects of reduced crime while prisoners are in prison are compensated by increased crime when they get out, proportional to the length of their sentence. But the report reasons about short-term effects and marginal changes, e.g., based on RCTs or natural experiments, rather than considering longer-term incentive landscape changes following systemic reform. So for the purposes of judging systemic reform rather than marginal changes, I am inclined to almost completely discount it [7]. That said, my unfamiliarity with the literature is likely one of the main weaknesses of this post. 
Open Philanthropys [own initial casual cause estimations](https://docs.google.com/document/d/1GsE2_TNWn0x6MWL1PTdkZT2vQNFW8VFBslC5qjk4sgo/edit#) are much more optimistic. In a 2020 [interview](https://www.youtube.com/watch?t=2564&v=q4Z0Z-A_O5A&feature=youtu.be) with Chloe Cockburn, she mentions that Open Philanthropy estimates criminal justice reform to be around 1/4th as valuable as donations to top GiveWell charities, but that she is personally higher based on subjective factors \[8\].
Open Philanthropys [own initial casual cause estimations](https://docs.google.com/document/d/1GsE2_TNWn0x6MWL1PTdkZT2vQNFW8VFBslC5qjk4sgo/edit#) are much more optimistic. In a 2020 [interview](https://www.youtube.com/watch?t=2564&v=q4Z0Z-A_O5A&feature=youtu.be) with Chloe Cockburn, she mentions that Open Philanthropy estimates criminal justice reform to be around 1/4th as valuable as donations to top GiveWell charities, but that she is personally higher based on subjective factors [8].
For illustration, here are a few grants that I dont think meet the funding bar of being comparable to AMF or GiveDirectly, based on casual browsing of their websites: 
@ -228,7 +228,7 @@ For illustration, here are a few grants that I dont think meet the funding ba
The [last one](https://www.openphilanthropy.org/focus/us-policy/criminal-justice-reform/photo-patch-foundation-general-support-2019) struck me as being both particularly bad and relatively easy to evaluate: A letter [costs $2.5](https://donorbox.org/patching-relationships-with-letters-photos-2), about the same as [deworming several kids](https://docs.google.com/spreadsheets/d/12C6jPuPuTiq2U8pWCBoT9Az2kunEXGkm_k7cqSIKm_8/edit#gid=215029904) at $0.35 to $0.97 per deworming treatment. But sending a letter intuitively seems significantly less impactful.
Conversely, larger grants, such as, for instance, [a $2.5M grant](https://www.openphilanthropy.org/focus/us-policy/criminal-justice-reform/color-of-change-education-fund-criminal-justice-reform-2019) to [Color Of Change](https://colorofchange.org/), are harder to casually evaluate. For example, that particular grant was given to support [prosecutorial accountability campaigns](https://www.winningjustice.org/) and to support Color Of Changes [work with the film Just Mercy](https://web.archive.org/web/20200717023842/https://untiljusticeisreal.colorofchange.org/). And because the grant was 50% of Color of Changes [budget for one year](https://projects.propublica.org/nonprofits/organizations/204496889), I imagine it also subsidized its subsequent activities, such as the [campaigns currently featured on its website](https://colorofchange.org/) \[10\], or the $415k [salary](https://projects.propublica.org/nonprofits/organizations/204496889) of its president \[11\]. So to the extent that the grants funds were used for prosecutorial accountability, they may have been more cost-effective, and to the extent that they were used for other purposes, less so. Overall, I dont think that estimating the cost-effectiveness of larger grants as the cost-effectiveness of systemic change would be grossly unfair.
Conversely, larger grants, such as, for instance, [a $2.5M grant](https://www.openphilanthropy.org/focus/us-policy/criminal-justice-reform/color-of-change-education-fund-criminal-justice-reform-2019) to [Color Of Change](https://colorofchange.org/), are harder to casually evaluate. For example, that particular grant was given to support [prosecutorial accountability campaigns](https://www.winningjustice.org/) and to support Color Of Changes [work with the film Just Mercy](https://web.archive.org/web/20200717023842/https://untiljusticeisreal.colorofchange.org/). And because the grant was 50% of Color of Changes [budget for one year](https://projects.propublica.org/nonprofits/organizations/204496889), I imagine it also subsidized its subsequent activities, such as the [campaigns currently featured on its website](https://colorofchange.org/) [10], or the $415k [salary](https://projects.propublica.org/nonprofits/organizations/204496889) of its president [11]. So to the extent that the grants funds were used for prosecutorial accountability, they may have been more cost-effective, and to the extent that they were used for other purposes, less so. Overall, I dont think that estimating the cost-effectiveness of larger grants as the cost-effectiveness of systemic change would be grossly unfair.
## Why did Open Philanthropy donate to criminal justice in the first place?
@ -255,7 +255,7 @@ For instance, per [Open Philanthropys estimations:](https://www.openphilanthr
> _Each grant is subject to a cost-effectiveness calculation based on the following formula:_
>
> _Number of years averted x $50,000 for prison or $100,000 for jail \[our valuation of a year of incarceration averted\] / 100 \[we aim to achieve at least 100x return on investment, and ideally much more\] - discounts for causation and implementation uncertainty and multiple attribution of credit > $ grant amount. Not all grants are susceptible to this type of calculation, but we apply it when feasible._
> _Number of years averted x $50,000 for prison or $100,000 for jail [our valuation of a year of incarceration averted] / 100 [we aim to achieve at least 100x return on investment, and ideally much more] - discounts for causation and implementation uncertainty and multiple attribution of credit > $ grant amount. Not all grants are susceptible to this type of calculation, but we apply it when feasible._
That is, Open Philanthropys lower bound for funding criminal justice reform was $500 to $1,000 per year of prison/jail avoided. Per this lower bound, criminal justice reform would be roughly as cost-effective as GiveDirectly. But this bound is much more optimistic than my estimates of the cost-effectiveness of criminal justice reform grants above.
@ -314,13 +314,13 @@ In a 2016 blog post explaining worldview diversification, Holden Karnofsky [writ
> _Currently, we tend to invest resources in each cause up to the point where it seems like there are strongly diminishing returns, or the point where it seems the returns are clearly worse than what we could achieve by reallocating the resources - whichever comes first_
Under some assumptions explained in that post, namely that the amounts given to each cause area are balanced to ensure that the values of the marginal grants to each area are similar, worldview diversification would be approximately optimal even from an expected value perspective \[12\]. My impression is that this monitoring and rebalancing did not happen fast enough in the case of criminal justice reform.
Under some assumptions explained in that post, namely that the amounts given to each cause area are balanced to ensure that the values of the marginal grants to each area are similar, worldview diversification would be approximately optimal even from an expected value perspective [12]. My impression is that this monitoring and rebalancing did not happen fast enough in the case of criminal justice reform.
Incongruous as it might ring to my ears, it is also possible that optimizing the allocation of an additional $100M might not have been the most valuable thing for Open Philanthropys leadership to have been doing. For instance, exploring new areas, convincing or coordinating with additional billionaires or optimizing other parts of Open Philanthropys portfolio might have been more valuable. 
### The Social Harmony Hypothesis
Firing people is hard. When you structured your bet on a cause area as a bet on a specific person, I imagine that resolving that bet as a negative would be awkward \[14\]. 
Firing people is hard. When you structured your bet on a cause area as a bet on a specific person, I imagine that resolving that bet as a negative would be awkward [14]. 
### The Soft Landing Hypothesis
@ -365,7 +365,7 @@ Instead, I would like to see:
* further analysis of alternatives to moral diversification,
* more frequent monitoring of whether the assumptions behind moral diversification still make sense,
* and a more regular rebalancing of the proportion of funds assigned to each cause according to the value of their marginal grants \[13\].
* and a more regular rebalancing of the proportion of funds assigned to each cause according to the value of their marginal grants [13].
### On Open Philanthropys Openness
@ -403,10 +403,10 @@ Instead, have a forecasting system which is not restricted to Open Philanthropy
These questions might be operationalized as:
* _“In year \[x\], what probability will \[some mechanism\] assign to \[some belief\]?”_
* _“In year \[x\], what will Open Philanthropys best estimate of the value for grant \[y\] be?”_ + _“In year \[x\], what will be Open Philanthropys bar for funding be?”_.
* Or, even simpler still, asking directly or _“in year \[x\], will Open Philanthropy regret having made grant \[y\]?”,_
* _“in year \[x\], will Open Philanthropy regret having made decision \[y\]?”,_
* _“In year [x], what probability will [some mechanism] assign to [some belief]?”_
* _“In year [x], what will Open Philanthropys best estimate of the value for grant [y] be?”_ + _“In year [x], what will be Open Philanthropys bar for funding be?”_.
* Or, even simpler still, asking directly or _“in year [x], will Open Philanthropy regret having made grant [y]?”,_
* _“in year [x], will Open Philanthropy regret having made decision [y]?”,_
There would be a few challenges in creating such a forecasting system in a way that would be useful to Open Philanthropy:
@ -496,23 +496,23 @@ A review from Open Philanthropy on [the impacts of incarceration on crime](https
## Footnotes
\[0\]. This number is $138.8 different than the $138.8M given in Open Philanthropy's [website](https://www.openphilanthropy.org/focus/criminal-justice-reform/), which is probably not up to date with their [grants database](https://www.openphilanthropy.org/grants/).
[0]. This number is $138.8 different than the $138.8M given in Open Philanthropy's [website](https://www.openphilanthropy.org/focus/criminal-justice-reform/), which is probably not up to date with their [grants database](https://www.openphilanthropy.org/grants/).
\[1\]. Note that this paragraph is written from my perspective doing a postmortem, rather than aiming to summarize what they thought at the time.
[1]. Note that this paragraph is written from my perspective doing a postmortem, rather than aiming to summarize what they thought at the time.
\[2\]. Note that restorative justice is normally suggested as a total replacement for punitive justice. But I think that pushing back punitive justice until it is incentive compatible and then applying restorative justice frameworks would also work, and would encounter less resistance.
[2]. Note that restorative justice is normally suggested as a total replacement for punitive justice. But I think that pushing back punitive justice until it is incentive compatible and then applying restorative justice frameworks would also work, and would encounter less resistance.
\[3\]. Subjective estimate based on the US having many more guns, a second amendment, a different culture, more of a drug problem.
[3]. Subjective estimate based on the US having many more guns, a second amendment, a different culture, more of a drug problem.
\[4\]. Subjective estimate; I think it would take 1-2 orders of magnitude more investment than the already given $2B.
[4]. Subjective estimate; I think it would take 1-2 orders of magnitude more investment than the already given $2B.
\[5\].  Note that QALYs refers to a specific [construct](https://en.wikipedia.org/wiki/Quality-adjusted_life_year). This has led people to [come up](https://forum.effectivealtruism.org/s/2nMw7ASQNQ35iAz4T) with extensions and new definitions, e.g., the WALY (wellbeing-adjusted), HALY (happiness-adjusted), DALY (disability-adjusted), and SALY (suffering-adjusted) life years. But throughout this post, Im stretching that definition and mostly thinking about “QALYs as they should have been”.
[5].  Note that QALYs refers to a specific [construct](https://en.wikipedia.org/wiki/Quality-adjusted_life_year). This has led people to [come up](https://forum.effectivealtruism.org/s/2nMw7ASQNQ35iAz4T) with extensions and new definitions, e.g., the WALY (wellbeing-adjusted), HALY (happiness-adjusted), DALY (disability-adjusted), and SALY (suffering-adjusted) life years. But throughout this post, Im stretching that definition and mostly thinking about “QALYs as they should have been”.
\[6\]. Initially, Squiggle was making these calculations using monte-carlo simulations. However, operations multiplying and dividing lognormals can be done analytically. I extracted the functionality to do so into Simple Squiggle, and then helped the main Squiggle branch compute the model analytically. 
[6]. Initially, Squiggle was making these calculations using monte-carlo simulations. However, operations multiplying and dividing lognormals can be done analytically. I extracted the functionality to do so into Simple Squiggle, and then helped the main Squiggle branch compute the model analytically. 
Simple Squiggle does validate the model as producing an interval of $1.3k to $290k. To check this, feed \`1000000000 \* (2 to 20) / ((1000000 \* 1.5 to 2.5) \* 0.25 to 0.75 \* 0.2 to 6 \* 5 to 50 \* 0.01 to 0.1 \* 0.5 to 1 )\` into it
\[7\]. To elaborate on this, as far as I understand, to estimate the impact of incarceration, the reports' best source of evidence are randomized trials or natural experiments, e.g., harsher judges randomly assigned, arbitrary threshold changes resulting from changes in guidelines or policy, etc. But these methods will tend to estimate short-term changes, rather than longer term (e.g., intergenerational) changes. 
[7]. To elaborate on this, as far as I understand, to estimate the impact of incarceration, the reports' best source of evidence are randomized trials or natural experiments, e.g., harsher judges randomly assigned, arbitrary threshold changes resulting from changes in guidelines or policy, etc. But these methods will tend to estimate short-term changes, rather than longer term (e.g., intergenerational) changes. 
And I would give substantial weight to lighter sentencing in fact making it more worth it to commit crime. See Lagerros' [Unconscious Economics](https://www.lesswrong.com/posts/PrCmeuBPC4XLDQz8C/unconscious-economics).
@ -520,8 +520,8 @@ This topic also has very large number of degrees of choice (e.g., see p. 133 on
The report has a "devil's advocate case". But I think that it could have been much harsher, by incorporating hard-to-estimate long-term incentive changes.
\[8\]. Excerpt, with some light editing to exclude stutters: 
With a lot of hedging and assumptions and guessing, I think that we can show that we were at around 250x, versus GiveWell, which is at more like 1000x \[9\]. So according to Open Philanthropy, if you're just like, what's the place where I can put my dollar that does the most good, you should give to GiveWell, I think.
[8]. Excerpt, with some light editing to exclude stutters: 
With a lot of hedging and assumptions and guessing, I think that we can show that we were at around 250x, versus GiveWell, which is at more like 1000x [9]. So according to Open Philanthropy, if you're just like, what's the place where I can put my dollar that does the most good, you should give to GiveWell, I think.
That said, I would say well, first of all, if you feel that now's the time, now's a particular unique and important time to be working on this when there is a lot of traction, that puts a thumb on the scale more towards this. Deworming was very important 10 years ago, will be very important in 10 years. I think that's different than this issue, where you have this moments where we can actually make a lot of change, where a boost of cash is good.
@ -531,16 +531,24 @@ And then third, that 250x is based on the assumption that a year of freedom from
So, I'm telling you this, I don't say this to normal people, I have no idea what I'm talking about. But for EA folks, I think we're closer to 1000x than I've been able to show thus far. But if you want to be like "I'm helping the most that I can be certain about" yeah, for sure, go give your money to deworming, that's still probably true.
\[9\]: "1000x" (resp. 250x) refers to being 1000 times (resp. 250 times) more cost-effective than giving a dollar to someone with $50k of annual income; see [here](https://www.openphilanthropy.org/blog/technical-updates-our-global-health-and-wellbeing-cause-prioritization-framework#New_moral_weights).
[9]: "1000x" (resp. 250x) refers to being 1000 times (resp. 250 times) more cost-effective than giving a dollar to someone with $50k of annual income; see [here](https://www.openphilanthropy.org/blog/technical-updates-our-global-health-and-wellbeing-cause-prioritization-framework#New_moral_weights).
\[10\]. As I was writing this, it featured campaigns calling for common carriers to drop Fox, and for Amazon and Twitch to carry out [racial equity audits](https://web.archive.org/web/20220531204618/https://colorofchange.org/). But these have since cycled through.
[10]. As I was writing this, it featured campaigns calling for common carriers to drop Fox, and for Amazon and Twitch to carry out [racial equity audits](https://web.archive.org/web/20220531204618/https://colorofchange.org/). But these have since cycled through.
\[11\]. It rose from $216k in 2016 to $415k in 2019. Honestly I'm not even sure this unjustified; he could probably be a very highly paid political consultant, and a high salary is in fact a strong signal that his funders think that he shouldn't be.
[11]. It rose from $216k in 2016 to $415k in 2019. Honestly I'm not even sure this unjustified; he could probably be a very highly paid political consultant, and a high salary is in fact a strong signal that his funders think that he shouldn't be.
\[12\]. This excludes considerations around how much to donate each year.
[12]. This excludes considerations around how much to donate each year.
\[13\]. A side effect of spinning off Just Impact with a very sizeable initial endowment is that the careers of the Open Philanthropy officers involved appear to continue progressing. Commenters pointed out that this might make it easier to hire talent. But coming from a forecasting background which has some emphasis in proper scoring rules, this seems personally unappealing.
[13]. A side effect of spinning off Just Impact with a very sizeable initial endowment is that the careers of the Open Philanthropy officers involved appear to continue progressing. Commenters pointed out that this might make it easier to hire talent. But coming from a forecasting background which has some emphasis in proper scoring rules, this seems personally unappealing.
\[14\]. Technically, according to the shape of the values of their grants and the expected future shape, not just the values of the marginal grant.
[14]. Technically, according to the shape of the values of their grants and the expected future shape, not just the values of the marginal grant.
I also considered suggesting a ruthless Hunger Games-style fight between the representatives of different cause areas, with the winner getting all the resources regardless of diminishing returns. But I concluded that this was likely not possible in practice, and also that the neartermists would probably be in better shape.
<p>
<section id='isso-thread'>
<noscript>Javascript needs to be activated to view comments.</noscript>
</section>
</p>

@ -7,7 +7,7 @@ Following up on [Simple estimation examples in Squiggle](https://forum.effectiv
As well as in the [playground](https://www.squiggle-language.com/playground), Squiggle can also be used inside [VS Code](https://code.visualstudio.com/), after one installs [this extension](https://github.com/quantified-uncertainty/squiggle/tree/develop/packages/vscode-ext), following the instructions [here](https://github.com/quantified-uncertainty/squiggle/blob/develop/packages/vscode-ext/README.md). This is more convenient when working with more advanced models because models can be more quickly saved, and the overall experience is nicer.
<img src='https://i.imgur.com/ldmrmmX.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/squiggle-vscode.png' class='.img-medium-center'>
## Models
@ -49,11 +49,11 @@ xriskThroughAps(t) = advancedPowerSeekingAIBy(t) * xriskIfAPS(t)
This produces the cumulative and instantaneous probability of “advanced power-seeking AI” by/at each point in time:
<img src='https://i.imgur.com/7wlIKtp.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/squiggle-charts-agi.png' class='.img-medium-center'>
And then, assuming a constant 95% probability of x-risk given advanced power-seeking AGI, we can get the probability of such risk by every point in time:
<img src='https://i.imgur.com/hPuGhUE.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/probability-ai-xrisk-at-each-point-in-time.png' class='.img-medium-center'>
Now, the fun is that the x-risk is in fact not constant. If AGI happened tomorrow wed be much less prepared than if it happens in 70 years, and a better model would incorporate that. 
@ -64,7 +64,7 @@ For individual forecasts, rather than for models which combine different forecas
In the [preceding post](https://forum.effectivealtruism.org/posts/vh3YvCKnCBp6jDDFd/simple-estimation-examples-in-squiggle#Expected_value_for_a_list_of_things__complexity___2_10_), I presented some quick relative estimates for possible career pathways. Shortly after that, Benjamin Todd reached out about estimating the value of various career pathways he was considering. As a result, I created [this more complicated spreadsheet](https://docs.google.com/spreadsheets/d/1QATMTzLUdmxBqD2snhiAkH-_KvwbhGdlYaU8Ho7kjDY/edit?usp=sharing):
 
<img src='https://i.imgur.com/MT1aVtk.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/benjamin-todd.png' class='.img-medium-center'>
You can see a higher quality version of this image here: <[https://i.imgur.com/hvq0SeM.png](https://www.google.com/url?q=https://i.imgur.com/hvq0SeM.png&sa=D&source=docs&ust=1665398336469760&usg=AOvVaw1SMBMKFOfTRKgaOAsxR9np)\>
@ -103,13 +103,12 @@ valueOfInterventionInPopulation(num_beneficiaries, population_age_distribution,
Then we are saying that we are reaching 1000 people, whose age distribution looks like this:
<img src='https://i.imgur.com/GvyMyqW.png' class='.img-medium-center'>
This could use a bit more work to resemble an actual population pyramid.
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/population-pyramid.png' class='.img-medium-center'>
<figcaption>This could use a bit more work to resemble an actual population pyramid.</figcaption>
and that the benefit is just the remaining life expectancy. This produces the following estimate, in person-years:
<img src='https://i.imgur.com/BSbneRi.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/amf-person-years.png' class='.img-medium-center'>
But the assumptions we have used arent very realistic. We are essentially assuming that we are creating clones of people at different ages, and that they wouldnt die until the end of their natural 40 to 50-year lifespan.
@ -203,7 +202,7 @@ That is, we are modelling this example intervention of halving child mortality,
But for reference, the distributions impact looks as follows:
<img src="https://i.imgur.com/bejosHk.png" class='.img-medium-center'>
<img src="https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/probability-ai-xrisk-at-each-point-in-time.png" class='.img-medium-center'>
### Calculate optimal allocation given diminishing marginal values
@ -267,7 +266,7 @@ The code is a bit too large to simply paste into an EA Forum post, but it can be
We can also look at the impact that various interventions have on our toy world, with further details [here](https://docs.google.com/spreadsheets/d/1WnplTYJJMeh0zXVUTPBaihE7n1kneW5LDidLvJcGcv4/edit?usp=sharing):
<img src='https://i.imgur.com/HCg2g5r.png' class='.img-medium-center'>
<img src='https://images.nunosempere.com/blog/2022/10/10/five-slightly-more-hardcore-squiggle-models/toy-world.png' class='.img-medium-center'>
We see that of the sample interventions, increasing population growth by 0.5% has the highest impact. But 0.5%/year is a pretty large amount, and it would be pretty difficult to engineer. So further work could look at the relative difficulty of each of those interventions. Still, that table may serve to make a qualitative argument that interventions such as increasing population growth, economic growth, or reducing existential risk, are probably more valuable than directly increasing consumption.

@ -25,7 +25,7 @@ Browse past newsletters [here](https://forecasting.substack.com/), or view this
### PredictIt, Kalshi & the CFTC
<img src="https://i.imgur.com/6k0Oz4A.jpg" class='.img-medium-center'>
<img src="https://images.nunosempere.com/blog/2022/10/12/forecasting-newsletter-september-2022/simpsons.jpg" class='.img-medium-center'>
America, Land of the Free
@ -109,7 +109,7 @@ Nostalgebraist looks at [AI forecasting one year in](https://nostalgebraist.tum
[Samotsvety Forecasting](https://samotsvety.org/), my forecasting group, looks at the probability of [various AI catastrophes](https://forum.effectivealtruism.org/posts/EG9xDM8YRz4JN4wMN/samotsvety-s-ai-risk-forecasts) in the future, and at the [risk of a nuclear bomb being used](https://forum.effectivealtruism.org/posts/2nDTrDPZJBEerZGrk/samotsvety-nuclear-risk-update-october-2022) ([a](https://web.archive.org/web/20221012124008/https://forum.effectivealtruism.org/posts/2nDTrDPZJBEerZGrk/samotsvety-nuclear-risk-update-october-2022)) in the coming months (see also a [follow-up](https://forum.effectivealtruism.org/posts/8k9iebTHjdRCmzR5i/overreacting-to-current-events-can-be-very-costly) by Kelsey Piper).
<img src="https://i.imgur.com/rPuKJCg.png" class='.img-medium-center'>
<img src="https://images.nunosempere.com/blog/2022/10/12/forecasting-newsletter-september-2022/russia-nuclear-weapon.png" class='.img-medium-center'>
Taken from [Polymarket](https://polymarket.com/market/will-russia-use-a-nuclear-weapon-before-2023). Note that money is worth less in the event of a nuclear war.

@ -1,7 +1,7 @@
Sometimes you give to the commons, and sometimes you take from the commons
==========================================================================
Sometimes you give to the commons, and sometimes you trade from the commons. And through this giving and taking, people are able to smooth consumption. This is good because getting more ressources from the commons when you temporarily have fewer of them is more positive than giving ressources away when you temporarily have more of them. <figure> <img src="https://i.imgur.com/eiwMyEI.jpg"><br><figcaption> Engraving depicting the curse of [Tantalus](https://en.wikipedia.org/wiki/Tantalus) </figcaption> </figure>
Sometimes you give to the commons, and sometimes you take from the commons. And through this giving and taking, people are able to smooth consumption. This is good because getting more ressources from the commons when you temporarily have fewer of them is more positive than giving ressources away when you temporarily have more of them. <figure> <img src="https://images.nunosempere.com/blog/2022/10/17/the-commons/tantalus.jpg"><br><figcaption> Engraving depicting the curse of [Tantalus](https://en.wikipedia.org/wiki/Tantalus) </figcaption> </figure>
Anyways, a phenomenon I've noticed is that sometimes, you can only give to the commons, but you can't take from the commons. This is dysfunctional, and defeats the whole purpose of the commons.

@ -9,11 +9,11 @@ Here are a few estimation related things that I can be doing:
Now, within the [Quantified Uncertainty Research Institute](https://quantifieduncertainty.org/) I have been kind of trying to do something like this:
<img src="https://i.imgur.com/jvSUjWX.png" class="img-frontpage-center">
<img src="https://images.nunosempere.com/blog/2022/10/31/brief-thoughts-personal-strategy/strategy1.png" class="img-frontpage-center">
That is, I have in theory been trying to directly aim for the jugular of growing evaluation capacity directly. I believe that this is valuable because once that capacity exists, it can be applied to estimate the many things for which estimation is currently unfeasible. However, although I buy the argument in the abstract, I have been finding that a bit demotivating. Instead, I would like to be doing something like:
![](https://imgur.com/IpISs4h.png)
![](https://images.nunosempere.com/blog/2022/10/31/brief-thoughts-personal-strategy/strategy2.png)
I think I have the strong intuition that producing value in between scaling produces feedback that is valuable and that otherwise can't be accessed just by aiming for scaling. As a result, I have been trying to do things which also prove valuable in the meantime. This might have been to the slight irritation of my boss, who believes more in going for the yugular directly. Either way, I also think I will experience some tranquility from being more intentional about this piece of strategy.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save