[Tutor] Python information

Isaac Hall hall@nhn.ou.edu
Tue, 30 Jul 2002 12:48:14 -0500


Hi Rob,

while I guess Im really not a programming newbie, I was a python and 
OOP newbie
not all that long ago.  The things that I would have really appreciated 
at that
time which I found difficult to find were general OOP 'good 
behaviours'.  for example
maybe pointers on when one benifits from creating classes, when one 
benefits from
creating a function outside a class as opposed to a method inside a 
class.  along with
examples of how to do this, along with the rules of inheritance with 
detailed explanation.

I happpend to have to learn Python and OOP at the same time for a 
program nessecary to
my work (Im a Grad strudent in High Energy Physics, which means that I 
only write code
when it is nessecary, and until this program had to be written, I 
hadn't written code in
5 years).  While doing this I followed the basic aspects of Python 
rather well
from the Python Tutorial on the Python.org page, however when it came 
to writing classes
and methods for those classes, I was hopelessly lost.  To some extent I 
still am, as I
am probably not the most efficent user of pythons OOP ability, however 
I can write code
that does what I want it to, and thats pretty much the goal.  But I 
gather that the true
programming newbies that have never had to write a bit of code until 
today, or whatever day
it is when they go searching for python tutorials will also percieve a 
better explanation
of OOP in general, OOP as it applies in python, and what good OOP 
programing is all about.

anyway, I hope this helps, and I thank you for asking the newbies what 
they would like
to see in a tutorial.

Ike

On 2002.07.30 07:48 Rob wrote:
> > > I'll pose this question to the list (especially the newbies): What
> would
> > > you like to see demonstrated in a tutorial for absolute
> programming
> > > newbies? Be as specific or as general as you like.
> >
> > I was wondering if there would be any chance of creating "spot"
> tutorials
> > for added features in new releases, given that the rate of change
> means
> > that the paper people have little chance to catch up. These spot
> > tutorials
> > [do pythons have spots?] could be organsized as "chapters" and
> should be
> > less of a chore to write than a whole book.
> >
> 
> I agree that this would be nifty, although I'm not "cutting edge"
> enough to
> actually use most new features as they come up. I tend to learn new
> Python
> (or any other programming language) tricks in one of three ways most
> of the
> time:
> 
> 1. By "happy accident" or magic. I will be piddling around doing
> something
> odd, like sifting through the documentation and just seeing what all I
> can
> figure out about some module. I try things out and *BAM!*... knowledge
> occurs. (As NASA scientists not-infrequently seem to point out: You
> are more
> likely to find something when you look for it.)
> 
> 2. I need/want to do something, so I look it up as best I can and
> likely
> wind up asking people like the Tutor List, Jython Users list,
> comp.lang.python, etc. and benefit from spiffy on-the-spot lectures.
> The
> archives are AMAZINGLY rich with these gems.
> 
> 3. I set out to write an answer, however weak, to someone else's
> question or
> problem. It's really spectacular how much you can learn by just
> *trying* to
> answer someone else's question, whether or not yours proves to be the
> one
> that seems to do them the most good. A variant on this is trying to
> write a
> short demo or tutorial on anything you can put words to. I have added
> a few
> of these to Useless Python, and look forward to adding more after this
> class
> I'm in finishes (after this week) and I have more time to get caught
> up on
> updating the site.
> 
> So I'm not usually the first to get to the newer features of the
> language
> unless they happen to be something I already need to do.
> 
> Rob
> http://uselesspython.com
> 
> 
> 
> _______________________________________________
> Tutor maillist  -  Tutor@python.org
> http://mail.python.org/mailman/listinfo/tutor
>