We present seven programming challenges in Racket, and an elegant, unified approach to solving them using constraint logic programming in miniKanren.