В какой момент можно считать, что знаешь язык программирования?
Проводите аналогию с обычным языком. Вы же понимаете, что можно говорить на английском языке только на тему финансов. Или на тему туризма. Или только читать тех. документацию. Во всех случаях понятие 'знания' языка относительное. 
Но я решительно не понимаю, зачем нужны ответы на такие вопросы. Например 'когда я перестаю быть джуном?'. Или  'когда я становлюсь настоящим веб программистом / специалистом / небыдлокодером / etc?'
Абсолютное знание английского языка все ещё позволяет сморозить глупость. Знание языка программирования все ещё позволяет написать фиговый код. Человек - синьер в крупной конторе но пишет какую-то чушь. Вы видите пропасть между ярлыком и человеком, который за ним стоит?
Досконально владея языком, можно выбрать ужасное решение для поставленной задачи просто потому что вы с такими задачами никогда не сталкивались
Я для себя определил очень простой признак - как только мне начали платить деньги за программы на каком-то языке, я этот язык знаю.