This is why I like the word "hacker" outside of it's more "modern" meaning. A
programmer can be nearly anyone with some basic skills, but a
hacker is a fundamentally different animal from the rest of the general population. The hacker doesn't even necessarily have to be better than the bulk of his non-hacker, regular programmer, peers (though I imagine you'll often find that to be the case) because it's not about skill, it's about mindset.
It's certainly not limited to programming either of course. I would likely consider a career electrician who moonlights as a coiler (of telsa coils) to be a hacker. If I had to put the meaning of it into words, I would say a hacker is anyone who has a passion for the art of something, as opposed to someone who merely participates.