So language is one element. Another element is philosophy. I’m not talking about the standard ivory-tower philosophy, which is mostly either useless or completely harmful, but rather of the process of “loving-the-wisdom” and seeking wisdom. Nowadays, most of the greatest philosophers don’t write books. Instead they write essays and articles online, emails, weblog entries or comments, or even cartoon strips or other art forms. The great philosophers of today are bloggers.
Some great programmers I know purposely maintain a low profile and don’t comment on everything. I can respect that. Others (including the writer of these lines) are completely sincere and always express their mind.
If you want to tell if someone is a great developer - ask him about his opinion on a few things. Possibly political. Possibly related to software management. Possibly something less serious, like popular culture. If they’re a great developer, they’ll eventually have something innovative and opinionated to say about something. Not necessarily an opinion you’ll agree with, but a good, well-thought opinion.
When asked why he changed his opinion from the day before, Mahatma Gandhi replied: “Yesterday I was more stupid.”. And indeed, you’ll see that the really good programmers may eventually change their opinions.