Thoughts, Tools

The Best Way to Learn a New Language

First, if you already have another language under your belt, search “X Language for Y Language Developers”. If not, no worries, simply find out these things about the new language:

  1. How many basic types are there? For each type, how to create a new value and do basic stuff with them? E.g., for strings, how to concat? For numbers, how to do calculations and what to do with their types? For arrays/objects/hashes how to set/retrieve value? And so on.
  2. What are the syntax for conditions and loops?
  3. How to write a function? Does it automatically return value? How to return a value?
  4. Are there Classes or equivalent? How to write them?
  5. How to debug (try/catch, log…)?

These are the building blocks of a language. The purpose of this stage is only to get a most primitive grasp of it, so that you can go writing lines in it without looking things up every other 10 seconds.

Next, start building things. There’s no better way of learning a tool than to make actual use of it. Search, ask and learn deeper along the way.

After you get a feeling of what actually using the language is like, go search on and read about “Best Practices in X Language”. Build more stuff with the newly acquired knowledge and power.


Also, as an end note:

I don’t believe in learning things just for learning’s sake. Neither do I believe programmers are defined by the tools/languages stack they use. What matters is always the useful thing they’re trying to get out. Tools and languages are merely the medium to generate that. When the end goal is decided, one can learn everything along the way, with the kind-hearted company of Google, StackOverflow, Quora, books, friends and other various research methods.

Good luck. PS, The more effort one puts in, the luckier one gets. 😀