1) Hackers that grew up with technology that are typically very proficient and employable before entering university or having much work experience.
2) People who went to CS school in order to get a job as a developer because the pay is pretty decent and they were always kind of good with computers.
I'd much prefer to work with people that grew up as hackers than people who learned later in life. It's a cultural thing more than an age thing, but I feel like it's very hard to see the big picture if you weren't indoctrinated into it on IRC or forums when you were a teen. I'd imagine it's sort of like growing up on a farm vs going to agriculture school.
Because of this, it's very hard to tell as people get older which camp they came from. If someone is young and knows a ton, it's clear that they grew up in hacker culture and likely have a breadth of knowledge. If someone studied hard for years and never was part of the culture, IMO they will be harder to work with and not have as much general knowledge.
As a bonus, if you grew up in the culture and you're applying for an entry level job, you probably already have a decade of hacking under your belt, and that's work experience that's totally unaccounted for on a resume.
The result of this is that if you see someone young and surprisingly knowledgeable in many computer related areas, they probably grew up steeped in hacker culture and have tons more useful general knowledge than someone without that extra decade of experience.
BTW, I'm not advocating for age discrimination, but it may actually be more of undocumented experience discrimination than age discrimination.