The Power of Experiments: Decision Making in a Data-Driven World review

The Power of Experiments: Decision Making in a Data-Driven WorldThe Power of Experiments: Decision Making in a Data-Driven World by Michael Luca

My rating: 3 of 5 stars

This book was fine enough. It’s all about how companies and governments should do experiments rather than using their intuition about what they think will work. There’s some amount of useful stuff if you’re actually in a position to do such things, but other than that the book is mostly examples of places that have done experiments. A few interesting points:

– The British government did an experiment on the wording they used on letters to people that hadn’t paid their taxes. Turns out the most effective wording to get people to pay their taxes is to include something like “9 out of 10 people in the UK pay their taxes on time. You are in the very small minority of people who haven’t yet.” The effect is kinda small (the number of people who pay goes up from 35% to 37%), but of course in aggregate that adds up to a lot of money!
– For whether people want to be an organ donor, if it’s an opt-in system 4-28% will sign up, but in an opt-out system 86-100%, so the default has a huge effect! But a lot of people think it’s possibly unethical to sign people up by default. A thought was to move to “active choice”, where the state explicitly asks people whether they want to be organ donors (so there’s no default), but after doing an experiment fewer people signed up than even in the opt-in system!
– There’s a whole chapter about racial bias on Airbnb, starting with the story of an African-American man trying to book a room but being repeatedly rejected, probably because of his race. The authors ran an experiment sending a bunch of rental inquiries that were identical except for the name – half were from (fake) guests with first names common among white people (“Brett”, ‘Todd”) and half were from fake guests with first names common among black people (“Darnell”, “Jamal”). No photos were included for simplicity. I’m guessing at this point you will not be shocked to read that the names common among black people got 16% fewer yeses from hosts. (a similar study has been done with resumes for jobs (here’s the original PDF), and the results were similar but the effect was 3 times as large!) Once this study was published, Airbnb was pretty embarrassed and ran some experiments to try to reduce discrimination, but refused to say what experiments they had run or what the results were.

View all my reviews

kids and coronavirus, ten weeks in

Continuing with the theme from last week, this week was fine. Nick seems to have gotten one of his teeth in and thus has been a bit less fussy, I think.

I’m still pretty tired at the end of every single day, but work is going as well as can be expected, and we’re all doing all right. We could really use a break, but that’s not in the cards right now.

Like I mentioned last week, the mayor’s looking at daily new hospitalizations to decide when to loosen things up. (which makes sense since it’s a more stable number, I assume, than the number of new cases, which is highly sensitive to how many tests we’re doing) The city posted a dashboard with that data, and honestly it’s pretty depressing. Things have been stable in an “OK but not great” position since the beginning of April. (note that the graph itself is logarithmic, so there’s a little more movement than it looks at first glance, but still not very much) Stable means that social distancing, etc. have had an impact, because otherwise it would have grown a lot, but not enough to actually make progress and lower the number of cases.

Maybe it would have been safer for everyone to have a stricter lockdown at first in the hopes that it could be lifted after less time? I dunno. But it doesn’t seem like we’re in a great place right now, and with the state loosening up and also people getting fatigued with what we’ve been doing, seems like things might get worse.

Working Effectively with Legacy Code review

Working Effectively with Legacy CodeWorking Effectively with Legacy Code by Michael C. Feathers

My rating: 4 of 5 stars

Good book on how to deal with legacy code, although most of the book focuses on how to add unit tests without refactoring a bunch of stuff. (and of course, you want to have tests in place before you start refactoring things!) There’s a bunch of different techniques, some of them particularly sneaky/clever – using the linker in C/C++ to substitute in faked-out functions is clever, but my favorite is using the preprocessor in test files to make different functions be called!

There’s a whole catalog of techniques and scenarios (“I Need to Make a Change, but I Don’t Know What Tests To Write”), so this will probably be more useful as a reference later on than reading it straight through.

I bought this because I was going to be working with some code I thought was legacy-ish, but it turns out the part I wanted to understand/write tests for was actually quite easy to write unit tests for. But I’m sure I’ll have a chance to use it in the future!

View all my reviews

The Making of Prince of Persia review

The Making of Prince of PersiaThe Making of Prince of Persia by Jordan Mechner

My rating: 4 of 5 stars

A nice look back at the making of Prince of Persia. Usually when I read stuff like this I can’t help but feel jealous and wonder if I should have tried to start a startup or whatever. I didn’t feel that reading this, partially because Mr. Mechner’s skillset is very different than mine (he wrote scripts for movies and such), and partially because I have fond memories of Prince of Persia. I remember playing it as a kid and getting so scared by the big chopper things that chop the Prince in half that I ran out of the room 🙂

It’s a diary so the topics vary a lot, but it’s interesting and short!

View all my reviews