Was asked this question after Code Jugalbandi (codejugalbandi.org) - "Which is the best language that should I pick up next?" But there is a better question - How do I build my language portfolio?"
3. Many Possible Paths
• Pick a language in a paradigm and get good-enough
grounding.
• Use a bridge-language to go across differently typed
language or across paradigm.
• For example, Groovy is optionally typed and allows you to
ease-in your transition from Java to a dynamic language
• For example, Scala is statically typed and allows you to
ease-in your transition from Imperative to Functional
Programming paradigm
4. Be adventurous
• Don’t use any bridge language, pick something
quite different.
• For example, if you have never tried any Lisp or
Scheme family languages, try Clojure or Dr. Racket.
• Find out how it shapes your thinking.
• I am almost certain that each language bends
your mind differently, allow it to improve your
mind plasticity.
5. Programming-Language
Skills Maturity Model
• PLS0 => Apprentice => (ILR0 + ILR1)
• writes code in the new language that reflects thinking
from where they transitioned from
• PLS1 => Journeyman => (ILR2 + ILR3)
• writes idiomatic code and reflects native thinking
• PLS2 => Master => (ILR4)
http://en.wikipedia.org/wiki/ILR_scale
6. Caveat
• These were few paths.
• One that works for me, may not
necessarily work for you....
• I’m sure there are many others, please
explore and let me know.