I divide my working time sth like 50/50 for actual tasks solving and learning. My company doesn't understand it, but I work remotely and no one notices. But soon I'm back to office.
I've joined my current company two years ago. We are small (but constantly growing) company - about 10 programmers at the moment. 10 separate programmers, lack of notion of any "team". Time (and money) lost on problems arising from that fact is XXX% or even XXXX% per project.
The most important thing about learning is not accumulation of knowledge by individual, but accumulation of knowlege by group, making knowledge common, therfore creating higher level being called "team".