[Tutor] What was your strategy?

Steven D'Aprano steve at pearwood.info
Mon Nov 15 00:13:07 CET 2010

Jorge Biquez wrote:

> I was wondering if you can share what was the strategy you followed to 
> master Python (Yes I know I have to work hard study and practice a lot). 

I started by working through the book "Learning Python" by Mark Lutz and 
David Ascher.

I wrote lots and lots of little Python scripts and classes and 
functions, to get a feel for the language. I must have started a million 
different projects, and abandoned most of them due to time and distractions.

I spent a *lot* of time on Usenet, comp.lang.python (also available on 
the python at python.org mailing list, I believe) reading people's 
questions and answering them, and generally having an opinion on nearly 
everything :) Any time somebody would ask a question that I thought I 
*could* handle, but didn't already know the answer, I would call up the 
interactive interpreter and try to solve the problem.

I learned to *never* post code unless I'd run it myself, unless I 
clearly labeled it as untested or pseudo-code.

Be prepared to get told You're Doing It Wrong a lot. This is a *good* 
thing -- you learn by making mistakes and being corrected.

I read a LOT of idiomatic Python code by the masters: people like the 
timbot, the effbot, Raymond Hettinger, and many, many others. I read the 
Python Cookbook and studied their code. If they answered a question, I 
tried to understand how their answer was better than mine. Usually I 
learned something. Sometimes I thought I knew better. Most of the time 
that I thought I knew better, I learned that I didn't, and the rest of 
the time it was just a matter of personal taste.

I spent a lot of time (and still do) looking up unfamiliar terms on 
Google. Wikipedia is your best friend. The Python Cookbook at 
ActiveState Python is your second best friend. The c2c wiki is *not* 
your friend, but you'll learn a lot from reading it. Since 90% of the 
discussions there are about Java, C or Lisp, what you'll mostly learn is 
how happy you are to be using Python instead. But the other 10% of the 
time will really stretch your brain.



More information about the Tutor mailing list