Teaching Python

David MacQuigg dmq at gain.com
Wed Jun 16 12:43:08 CEST 2004

On Sat, 12 Jun 2004 03:22:23 GMT, Mediocre Person
<mediocre_person at hotmail.com> wrote:

>Well, after years of teaching grade 12 students c++, I've decided to 
>make a switch to Python.

Excellent choice.
>    * interactive mode for learning
>    * less fussing with edit - compile - link - run - debug - edit - 
>compile - link - run -.....

The IDLE environment, included with Python, is perfect for interactive
learning (and for serious work later).  It's a minimal environment,
but it has everything I need.  It has no GUI builder, but I don't miss
that because I use Qt Designer when I need a GUI.

>    * lots of modules
>    * I was getting tired of teaching c++! Bored teacher = bad instruction.
>    * thought about tcl/tk but it's just too different syntactically 
>(for me, not my students!) after so much time with languages like 
>c++/ada95/pascal/BASIC/Fortran, etc.

I looked at tcl/tk before discovering Python.  I've never looked at it

>    * it appears to be FREE (which in a high school environment is 
>mightily important) from both python.org or activestate.com. I think I 
>like activestate's ide (under Win98) a bit better than idle, but your 

I haven't looked at Activestate, but it may be the right choice if you
are using Windows.  Qt Designer is free only on Linux.  I think there
is an educational license for Windows, but you might want to check on
that. http://www.trolltech.com

>I've decided to give John Zelle's new book a try as a student 
>textbook--it's as good an introductory CS book in any language I've 
>seen. I've done a couple of small projects with tkinter, like what I 
>see, and would like to introduct my students to it, although Zelle 
>doesn't make use of it in his text.

I haven't seen Zelle's book, but I would think the best book for a
one-semester course would be Learning Python, 2nd ed.  My only problem
with LP2E is that I need something shorter because I have only a few
weeks in a course on circuit-design tools.  I've written a shorter
presentation of Python OOP for engineering students.  It may be too
short for high school students, but you are welcome to use it.  I'm
thinking of expanding it to a larger audience by keeping the basic
presentation short, but adding more simple examples and exercises.
Your comments would be appreciated.

>So, what pitfalls should I look out for in introducing Python to 
>students who have had a year of Visual BASIC?

I used VB for many years, but never really learned it.  It has always
been just a way to get something simple done quickly.  Now that Python
has assumed that role, about the only thing I would use VB for is
macros in an Excel spreadsheet.

I would think having a year of VB prior to Python would be an
advantage, in that the students have at least worked with computers
and simple programs.  The problems might be an expectation of being
able to do instantly in Python what was done with the GUI builder in
VB.  You will need to avoid long discussions of syntax, and focus as
early as possible on interesting examples.  From your later posts, it
sounds like you already have some good examples in mind.

I would be interested in following your progress in developing this
course.  Do you have a website?

-- Dave

*************************************************************     *
* David MacQuigg, PhD              * email:  dmq at gain.com      *  *
* IC Design Engineer               * phone:  USA 520-721-4583  *  *  *
* Analog Design Methodologies                                  *  *  *
*                                  * 9320 East Mikelyn Lane     * * *
* VRS Consulting, P.C.             * Tucson, Arizona 85710        *
*************************************************************     *

More information about the Python-list mailing list