Froot Loops and a graphics card: reflecting on twenty years of programming