Author Archives: david

Weekly Reading Post #7

A relatively small week due to being in Mexico for almost all of it:


I read Danah Boyd’s “It’s Complicated” on the trip back from Mexico. It’s about teenage experiences of social media (and life more generally). Can recommend. it’s not very long and is quite enlightening. It also reinforces pretty heavily that the way teenagers get treated in the USA kinda sucks (being a teenager elsewhere does too, though differently).

This entry was posted in Weekly Reading Posts on by .

Three thought experiments on majority voting

I present to you three examples in which we employ majority voting between two options (that is, we ask a population “Would you like A or B?” and we choose the option that the largest number of people preferred).

You can and should infer the obvious context for this, but I am not going to comment further on it in this post.

Tea and Cake or Death

Suppose 51% of the population vote for a bill that will result in the death of the remaining 49% of the population.

  • Should the country go along with this?
  • If they decide to, do the remaining 49% have a democratic obligation to accept that?
  • Does the answer change if it’s 90% and 10%? 99% and 1%?
  • What if the remaining 49% are merely financially ruined? Moderately inconvenienced?

Pizza or Barbecue

A group of nine friends regularly meet for dinner. Of these, five of them really like pizza and four of them really like barbecue. As good citizens of a democracy, they put this to a vote. Unsurprisingly, this results in them always having pizza.

  • Is this fair?
  • Suppose only four of them really like pizza, and the ninth person changes their mind regularly and thus always gets to decide where they go for dinner. Is that fair?
  • Suppose the friends in question are tired of putting it to the vote each time and some of them push for a vote to go to a regular meeting place. They put the question “Should we have Pizza or Barbecue for all future group dinners?” to a vote. Pizza wins. Is that fair? Does that answer change if we have the previous 4/4/1 split?

Which president?

Fair warning: This one is by far the most complicated of the three thought experiments.

Our student mathematical society decides to elect a president. There are three candidates, Alex, Kim and Pat. We’ve read all this confusing stuff about voting theory and we can’t really decide what we like except that majority rule is clearly the best for two candidates, so we decide to reduce this to the solved problem. I pick two candidates, we vote between them and the majority winner stays in. We then vote again between them and the third remaining candidate, and the winner of that becomes president.

Note that the student body is roughly equally split between the following three preferences:

  • Alex, Kim, Pat
  • Kim, Pat, Alex
  • Pat, Alex, Kim

As a result, the majority of people prefer Alex to Kim, the majority of people prefer Kim to Pat, and the majority of people prefer Pat to Alex.

Note that:

  • If I put Alex and Kim together in the first round, then Pat is president because Alex beats Kim then Pat beats Alex.
  • If I put Alex and Pat together in the first round, then Kim is president because Pat beats Alex, then faces Kim and the majority prefer Kim to Pat
  • If I put Kim and Pat together in the first round, then Alex is president because Kim beats Pat in the first round and then Alex beats Kim
  • How strong is the resulting president’s mandate?
  • Does the answer to the previous question depend on which round they were in?
  • Does the answer to the first question depend on how we chose the rounds?
  • Does the answer change if instead of explicitly voting for three candidates as part of a single batch we instead have a system where a new candidate always runs against the incumbent?

Concluding Statement

Majority vote between two options is often held up as some pinacle of uncontroversial democracy where at least in this case we know what the right answer is, even though voting is complicated in general.

I hope I have convinced you that is not the case.

This entry was posted in voting on by .

Weekly Reading Post #6 (Bi-Weekly Edition)

There was very little to report last week so I ended up skipping posting this for a week.

Random Links

Selected Links

  • Explaining and Harnessing Adversarial Examples – a neat paper about the fragility of neural network models when given things that are just slightly off the typical distribution.
  • E-Prime language – a linguistic style in which one avoids statements of the form “X is Y” in preference for “X does Z”. This was sent to me in response to my pointing out that arguments about the former tend to be very frustrating and largely go away if you focus on the latter.
  • How to Grow a Weetabix – an interesting breakdown of the effect of a possible exit from the EU on the British farming industry and landscape, along with a lot of interesting related information about British farming subsidies and their ecological focus.


