When I started programming with Ruby on Rails, after three weeks I had my first small website, after another three weeks a prototype for a customer, after another six weeks a fully working website online. During this time the experienced Rails developers at the company I worked were a great help to get things right. Though learning the language and the framework was the smallest part.
After a few months of experience with Rails and permanent contact with the Rails community (mailing lists, forums...) I knew Rails inside out. I knew all the 'best practices', I knew what's the best way to do things, not only how to get it run. I knew all the tools that are important and I was able to compare advantages and disadvantages of those tools under certain circumstances. This included experience with various areas of web programming, like full text search in databases, security, online payment systems, REST, CRUD, version control and all the other buzzwords of the web business.
So when a customer asked, if we could implement a certain feature, I was able to tell him what we could do about it, instead telling him that I must see, if it is possible at all. I knew what tools I could use and how much afford I would have to put into writing my own code.
If a new programmer implemented something, I could have pointed out security risks like sql injections. If he wanted to implement a feature I could have told him what tools to use and if other developers in the Rails community regarded them as reliable or if he would have to expect problems.