Solving the Puzzles of Life