From: John Bokma on 3 Feb 2010 01:20 Steven D'Aprano <steven(a)REMOVE.THIS.cybersource.com.au> writes: > On Tue, 02 Feb 2010 23:11:49 -0600, John Bokma wrote: > >> Jonathan Gardner <jgardner(a)jonathangardner.net> writes: >> >>> I can explain, in an hour, every single feature of the Python language >>> to an experienced programmer, all the way up to metaclasses, >> >> Either you're a hell of a talker, or I am far, far away from being an >> experienced programmer. It's advocacy like this, IMO, that keeps people >> away from a language, because you can't feel nothing but a failure after >> a statement like this. > > Surely you're exaggerating? No, because if I was I would've put a smiley there somewhere. I am learning Python, for a time to be honest. I can manage in the language quite well. I consider myself quite an experienced Perl programmer, I have no problems with the constructs Jonathan elsewhere in this thread claims to have problems with after 10 years of professional Perl programming. They come natural to me. But I don't see myself being able to understand every Python feature in a talk of an hour *with* the current understanding of Python I have (read halfway through Programming In Python 3, read selected chapters on decorators, etc.). > Without making any aspersions towards Jonathan either way, the Internet > is full of both blowhards and geniuses. Anyone who lets the off-the-cup > claims of either ruin their self-confidence is unlikely to be thinking > about learning Python, they're probably sitting alone in a dark room > staring as the walls close in. I am quite serious about learning Python, I do write professionally in it [1], but I am convinced that I need at least several months more of studying to feel comfortable with most (not even all) of Python. To me a much more relastic view on learning a programming language is: http://norvig.com/21-days.html [1] very small programs, and my customer is fully aware of that I am learning a new language but trust me, which is great. -- John Bokma j3b Hacking & Hiking in Mexico - http://johnbokma.com/ http://castleamber.com/ - Perl & Python Development
From: John Bokma on 3 Feb 2010 01:27 John Bokma <john(a)castleamber.com> writes: > Steven D'Aprano <steven(a)REMOVE.THIS.cybersource.com.au> writes: > >> On Tue, 02 Feb 2010 23:11:49 -0600, John Bokma wrote: >> >>> Jonathan Gardner <jgardner(a)jonathangardner.net> writes: >>> >>>> I can explain, in an hour, every single feature of the Python language >>>> to an experienced programmer, all the way up to metaclasses, >>> >>> Either you're a hell of a talker, or I am far, far away from being an >>> experienced programmer. It's advocacy like this, IMO, that keeps people >>> away from a language, because you can't feel nothing but a failure after >>> a statement like this. >> >> Surely you're exaggerating? > > No, because if I was I would've put a smiley there somewhere. I am > learning Python, for a time to be honest. I can manage in the language > quite well. Clarification: for a beginner that is. > [1] very small programs, and my customer is fully aware of that I am > learning a new language but trust me, which is great. Should've been "but trusts me,". -- John Bokma j3b Hacking & Hiking in Mexico - http://johnbokma.com/ http://castleamber.com/ - Perl & Python Development
From: Timothy N. Tsvetkov on 3 Feb 2010 04:21 On Jan 28, 2:29 am, Jonathan Gardner <jgard...(a)jonathangardner.net> wrote: > On Jan 27, 5:47 am, Simon Brunning <si...(a)brunningonline.net> wrote: > > > > > I think Python is a little cleaner, but I'm sure you'd find Ruby fans > > who'd argue the complete opposite. > > Are you sure about that? > > There's a lot of line noise in Ruby. How are you supposed to pronounce > "@@"? What about "{|..| ... }"? > > There's a lot of "magic" in Ruby as well. For instance, function calls > are made without parentheses. Blocks can only appear as the first > argument. There's a lot more, if you put your mind to it. > > Indentation is also optional in Ruby. You can quickly fool a newbie by > not indenting your code properly, which is impossible in Python. > > Python is much, much cleaner. I don't know how anyone can honestly say > Ruby is cleaner than Python. I will. I developed on both (Python was first) and I think that ruby I very clean and maybe cleaner than Python. Also I don't know any situation where you need to pronounce your code symbol by symbol. You might need to pronounce some semantics. And you're wrong with blocks. About indent your right. It helps newbies indent code becouse they must to. But most of professional developers started with Pascal and then C and they all indent well :) it is about culture and it is what about teacher should say.
From: Jonathan Gardner on 3 Feb 2010 16:32 On Feb 2, 9:11 pm, John Bokma <j...(a)castleamber.com> wrote: > Jonathan Gardner <jgard...(a)jonathangardner.net> writes: > > I can explain, in an hour, every single feature of the Python language > > to an experienced programmer, all the way up to metaclasses, > > Either you're a hell of a talker, or I am far, far away from being an > experienced programmer. It's advocacy like this, IMO, that keeps people > away from a language, because you can't feel nothing but a failure after > a statement like this. > I can explain all of Python in an hour; I doubt anyone will understand all of Python in an hour. Coming from perl to python, the big "aha!" moment was when I realized there wasn't anything more than what I saw before me. I kept expecting something big around the corner, kind of like when I first discovered refs in perl, or when I realized how hard it truly was to write OO code in perl that actually does what you think it should do. Perl has trained me to be fearful of the language, constantly on the lookout for jabberwockies. If you fall into one of those traps in perl, it's because you weren't smart enough and aren't worthy of the language, or so they say. It's never perl's fault. I mean, doesn't everyone know what the Schwartzian Transform is? Python is the complete opposite. Go through http://docs.python.org/reference/ .. Once you've familiarized yourself with all the operators, statements, and the special methods, you're done with syntax and the core language. There is no more. The next step is to learn the basic objects and functions in builtins. That's in the first seven chapters of http://docs.python.org/library/index.html. You can always fall back to the "help" function to remind yourself if you forget. I do it all the time. After that, it's merely figuring out which standard libraries do what and how. The documentation there is complete and awesome, and there are more than enough people willing to point you in the right direction here. There are no dragons in this forest. Heck, this isn't even a forest--- it's a single-room apartment with everything you need right there where you can see it. The thermostat is set to room temperature, and no matter what happens outside, you're safe and protected from it all.
From: Robert Kern on 3 Feb 2010 16:50
On 2010-02-03 15:32 PM, Jonathan Gardner wrote: > I can explain all of Python in an hour; I doubt anyone will understand > all of Python in an hour. With all respect, talking about a subject without a reasonable chance of your audience understanding the subject afterwards is not explaining. It's just exposition. -- Robert Kern "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco |