Introducing Python to others

python at bdurham.com python at bdurham.com
Thu Mar 26 10:56:38 EDT 2009


Paddy,

I've tried to categorize some ideas for your presentation. Note that the
ideas within each category are ordered by my random "stream of
conscience" vs. prioritized in some logical order.

Good luck with your presentation! (BTW: It would be great if you could
share your final outline with this list so others have a starting point
for similar presentations)

Malcolm

Language basics to reassure developers their favorite capabilities
are present:

1. "Batteries included" examples for web, ftp, smtp, pop3/imap,
   zip/gzip/tar, regular expressions

2. A simple database example to show that database access is really no
   different than other tools

3. Exception handling example

4. Reading/writing files (iterating through text files)

5. Working with folders and files (os, shutil)

6. A simple class example and a class example showing multiple
   inheritance (mixin)

7. Simple string manipulation example (also reinforce Unicode support)

8. Modules (including the ability to reference modules in a zip file)


Unique Python features:

1. Lists, dictionaries and sets

2. Pickling

3. IDLE console

4. Working with command line args (and optionally optparse)

5. Dynamic code evaluation (eval/exec)

6. String constant prefixes (r, b, u) and triple quoted strings that
   span multiple lines

7. Indentation as syntax (plus no need for line continuation chars when
   bracketed delimiters are in play)

8. Doc string commenting, help( object ), and dir( object )


Advanced Python features:

1. Threading and/or multiprocessing

2. Creating a Python based web server for offline apps/testing

3. A web framework like Django or (simple) web.py

4. A sample templating module

5. Sample parsers (lxml and/or pyparser)

6. Overriding built-in __methods__ so custom classes can support use
   with operators (encourages polymorphism)

7. Iterators and generators

8. List and dictionary comprehensions



More information about the Python-list mailing list