Is python worth learning as a second language?
bruno.42.desthuilliers at websiteburo.invalid
Mon Mar 9 13:19:19 CET 2009
ZikO a écrit :
> I hope I won't sound trivial with asking my question.
> I am a C++ programmer and I am thinking of learning something else
> because I know second language might be very helpful somehow.
Indeed. FWIW, I use about four programming languages on a daily basis -
plus "non-programming languages" like SQL, CSS, (x)HTML etc, know at
least four others enough to be able to read code and do simple
maintainance, and have been studying (at least enough to get a general
feel and have a general understanding) half a dozen other languages.
Learning a new languages serves two purposes:
1/ add another tool to your toolbox, so you have the right tool for the
job (I definitively wouldn't use C++ for web programming or sysadmin
2/ learn new concepts and idioms (and this can be invaluable, at least
if you hope to become a better programmer).
> I have
> heard a few positive things about Python but I have never writen any
> single line in python so I do not know this language at all.
Quite a lot of Python users come from other languages - mainly C, C++,
Java and Lisp, and these last times from PHP too thanks to Django.
If you're already an experimented programmer, specially from a C/C++
background, getting started with Python should be really easy. I guess
your main problem will be the mental adjustement needed to work *with*
the language instead of fighting *against* it.
> Do you think python would be good complementary language for C++?
Quite a few C++ programmers here seems to think it's the case.
> Do you
> think it's worth learning it or let's say try Java?
Java being mostly a stripped down version version of C++, and not being
usable as a glue or scripting language, I don't think you'd get any
benefices from learning it.
> and how difficult it
> would be for me if I know C++ pretty well I would say?
cf above. As I said, the hard part will be to stop trying to forcefit
C++ concepts and idioms in Python - as usual when learning a somewhat
different language. FWIW, learning Python 101 is a matter of days, but
it took me months to get rid of the declarative-static-typing /
defensive-programming mental straightjacket. Seems like some never get
past this point...
More information about the Python-list