Hacker News new | past | comments | ask | show | jobs | submit login

What helps immensely in learning new programming languages quickly, but also in spotting tricky bugs and increasing general software engineering skills is studying programming languages as a discipline of CS: learning how languages are implemented, what are the core paradigms, what are the design choices invented so far for common issues etc. There is a fantastic book called "Programming Language Pragmatics" that is readable and very good in teaching the practical aspects of this:


Exactly. All you really need to know is how to accomplish things in functional, OO and procedural languages. The advice given in the article is very nearly syntax based, not conceptual. Which is nearly useless if you're going very far from C/++.

If you're in a procedural language the questions is: what's the for-loop?

If you're in an OO language: are there iterators, how do I use them?

If you're in a functional language: what the syntax for mapping, etc.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact