The Design of Design: Essays from a Computer Scientist