I am a beginning programmer and in 5-10 years I'd like to be an expert. I love programming because it is a distinct skill set that you can continually improve on. But then I thought, how can you continually improve? At a certain point, don't you just "know" how to program? I imagine, just like at most things one can be great at, that, at the top, the difference in skill is probably minimal. So what makes a better programmer? Clearer code? Faster understanding of concepts? Being able to write a post on SO without it being closed? (I feel like this post is doomed, but it really is a question I was wondering.)