RE: Is this a good time to start learning python?




-----Original Message-----
From: python-list-bounces+jr9445=att.com@xxxxxxxxxx [mailto:python-
list-bounces+jr9445=att.com@xxxxxxxxxx] On Behalf Of Rui Maciel
Sent: Monday, March 31, 2008 12:41 PM
To: python-list@xxxxxxxxxx
Subject: Is this a good time to start learning python?

Recently I woke up inclined to take up the task of learning another
programming language. I've already dipped my toes in Perl (I've read
online
tutorials and wrote a couple of irrelevant pet projects) but, as the
computers at my workplace only sport the python interpreter, it
probably
means that learning python will end up serving me better, at least in
the
short run. Plus, you know how Perl goes.

So far the decision seems to be a no brainer. Yet, Python 3000 will
arrive
in a few months. As it isn't backwards compatible with today's Python,
there is the risk that no matter what I learn until then, I will end
up
having to re-learn at least a considerable part of the language. To
put
it
in other words, I fear that I will be wasting my time.

At least that is what a clueless newbie believes. As this group is
frequented by people who have more insight into all things
pythonesque,
what are your thoughts on this?


Meh. That's like asking if you should learn to use a fork or a spoon.

If you're learning how to program, go with Python. (Learning as in
algorithms and data structures.)
If you need to use OO, go with Python. Perl's OO syntax is just
horrific.
If you're using a lot of regexes, need a bit of speed, or need something
a bit more robust than dynamically typed objects randomly breaking your
code, then go with Perl. ;-)
Libraries can also affect your choice. (I had to switch to Perl when
Python's win32com failed.)

Perl's learning curve is "unreadable" syntax, whereas Python's curve
requires knowing about side effects and dealing with strong, dynamic
typing.

Overall, Python is more high level and cleaner looking/readable.
However, Python's dynamically typed objects require additional
effort/expense to debug, and it's regex module is pretty quirky/painful
to use. Perl has a very large library, is fast, is mostly statically
compiled, and doesn't get in the way (automatic type conversions,
several ways to do something, etc..)

Python is probably faster to learn (clearer syntax and OO,) but slower
to master (side effects, strongly but dynamically typed.) With Perl,
once you get the core syntax down, you don't need to master Perl.
Instead you just look up the module/feature you want to use and just use
it. Finally, I find that Perl's documentation is much better than
Python's.


All IMO, IME.


*****

The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential, proprietary, and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from all computers. GA623


.


Quantcast