I’ve been reading Thinking, Fast and Slow this week. It’s come very highly recommended, but to be honest I’m not very convinced by it. Part of the problem is that I distrust a lot of the underlying research.

Elements of Information Theory arrived as a gift from Zack M. Davis. Thanks, Zack!

This entry was posted in Weekly Reading Posts on by .

Windows Progress Report

Well it’s been about a month since I switched to Windows, so I thought I’d mention how it’s going.

Advance warning: This is just a braindump of some thoughts and is not particularly coherent.

It’s going… OK. One of the interesting things about switching from a niche to a mainstream implementation of the same thing is that you find out that a lot of the things that you thought didn’t work correctly because of your weird life choices actually just don’t work correctly. In particular, the following work less well now that I’ve switched to Windows:

  1. WiFi
  2. Suspend
  3. Copy and Paste

As you can imagine, I have been somewhat frustrated to discover this.

My original plan of trying to use Windows purely as a host and running a desktop environment on a VM didn’t work very well, for a variety of reasons. I’m tempted to start trying it again, as the alternatives are also annoying me and it might be worth trying. Instead I’ve been running local VMs using Vagrant setups for each project.

To be honest, I’ve had a long-standing prejudice against the local use of VMs and this has mostly reinforced it. They work pretty well on the server where someone has already done the hard work of management and you don’t have to care about the interaction with the host OS at all, but locally they’re just pissing me off. In particular:

  1. Hyper-V looks nice but doesn’t support shared folders
  2. Virtualbox alleges to support shared folders but the reality is that it doesn’t even slightly work when trying to share between a Linux guest and a Windows host unless you have a definition of “work” that involves routine data corruption.
  3. Virtualbox also has completely unusable graphics performance
  4. VMWare… mostly works. Though you will have to fork out a significant amount of money for this option (both for VMware itself and Vagrant if you end up wanting to use it on VMWare).
  5. About the only way to actually get a stable way of SSHing into a local VM is to use Vagrant. Installing iTunes so that Windows understands zeroconf might work, but I didn’t really feel like trying it.

My current development environment involves vagranting all the things, using the windows command prompt (it’s surprisingly OK in Windows 10) and gvim. I was trying to use IntelliJ for a while, but I found it pissed me off too much in too many different ways.

One of the most annoying things in general so far has been getting tools to understand that yes I really do want Unix line endings. No I do not want any of this carriage return nonsense in my files. Even tools that should know better seem determines to try to guess and do the wrong thing as a result.

One of the most pleasant surprises is that actually Windows 10 window management is very good. It’s more or less a tiling window manager with good keyboard controls.

Overall: I hope I can install Linux in a working manner on this laptop again in the near future. It’s been nice to have the non-development stuff Just Work to a slightly higher degree, but to be honest I’ve had more random breakage on Windows than I did running Linux on a well supported set of hardware. That being said, this hasn’t been awful and has merely been slightly annoying. It’s certainly a viable way of working.

This entry was posted in Uncategorized on by .

Weekly reading post #5

This is the weekly reading post.

Random Links

These are links to things that I was reading when I answered a tagtime ping with nonfiction.

Selected Links


I’ve not done a huge amount of actual book reading this week but spent a little bit of time on Combinatorial OptimizationHow To Read A Book and Switch: How to change when change is hard this week. See last week for opinions on the first two.

Switch is interesting. There’s a lot I’m unconvinced by / disagree with in it, but I’m definitely thinking about the material on organisational change in the context of Making Work Better, and it will probably influence my suggested approach for the better. More on it when I’ve devoted a bit more time to it.

No wishlist arrivals this week.

This entry was posted in Weekly Reading Posts on by .