Should we feel sorry for Charlie Miller?
I would argue that we should not. Now, this is 100% conjecture based on my own experience as an iOS developer, but Charlie's clearly an intelligent person - it takes a hell of a mind to do something as complicated as security exploits - so I don't think we can fall back to "he was just being stupid".
Indeed, I think he knew exactly what he was doing, and exactly what would happen when the story broke. After all, he broke it himself, in a YouTube video no less. He very much put it into the public that he had knowingly violated his developer agreement, and in the same video he embarassed Apple. He didn't say that he'd violated his agreement, but once again, I'm not buying ignorance. The "no downloading code" rule is well-known in the developer community, and he specifically referenced it in the video.
So, he did something he knew App Store apps were not allowed to do, and he still uploaded it to the App Store. And then, when it got approved - remember, this is a proof-of-concept for malware - instead of taking it down and contacting Apple about this severe security hole, he made a YouTube video.
Apple doesn't take too kindly to this kind of behaviour - this, too, is well known within the community. There was no way he was getting a slap on the wrist. He must have known, right? He must have realised that Apple would take swift and decisive action. Was he so worried about plugging this hole that he knowingly threw himself to the wolves, to protect the rest of us?
I think perhaps he was motivated by the same thing that motivates conspiracy theorists and reality TV stars: fame. Big security hole in mobile OS, that's a page two story. But big bad corporate Apple crushing yet another innocent developer, who was only trying to help, that's front page on every tech site on the internet. And indeed it was.
Should Apple have done what it did? Probably not. But was it predictable? Absolutely. And Miller must have seen it coming. Don't feel sorry for him - he got exactly what he wanted.