Top
Past Meeting Archive Los Angeles ACM home page National ACM home page Click here for More Activities this month
Check out the Southern California Tech Calendar

Regular Meeting of the
Los Angeles Chapter of ACM

Wednesday, November 3, 2004

"What is Python?"

Steve Williams
Python Evangelist

Python is an interpreted, interactive, object-oriented programming language. It is often compared to Tcl, Perl, Scheme or Java. Combining remarkable power with very clear syntax, it has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems (X11, Motif, Tk, Mac, MFC). New built-in modules are easily written in C or C++. Python is also usable as an extension language for applications that need a programmable interface.

The Python implementation is portable: it runs on many brands of UNIX, on Windows, OS/2, Mac, Amiga and many other platforms. If your favorite system isn't listed here, it may still be supported if there's a C compiler for it. Ask around on news:comp.lang.python -- or just try compiling Python yourself.

The Python implementation is copyrighted but freely usable and distributable, even for commercial use.

The presentation will give a quick overview of Python and its standard library and then discuss three applications--1) a simple script to report program macro references, 2) a Data Warehouse Extract/Transform/Load program, and 3) a successful commercial application using Python, the Firebird database and wxPython screens.

Steve Williams is an independent contract programmer and system developer. He has a MS in Mathematics from the University of Illinois. His recent engagements include design and development of a successful data warehouse for a subsidiary of Home Depot and design of a successful bitemporal metadata-driven database with a world-wide implementation for a huge TLA company. He is currently working as a contractor rewriting a legacy system to pay the bills.

~Summary~

LA ACM Chapter November Meeting
Held Wednesday November 3, 2004

The presentation was "What is Python?" by Steve Williams, an independent contract programmer and system developer. This was a regular meeting of the Los Angeles Chapter of ACM.

Steve Williams said that Python is an open source language that may be viewed and downloaded from python.org. This website will start you in different directions depending on your wishes.

From that website:

What is Python?
Python is an interpreted, interactive, object-oriented programming language. It is often compared to Tcl, Perl, Scheme or Java.

Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems (X11, Motif, Tk, Mac, MFC). New built-in modules are easily written in C or C++. Python is also usable as an extension language for applications that need a programmable interface.

The Python implementation is portable: it runs on many brands of UNIX, on Windows, OS/2, Mac, Amiga, and many other platforms. If your favorite system isn't listed here, it may still be supported if there's a C compiler for it. Ask around on news:comp.lang.python -- or just try compiling Python yourself.

The Python implementation is copyrighted but freely usable and distributable, even for commercial use.

"Python - why settle for snake oil when you can have the whole snake?" --From Usenet posting by Mark Jackson, June 1998

Going back to Mr. Williams presentation, he said that Python has been around since 1990. Guido van Rossum was the originator of the language. Comp.lang.python is an informative newsgroup where the people on it are generally friendly and willing to provide information. Python uses white spaces for delimiters and this has led to some discussions with C programmers who wondered why specific delimiters were not used. Python programmers answered that they didn’t believe they were necessary or desirable.

Mr. Williams presented as his first example some simple code to create a list.

He said that b=a is a copy operation in most languages but not in Python. In python b is bound to a as an object and this sometimes causes confusion for new Python programmers. He provided a demonstration of how this worked. Also, Python is a garbage collection language; when all of the references to an object go away, the space is removed. You don’t have to worry about managing storage with it.

Next, Mr. Williams presented a code example showing lists, how to import a database, and demonstrated connections. He remarked that Python is very backward compatible with earlier versions of the language. Python makes extensive use of exceptions. Mr. Williams provided a sample program using a script. He said Python is a simple language if you stay in a constrained area, and you can start being productive after about 1 hour. He provided a second example that provided an overall picture of a complex process to control a data warehouse in considerable detail.

You can get information on GUI applications at wxpython.org. From that website:

Welcome to the home of wxPython, a blending of the wxWidgets C++ class library with the Python programming language.

What is wxPython?
wxPython is a GUI toolkit for the Python programming language. It allows Python programmers to create programs with a robust, highly functional graphical user interface, simply and easily. It is implemented as a Python extension module (native code) that wraps the popular wxWidgets cross platform GUI library, which is written in C++

Like Python and wxWidgets, wxPython is Open Source which means that it is free for anyone to use, and the source code is available for anyone to look at and modify. Anyone can contribute fixes or enhancements to the project.

wxPython is a cross-platform toolkit. This means that the same program will run on multiple platforms without modification. Currently supported platforms are 32-bit Microsoft Windows, most Unix or unix-like systems, and Macintosh OS X. Since the language is Python, wxPython programs are simple, easy to write and easy to understand.

Going back to Mr. Williams’ presentation he remarked that wxPython has a rather steep learning curve but is very useful. His third example demonstrated a list with data tables that provided examples of the code and a range of outputs. There are other methods besides wxPython, but he likes it because it is faster than some of the others.

Steve Williams may be contacted at 562-691-4570 or by email: stevewilliams@wwc.com

You can get the background on Python from the listed websites as well as an extremely large amount of detailed information and downloadable items of this open source software. This was definitely a programmer oriented meeting that emphasized demonstrations and display of programs, not something you can get at all by reading this DATA-LINK report. Mr. Williams demonstrated how to use Python in a clear and understandable way so that his presentation was both an informative explanation as to why someone who was not using Python might want to use this language and a guide to users on how they might make use of it.

This was the third meeting of the LA Chapter year and was attended by about 20 persons.
Mike Walsh, LA ACM Secretary 

The next chapter meeting will be on Dec. 1st. Watch this space in November for program information.
Plan to attend!


The Los Angeles Chapter normally meets the first Wednesday of each month at the Ramada Hotel, 6333 Bristol Parkway, Culver City. The program begins at 8 PM.   From the San Diego Freeway (405) take the Sepulveda/Centinela exit southbound or the Slauson/Sepulveda exit northbound.

4:45 p.m.  Business Meeting (special time)

6:30 p.m.  Cocktails & Social

7:00 p.m.  Dinner

The menu choices are listed in the table above.

Avoid a $3 surcharge!!
Reservations must be made by the Sunday preceding the meeting to avoid the surcharge.

Make your reservationsearly.

8:00 p.m.  Presentation

 
Reservations

To make a reservation, call or e-mail Matt Reese, (626)794-5626, and give your name and telephone number, by the Sunday before the dinner meeting.

There is no charge or reservation required to attend the presentation at 8:00 p.m.. Parking is FREE!

For membership information, contact Mike Walsh, (818)785-5056 or follow this link.


Special Events Coming Up This Fall

5th Annual Vendor Showcase and Conference:

The Southern California Coalition Technology Conference (SCCTC) is sponsoring its fifth annual conference on September 25th.   Check here for details and registration.

Personnel Development Seminar:

LA-ACM is sponsoring a PDS to be held on November 21st, entitled "XML - Learn the Next Software Paradigm."   Check here for details and registration. Watch for the Data-Link or check back here for further information.


Other Affiliated groups

SIGAda   SIGCHI SIGGRAPH  SIGPLAN

LA SIGAda

Return to "More"

LA  SIGGRAPH

Please visit our website for meeting dates, and news of upcoming events.

For further details contact the SIGPHONE at (310) 288-1148 or at Los_Angeles_Chapter@siggraph.org, or www.siggraph.org/chapters/los_angeles

Return to "More"

Past Meeting Archive Los Angeles ACM home page National ACM home page Top

 Last revision: 2004 1121 [Webmaster]