For decades, the solution to aging has seemed merely decades away. In the early nineties, research on C. elegans, a tiny nematode worm that resembles a fleck of lint, showed that a single gene mutation extended its life, and that another mutation blocked that extension. The idea that age could be manipulated by twiddling a few control knobs ignited a research boom, and soon various clinical indignities had increased the worm’s life span by a factor of ten and those of lab mice by a factor of two. The scientific consensus transformed. Age went from being a final stage (a Time cover from 1958: “Growing Old Usefully”) and a social issue (Time, 1970: “Growing Old in America: The Unwanted Generation”) to something avoidable (1996: “Forever Young”) or at least vastly deferrable (2015: “This Baby Could Live to Be 142 Years Old”). Death would no longer be a metaphysical problem, merely a technical one. ... The celebration was premature. Gordon Lithgow, a leading C. elegans researcher, told me, “At the beginning, we thought it would be simple—a clock!—but we’ve now found about five hundred and fifty genes in the worm that modulate life span. And I suspect that half of the twenty thousand genes in the worm’s genome are somehow involved.” That’s for a worm with only nine hundred and fifty-nine cells. ... For us, aging is the creeping and then catastrophic dysfunction of everything, all at once. ... The great majority of longevity scientists are healthspanners, not immortalists. They want to give us a healthier life followed by “compressed morbidity”—a quick and painless death. ... The battle between healthspanners and immortalists is essentially a contest between the power of evolution as ordained by nature and the potential power of evolution as directed by man. ... Aging doesn’t seem to be a program so much as a set of rules about how we fail. Yet the conviction that it must be a program is hard to dislodge from Silicon Valley’s algorithmic minds. If it is, then reversing aging would be a mere matter of locating and troubleshooting a recursive loop of code.