3 ms·
I would never sit there and try to memorize the API of a language or tool but after you use it long enough, it really really speeds things up drastically if you
by nickjj 8y ago
I would never sit there and try to memorize the API of a language or tool but after you use it long enough, it really really speeds things up drastically if you can recall things mentally instead of having to look it up.
At this point I can sit down and bang out entire Ansible roles (hundreds of lines of YAML) without having to reference the docs or even use auto-complete for 95% of it. It's really a joy when you can just focus on getting what you want down in code and have it work in the end -- without interruption.
I'm with the author here in that I am very jealous of anyone who can memorize things like that without putting in years of practice. It's not just a speed boost, but you feel good about yourself being able to just hack on something for 20 minutes without having to look a single thing up. It takes a LOT of repetition for me to get to that point.
- femto113 8y agoI gave up on memorizing APIs long ago (like I regularly have to look up how to lower case a string in languages I've used daily for years). This was triggered by regularly moving between multiple languages with confusing levels of similarity (e.g. ",".join([1,2,3]) vs. [1,2,3].join(",")) where it was impossible to keep straight. However this does not meaningfully impact my productivity because I 1) have gotten really fast at looking stuff up if needed and 2) the tools I use make it really easy to find and adapt similar code that I've written before. I really think programmers will in general gain much more by taking the time to understand the code they are working on (importantly including the code all the other people on the project are writing) than on low level APIs. The latter can be explored with Google and Stack Overflow, and generally safely assumed to do what it says on the tin, but the former will be the source of endless surprise and confusion.