| I think for a person to understand programming better they must learn as many programming languages as they can. Each and every language has something to show in terms of (software programming technologies). Perl taught me to use and appreciate regular expressions. C it taught me how to be cautious when working with pointers, how to use external libraries. It also taught me an art of not-wasting memory, by passing by references that values. This made me to love variable mutability better. Lisp (Common Lisp) taught me the power of creating functions at runtime. The power of (lexical scopes although I was also shocked recently to some other dialects that use dynamical scopes) and Emacs lisp which allows a programmer to switch to their preferred ones. Python and Java, object orientation. With Python teaching me rapid prototyping. They also taught me about exceptions. Lua taught me an amazing world of generators (coroutines). That made me to appreciate Python iterators. I was surpised that on many of the languages I mentioned above a could actually yield a closure. I love the ideas of pcall. There are also languages like vimscript, javascript and many others I tried them to be taught some software programming "technologies". These technologies exist in often many languages, whats crucial is to understand those technologies and you will be at a level to nearly " grok" anything you want in programming. Merely learning one language, makes you prone to blurb paradox! |