Good Intermediate Tutorials

Lie Ryan lie.1296 at
Fri Apr 2 06:06:35 CEST 2010

On 04/02/10 11:25, Abethebabe wrote:
> I've recently finished reading A Byte Of Python and have the basics of
> Python down. I want to continue practice but I'm unsure what I can do.
> So I started looking for tutorials to open my mind a little, but
> everything I come across are beginner tutorials that cover the same
> topics...over and over.

In programming, if you've gone past the beginner level, the only text
you ever need is the reference manual.

If you want to broaden your mind, you may want to learn other languages
that have distinctly different paradigms than the ones you already know.
Then when you get back to python, you will be able to see new angles to
attack a problem from.

> Can anyone point me to good Intermediate tutorials, that don't make
> use of libraries and such (so I can get really comfortable with the
> core language.) Maybe even the source code of some simple Python
> applications, so I can observe and learn the code myself.
> Really appreciative of any help!

Strengthen your math, specifically discrete math; many problems are just
different manifestations of a few classes of problem. You can leverage
developing completely new methods and new ideas by abstracting your
problem to find out the the class of problem your problem belongs to.
(contrived analogy: a head chef need to determine whether the remaining
ingredients will suffice for the day; a bricklayer need to determine the
number of bricks he need to buy for a span of wall; those problems has a
common solution: counting and number division).

In short, read a book about math and/or problem solving.
Recommendations: The Art of Computer Programming by D.E. Knuth,
Algorithm Design Manual by S.S. Skiena.

Frequent the mailing list. Only by then you will learn to write
"idiomatic python"; a book can be compiled about common python idioms
but they will more-or-less be the author's perspective of the idioms
instead of actual python's idioms. I found that, in python at least,
avoiding use of library often forces you to write non-idiomatic python
because many libraries are written specifically because it is difficult
to write the equivalent efficient code with idiomatic python.

In short, don't avoid the library if you want to learn idiomatic python.
(if you want to learn about the algorithms though, avoiding libraries is
a fine restriction)

More information about the Python-list mailing list