Want to make a great puzzle game? Get inspired by theoretical computer science.
jeremykun.com