It’s an interesting debate whether or not rockstar programmers exist. You don’t need to master everything to be a successful programmer, but a combination of some knowledge, some smartness and some great entrepreneurial ideas can get you there. It involves a lot of head banging, but only inside the brain case. Common traits observed in a good programmer are passion for what he does, basics knowledge of design patterns, solution oriented, a coder that makes minimal errors, fundamental data structures, algorithms, knows multiple languages, and has a wealth of common sense. Whatever you believe, Rockstar programmers do exist. Maybe, it is rare to come across such real genius everyday, but you could take clue from the following top 10 attributes if your wish to recognize a true rockstar programmer from the rest.