Comments on my "Python Introduction" slides

Paul D. Fernhout pdfernhout at kurtz-fernhout.com
Mon Aug 25 09:21:04 EDT 2003


I liked your slides a lot, as they also sort of capture a what's new of 
some of the later python versions (e.g. generators, reverse) which are 
still somewhat new to me (having done Python for years on and off and 
having tried to stick with 1.5 backwards compatability for a long time 
-- until now with 2.3).

However, and not knowing your audience, I wonder if the slides are a bit 
advanced (but obviously they are probably not meant to stand alone from 
your talk, and your purpose might be to _wow_ your audience).

For example, will people really understand how useful and powerful and 
easy to use dictionaries are [a key feature of Python] by just saying 
they are like a hash table? You have an example of a dictionary in use 
in "unique" but in the example doesn't add something into the dictionary 
in the flow of the text of the program until after the test -- a 
perfectly good way to implement it, but perhaps harder to follow 
initially for some people (who may be asking where does the data come 
from when they get to the test.).  Also, since you just set the value to 
true, it doesn't quite capture how most dictionaries are typically used 
(to store key value pairs). I'd say another slide on dictionaries might 
be warranted with a simpler better example, to preceed the "unique" 
example one you have there. Somethign blah like just putting names and 
email addresses together.

Also, since one a pracical basis some fraction of your audience is going 
to recoil at the significant white space, you might have a slide on this 
(maybe in the middle, or after your first example)  and how it is not a 
problem in practice, and in fact promotes maintainability and prevents 
some bracing style clashes. For me (having used Occam earlier, which 
also uses significant white space), significant white space for block 
delimiting is one of Python's best features. You might as well confront 
the controversy head on somehow (like quotes from this newsgroup from 
converts to it?) I can also see an argument for not bringing the subject 
up as that might scare people off, but since you have a chance to bring 
it out in the open in a controlled way sounding favorable to Python, and 
you know it will be an issue for people coming from C, it might be best 
to just deal with it.

Obviously, you only have so much time for a talk, so you have to 
prioritize, and maybe there isn't enough time for two more slides. But, 
I think if you had to drop two, I'd drop the "generators" and "fibs 
geenrator" example. You may well lose a lot of your audience there 
anyway (as while useful, the continuation concept is somewhat abstract 
and advanced).

Also, the "Quick One" items might easily include a word or two on the 
topic, i.e. "Quick One: Files" or "Quick One: fibs" for reference.

Also "Not In Standard Library" might be changed to "Free Third-party 
Addons" to sound a little nicer (otherwise people might think it is a 
complaint).

You might also rename your "Development Methodology" slide as "Will it 
be fast enough?" or something like that ("Developing for speed?") and 
reference programmer time vs. execution time, since I expected that 
slide otherwise based on the title to reference Extreme Programming vs. 
Waterfall Development models or some such approaches.

Having said all that (and none of those are major problems in the 
context of a talk where you continually monitor the audience's 
understanding and adapt your comments), I think the use of complete 
small program examples (e.g. du, fibs, etc.) in your tutorial was a 
great choice to help people grasp the language.

So, overall, good job!

--Paul Fernhout
(Who for a while taught programming to biology majors, which turned out 
to be great experience for talking to senior execs about software. :-)


Miki Tebeka wrote:
> If you have the time I'd appriciate any comments on my slides at
> http://www.cs.bgu.ac.il/~tebeka/pyintro.htm



-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 100,000 Newsgroups - 19 Different Servers! =-----




More information about the Python-list mailing list