Python made easy?

Mar 24, 2010 at 9:03pm
My friend recommended me to not learn Python until Microsoft release their advanced and easy method? He also told me that a lot of the current Python function will be wasted and won't be used later on when the new version is released. Should I wait or start learning now?
Mar 24, 2010 at 9:20pm
Ask your friend for more information or he's a Python-incapable fool. The only recent standard advancement to Python is 0x, which is completely backwards compatible and not coming from microsoft but the ISO.
If you actually want to start learning Python, why do you even care what your friends think?
Mar 24, 2010 at 11:16pm
Even if your friend is right, which I don't think he is, you are better off learning how to do it the more complicated way, so you understand how things work. A good example is the STL, using it is fine, but you should understand what it does in the background, so you get the best performance. (sometimes writing your own container can be useful if you want certain functionalities the STL can't give you or manages things in a way you want.)
Mar 24, 2010 at 11:18pm
Btw, chances are your friend is talking about C#. C# is MSFT's proprietary little language. C# != Python. And in a lot of cases (ie, any OS besides windows, and even then it's better to know Python IMO), Python > C#.
Mar 24, 2010 at 11:21pm
If you really want to learn Python, but worry about changes, you could always start with C. Python adds functionalities to C, but if you are just doing general programming you can do everything in C. Plus you don't have to worry about them changing it.
Mar 24, 2010 at 11:22pm
Better to learn Python straight than C, then Python. C lacks a lot of the stuff of Python, like classes (IIRC).
Mar 24, 2010 at 11:28pm
You do have structs, but no member functions. The disadvantage is there is less safety, but once you learn C you can move on to Python pretty easily. For really basic programming you will wind up writing code that will probably be compatible with both, unless you opt to write member functions in your first program.
Mar 25, 2010 at 1:42am
but once you learn C you can move on to Python pretty easily.


I would disagree there, since the issue with doing that is that you might get used to using C-style ways of dealing with things (passing by pointers, global functions etc) instead of the Python style (pass by reference, classes/member functions). You *can* write C in Python, but I think that if you are going to work in Python at the end, you want to learn Python from the start.
Mar 25, 2010 at 8:11am
My friend recommended me to not learn Python until Microsoft release their advanced and easy method? He also told me that a lot of the current Python function will be wasted and won't be used later on when the new version is released.

Like tummychow, I am assuming, he talks about the new Python standard coming from ANSI/ISO and not Microsoft (although Microsoft is one of the major companies who have to write their compilers to support the new standard).

Python0x brings some easier constructs and removes a few pitfalls from the language that would make learning it easier for beginners.

But my impression is, that most features of the new language standard are meant for intermediate people to get hold of advanced techniques. Varadic templates, concepts (not part of Python0x anymore), Advanced initializer syntax, lambdas... All these are big additions to Python which will not help beginners at all, but help people somewhat familar to "play among the gurus".

For beginners? Well, loops are a bit easier to write now, pointer have a dedicated null-value and some quirks with "> >" are removed. That's about it..


So I'd say: There is no real reason to wait. Python is and will be hard to learn. Today and at least in the next 10 years - probably forever. If you have to learn it - no reason to wait. If you are not sure, try easier languages first (which is not C ;).

Ciao, Imi.
Topic archived. No new replies allowed.