I want to point out that none of your points are an actual indicator of how good someone is at programming.
They are important in the context of a job, especially in a team, but not for actual coding.
So its really two different things we are talking about here.