What is Python?

Python is a fabulous modern high-level programming language, which is often contrasted with Perl. It has as much power as Perl, but it has a very clean and easy to read syntax. It is extremely powerful and fully object-oriented. It is perfect for rapid application development, web applications, or serving as a scripting “glue” language. The basics of Python can be learned in just a couple hours.

My articles about Python

My 1999 NYC Tutorial on Python

For historical interest you can still access my original 1999 Python Language Tutorial which I presented in New York City December 4‒16 1999 during The Bazaar, a prominent open source convention of the time. The tutorial pages dealt with Python version 1.5, which is quite a bit out-dated now. However for historic preservation, those pages are left mostly untouched and unrevised, complete with their original (rather poor) formatting. You may jump directly to specific chapters by using these links:

1. The Basics of Python
2. Lists and Sequences
3. Dictionaries
4. Control Statements
5. Functions
6. Modules
7. Exceptions
8. Classes
9. Class Inheritance

My Python software

Here are some of my Python creations:

  • demjson —a JSON data encoding module (for Ajax applications, and language-independent data exchange).
  • egd —retrieves cryptographically strong random numbers from an EGD (entropy gathering daemon), useful for Unix systems that do not have a /dev/random device.
  • demset —a complete implementation the of set and frozenset types, but which works under old versions of Python too.
  • httpheader —helps web programmers correctly deal with many of the complex HTTP 1.1 headers, especially for content negotiation, byte range processing, etc.

I've also contributed code to other Python-based projects, usually in the form of extensions or patches. Check out:

  • My MoinMoin stuff. MoinMoin is a wiki engine written in Python.
  • Python milter. I contributed code to allow it to work with IPv6 networks, which has been incorporated in the current version.

Useful Python links