I am new to web development and for me I was stuck in Java for a long time and never really liked it and thought all languages would be the same.
Then I worked with python and I was creating code without having to look at an API or manual for the first time. After this I went looking for my favorite languages. C, PHP, Mysql, mongodb, Javascript and all its frameworks, and then I ran into Ruby.
So from a intermediate to approaching advanced programmer I would say to generalize at first because you never know what you might like until you try it. Ruby is the language that I find fun yet challenging. Python was too easy while java was challenging but was never fun to me. Find your sweet spot.
I dont plan on stopping my language learning spread any time soon.