In my opinion, a "programmer" is a person who is able to develop software with a given programming language. Based on what you've said, it's sounds like you're referring not to the definition of a programmer, but when you are able to program. If that is the real question, then I'd say when you can write, and interpret, this program without referring to any documentation:
Ha! You just told the OP not to derail his own thread!
When do you actually become a programmer in a language? is it the first time you can do hello, world with no help? is it the first time you write something useful?
I would say it's when you can read and write decent code.
Decent can imply: unobfuscated: readable (names, formatting), understandable (comments, sensible structure), while at the same time takes full advantage of what the language offers (i.e. don't reinvent the wheel). Bonus points if it's standard compliant (in case there is a Standard).
Yes, I did tell the OP not to derail his own thread. I did it because readers don't want to read irrelevant posts to get to the answer they're looking for. Even this post is irrelevant to the initial question.
Decent code can be opinionated. And writing software doesn't mean much. Hello World can be considered software, but if that's all you can write I don't think anyone will consider you a programmer.
Becoming a programmer is similar to becoming an adult. You don't just wake up one day and all of a sudden you're an adult. It's a process with no real "line" you cross that starts your adulthood. Same can be said of programming, or any skill for that matter.
An programmer in my opinion is anyone who either can program well and most the time do not need help. In the other hand you cannot truly call someone an programmer if they program hello world type program's every day and not learning, as that clearly shows his complexity is very downward but also you cannot say learners are quite low society of programmers as they are clearly trying to learn . The programmer can mean many meanings but this is what i think in my opinion but be free to think what you want.
The disease, nay, the virus of programming-language religion has a simple cure: you just write a compiler. Or an interpreter. One for any language other than the one you know best. It's as easy as that. After you write a compiler (which, to be sure, is a nontrivial task, but if there's some valid program out there that you couldn't ever write, then you're not justified in calling yourself a programmer), the disease simply vanishes.
This is not a valid comparison. Literature is not programming. What do you mean by "poem you could write"? A specific sequence of words? If so, you need to know all words in all languages to begin with.
I think its obvious that the meaning of the quote above is that in order to be a programmer, you need to be able to write a program that behaves in certain way, if such program is possible to make. So you doesn’t need to know all programming languages to accomplish this.
More fair comparison would be to be able to easily express all your feelings through poetry, but it’s not that strict to qualify.