

Ask HN: How do you add to your programming toolbox? - KaiP

To become a decent programmer, it's important to have a variety of tools in your mental toolbox so that you can pick the right tool for the job.  However, even though I learn about other tools, when I approach new problems I fall back onto the tools I know well, even if they aren't the best solution.  For example, as a Java programmer working in Python, it's easy for me to fall back onto for's and classes when a lambda or generator would be a much more elegant solution.  I'm curious to hear any books, essays, ideas, or techniques you use to combat this problem.
======
sophacles
I typically have a backlog of things I would like to do. When I go to
conferences, or have boring meetings where I only need half an ear to the
proceedings, or whatever, I do those things. Usually they are toys or side
projects and what-have-you. They are usually doable in some form that 'I've
been meaning to learn'. They are usually fairly easy as well. Then I just
combine all the above factors. If I want to learn some new vim thing, (or
generators or ...) I do the extra task (which is easy) with a focus on using
what I'm trying to learn.

It doesn't always take, nor do I expect it to. Even if I get just one small
technique to "stick" and become regularly used, I do this enough that I fairly
rapidly gain new skills and tools.

HTH

