4 ms·
For a skilled programmer who is fluent in a couple of other languages, I actually think that is counter-productive. Better take your time to learn that new tech
by bluetomcat 11y ago
For a skilled programmer who is fluent in a couple of other languages, I actually think that is counter-productive. Better take your time to learn that new technology properly in its entirety and then start playing with it. This way you will have a complete mental model of that technology in your head and you will be more likely to do stuff properly from the first try.
- camperman 11y agoNo man. The OP has it dead right: find a small project, write it in your new language, struggle a bit but get it finished. Then go back and see where you could be more idiomatic and improve those parts. Or do another small project but with more knowledge behind you this time around. This is the philosophy behind for example, SICP: "you don't learn Scheme, you use it."
- zelos 11y agoIn my experience, a combination is best. Reading gives you the broad scope, doing gives you detail, repetition and context.
- arethuza 11y agoHow would you start learning a technology would playing with it? I couldn't imagine sitting down and reading huge amounts before trying anything - I want hands on experience as soon as possible.
- bluetomcat 11y agoI didn't really mean to exclude any experimentation while you are learning. Fiddling with the possible expressions that a language would allow in a REPL is OK, but I am against starting pointless little projects before you have grasped something entirely. GitHub is full of these and they are mostly not pretty.
- dragonwriter 11y agoStarting projects before you grasp something entirely is how you get to grasp it entirely. Sashaying it with others, e.g. via github, is often a useful part of that. You aren't entitled to a github with only projects that interest you, and not pretty work is part of the learning process.