I'm looking for advice from experienced developers on this question.In my work there's a need for a lot of one-off code. It's tempting to just dip into the right python/perl library calls to do these little tasks as quickly as possible.I used to be of the philosophy of - use most efficient tool for the task. However, I'm afraid that over time, this means that I won't have a deeper experience and expertise, so recently I've been forcing myself to use C++ (w/ Boost and STL) for everything, even if I could do the task in python or perl much more quickly. I'm hoping that in the long run, this will make me a more productive developer. I hope to reach a level of familiarity that I can do things in C++ as quickly as I can in python (and also have the practice to work on bigger projects that would require C++).Is this a good strategy towards long-term productivity and deeper skills? Or am I unnecessarily wasting time / torturing myself? 
increasing productivity - mastering a language vs. selecting efficient tools
programming languages;c++;python;perl