The medical examiner's office has identified the boy as Jorge Sosa from Chicago. He died after an afternoon swim with friends.
Alfredo Lopez of Aurora said he will never forget the trip to the beach with his young children. As he watched the drama unfold, he snapped photos of the effort to save the 14-year-old.
"I got my kids, and I was kind of scared. They said, 'Everybody out of the water!' Oh my God. Everybody was scared," he said.
The boy had apparently gone to the beach with two friends. They alerted lifeguards after they lost sight of him.
"They were sitting here and reported someone, 'Oh, can so-and-so please report here? Your friends are looking for you.' And then two minutes later, like, 'Everybody out of the water, the beach is closed,'" said witness Lisa Carroll.
"There were two people out there trying to help them and the lifeguard jumped out of the boat and helped the two people pull him out of the water," said witness Nani Romero.
Lifeguards found Jorge about 30-50 yards offshore. Once on land, lifeguards and then fire department paramedics took turns giving him CPR. Paramedics placed the boy in a hypothermia bag to try to warm him up. They rushed him to Lurie Children's Hospital where he later died.
The boy is the 25th person to drown in the Great Lakes this year so far. According to an organization that tracks those numbers, that marks a 92-percent increase over the same time last year.