Ask HN: What steps do you take in learning a new programming language?
What process do you follow to acquire and start using a new programming language?
What exercises do you go through, or what experiments or programs do you implement ?
What exercises do you go through, or what experiments or programs do you implement ?
3 comments
[ 3.0 ms ] story [ 11.8 ms ] threadPicking a good tutorial can help a lot. For Python, I have both the introduction and the recipes book.
Also, I try to read a lot of code from github.
I spend some time thinking about which version. Not a language, but recently - tensorflow. v1 has epic documentation but is about to die, v2 has no documentation but is the future. Made a conscious choice to accept pain & suffering by struggling with (temp) lack of support.
Any type of new tech - I usually start by spinning up a Ubuntu VM.
...because I've realised something always goes horribly wrong on first attempt & I'll need to sh!tcan the VM.
And second I like to try to push all the tech to latest beta (but not alpha/nightly). Not because I need the latest but because it lets me touch base with where the current community pain points/issues/thinking is. Emphasis on try. Noob attempting to roll with a beta of a tech he/she doesn't know is a very conscious & deliberate reach.
>What exercises do you go through
On the actual programming side - I make a bee line for the debugging equivalent of "print". It's all a black box to me until I can pipe output to something.
>programs do you implement
I find the classic example that is simple yet not hello world and dissect that. e.g. for ML the classic MNIST set. The code to get that to 90%+ accuracy is like 10 lines...you can dissect the hell out of that for understanding
Then I read the source code.
Then I check some tutorials.
Then I try it out with simple examples, nothing fancy.