Cameron Laird's personal notes on Python

I've maintained this page little since 2000; most of my Python writing now appears on one of the Wikis, through my publications, or "Python-URL!" [oops! This needs a hyperlink, too].
This page was originally written to support readers of our 1998 introductory article in SunWorld. We've received scores of sharp comments and suggestions. Among the recurring themes: You're welcome also to read other articles we've written. In 2000, I had a particular interest in Stackless Python. Our bi-monthly "Regular Expressions" column regularly covers Python topics, and I frequently review books on Python-related topics.

I'm an active developer with Zope.

I frequent the Python Language Home Page.

Python training

Gordon McMillan writes on compiler-less ways of distributing Python applications.

Python's even available for DOS, at a couple of sites. My son is using a 1.0.1 release to learn the language.

It's possible to build Web applications with Python. Python is also particularly good for GUIs.

Pythonware has collected introductory information on Tkinter.

I like Tom Culliton's explanation of Python typing:

A longer answer: The only declaration in python is "global" for scope disambiguation. Python "variables" are fundamentally typeless, it is only their current contents which have types. This is because they aren't really variables but rather mappings of names with references (pointers) to objects of the PyObject base type. "Assignment" in Python is actually a matter of binding a name to a value, rather than putting the value in a particular chunk of memory.

Python does capability based dynamic type checking (when a value is used it check if the operations needed are supported). This is a good thing mostly. While you can explicitly check for a particular "type" your code will be far more reusable if you stick to capability based typing. I very occasionally worry about the dynamic part because it means you can do something silly on an obscure path through your code and not be able to catch it. (However if Python ever does get static type checking, I very much hope it will be capability/protocol based!)

Python Newsgroup/Mailing List Search

Good reading: Andrew Kuchling's HOWTO index, and, more generally, the python.org link-list to miscellaneous writings. Thomas A. Bryan accurately makes the case for Python in university classrooms, or, more broadly, as a first language.

Proceedings of the '97 Conference


Cameron Laird's personal notes on Python/claird@phaseit.net