For most of his 24 years, James Holmes seemed to be doing everything right.
He worked for a summer as a counselor at a camp for needy kids, guiding them through activities designed to teach empathy, compassion and good citizenship. Another summer, he snagged a prestigious internship at the Salk Institute for Biological Studies.
He attended church with his family in their quiet, upper-middle-class San Diego neighborhood, listening to his sister play bass in the worship band. He breezed through high school and college, taking a strong interest in science and graduating with honors from the University of California, Riverside.
Friends and acquaintances of Holmes say they had no inkling that anything was awry with him -- much less that he would be arrested Friday morning outside a movie theater in Aurora, Colorado, clad head to toe in body armor and accused of killing 12 people and injuring 58 in one of the worst mass shootings in U.S. history.
"It's absurd. It's so out of character for this young man," said Jerry Borgie, senior pastor at Penasquitos Lutheran Church in San Diego, where the Holmes family worshipped. "James had goals. He was going to succeed."
But a few hints have emerged in recent days that Holmes may have struggled far more than those around him realized.
John Jacobson, supervisor of the neurobiology lab at Salk, said he asked Holmes to create several online demonstrations of the lab's work on temporal perceptions. Jacobson said he repeatedly tried to explain to Holmes exactly how to do the computer programming, but Holmes kept insisting on a different approach -- one that did not work.
"He was really, oddly, stubborn," Jacobson said.
Jacobson said he made a point of sitting down to lunch with Holmes at least a half-dozen times, trying to draw him out and encourage him, but found it impossible to make conversation. "He was extremely shy," he said. "It was really hard for him to say anything. You had to ask yes or no questions."
At the end of the summer, Holmes had to make a presentation to his fellow interns about the work. A video, widely circulated online since the shooting, shows him smiling shyly and talking with some confidence.
But Jacobson said he spent an entire day going over that presentation with Holmes and never got the sense that he understood any of the basic science.
"He was very undistinguished," Jacobson said.
After the internship ended, Jacobson said he emailed Holmes to ask if he wanted to try to finish up the project. Holmes never responded, he said.
Holmes did succeed academically as an undergraduate at the University of California at Riverside, graduating with honors in a neuroscience program that is considered very demanding. He then won a spot at the prestigious neuroscience doctoral program at the University of Colorado's Anschutz Medical Campus.
Holmes was in his first year as a graduate student, living off a $26,000-a-year stipend -- part federal grant, part university funding. In keeping with those modest means, he rented an 800-square-foot (74-square-metre) apartment in a scruffy neighborhood a short walk from the medical campus.
But he recently quit the program. A person who works in the neuroscience lab said Holmes did not join the other doctoral students at an end-of-the-year celebration in a local pub. Instead, a professor stopped by the impromptu party to tell everyone that Holmes had withdrawn from the program, with the clear implication that he had fallen behind academically, this source said.
The university declined to release his academic records, citing privacy rules.
It is unclear at what point in the year Holmes might have begun struggling in his doctoral program, but Aurora Police Chief Dan Oates said he had been planning a rampage for at least four months, judging from his methodical stockpiling of arms and chemicals. Oates said Holmes had ordered materials delivered both to his apartment and to his lab at the university.
Holmes used some of the material to booby trap the apartment with an elaborate series of trip wires and improvised explosives, police said. The night of the shooting, he allegedly set a timer for techno music to blare loudly starting around midnight, as if trying to lure a neighbor or a police officer to open his door and tell him to turn it down, a law enforcement source said.
Less than a month before the shootings, Holmes emailed Glenn Rotkovich, who owns a gun range in Byers, Colorado, requesting a membership. Rotkovich called the contact number Holmes had left on the application and got a voice mail message he said could only be described as "bizarre, freakish." He could make out just a few words, he said; most of it sounded like a "guttural rambling."
Rotkovich said he warned other members at the gun range to watch out for Holmes -- who never did show up at the facility. "I've learned to listen to my gut," Rotkovich said, "and there was something wrong there, something weird."
But Holmes didn't set off alarms with others he met during this time period. A fellow doctoral student described him as a typical studious introvert; a neighbor who met him by chance at the Zephyr Lounge in Aurora last week said they spent a relaxed afternoon chatting idly about the Denver Broncos.
It is not known whether Holmes was in touch with his family much over the past year. His mother, Arlene, is a nurse and his father, Robert, is a mathematician and computer scientist with degrees from Stanford and the University of California, Berkeley. His younger sister, Chris, who is still living at home, is an accomplished musician, the family's pastor said.
Following Holmes's arrest, his father flew to Colorado but his mother remains at their home in San Diego. Pastor Borgie said he plans to meet with her, pray with her and "share some tears" with her as soon as she is ready to receive him. He already knows what he will say.
"When you run out of ways to pray, the best one is 'Lord have mercy,'" Borgie said. "Lord have mercy on James. Lord have mercy on his family. Lord have mercy on all those people whose lives were forever changed by this."