Python Sessions

07/19/2000, 8:45am to 10:15am in Serra I & II
  • Open Source and the Personal Computer Revolution
    Presented by Andy Hertzfeld

    The personal computer revolution was initially driven by enthusiasts, propelled by their idealism and passion . My talk will compare the early days of the personal computer industry with the current situation of the open source movement. It will focus on my experiences at Apple, describing some of the key people at Apple and how their personalities worked their way into their products, especially dwelling on the development of the Macintosh computer. The talk will discuss the structural problems that ensnared the personal computer industry in the 1980s and articulate how the open source movement can help to resolve them. Finally, it will look at the challenges that lie ahead for the open source movement, emphasizing the crucial issue of usability, discussing what the community can do to make open source software easier to use for mainstream users.

07/19/2000, 10:45am to 12:15pm in San Carlos III
  • wxPython Overview
    Presented by Robin Dunn

    Discover wxPython, a GUI toolkit for Python that is implemented as a wrapper around the open Source wxWindows cross-platform C++ class library (see You'll come away from this introduction to wxPython with an overview of the commonly used classes, an understanding of the event system and how to use it, and window layout techniques. We'll conclude with a discussion of the resources available to the wxPython programmer.

07/19/2000, 1:30pm to 3:00pm in San Carlos III
  • Zope Object Database for Python Programmers
    Presented by

    The Zope Object Database (ZODB) provides an object database for Python, including distributed databases using Zope Enterprise Objects (ZEO). Applications can use object database features with little change to application logic. In this presentation, usage of the database is described and illustrated with an example. Features such as a plug-able storage interface, rich transaction support, undo, the object cache, and client-server operation are discussed.

07/19/2000, 3:30pm to 5:00pm in San Carlos III
  • The Software Carpentry Project
    Presented by Greg Wilson

    The Department of Energy has provided a grant of $860,000 to fund development of easier-to-use software engineering tools. All of the work will be Open Source, and have a strong emphasis on design, testing, and documentation. The first phase of the project is a two-round design competition with four categories:

    • an issue tracking system to replace Gnats and Bugzilla
    • a build system to replace make
    • a platform inspection and configuration system to replace autoconf
    • a testing framework to replace XUnit, Expect, and DejaGnu.

    Learn what it takes to get a nuclear weapons research laboratory to agree to do Open Source work. In this session we will discuss the project's background and goals as well as some of the most interesting entries received to date. For more information, please see the announcement and FAQ at

07/20/2000, 8:45am to 10:15am in Serra I & II
  • Open Source Challenges
    Presented by Tim O'Reilly

  • The Coming Comfy Culture
    Presented by Gregory Benford

    In a unique and riveting Keynote, well known 'hard' science fiction author and physicist Gregory Benford asks the question "Where will cheap chips and servile software take us in a few decades? Building on his experience in constructing devices designed to communicate meaningfully across hundreds of decades (he was part of the team that developed markers for U.S. nuclear waste sites that must last 10,000 years) with his knowledge of technology, Benford looks at the future in terms of fundamental cultural shifts and what they mean. Our future digitized culture will not necessarily share our assumptions or visions. That future will enjoy an ever-attentive urban landscape, one tuned at every turn by ingratiating machines. Products will fare well if they can anticipate how well that culture will accept fine shadings of machine obedience and intrusion into personal lives. How comfy will we get before we object? Much depends upon how we see ourselves.

07/20/2000, 10:45am to 12:15pm in San Carlos III
  • State of Python
    Presented by Guido van Rossum

  • Why Does an Artist Need Python?
    Presented by Larry Cuba

    One form of experimental film art is based on algorithmically generated images in which the resulting animation is not pre-visualized by the artist. Unlike conventional filmmaking, in this experimental art, the film emerges from the process--the result of exploring certain mathematical structures and mining them for their visual consequences. The artist is both programmer and end-user combined, and the software that generates the film is always in development through the entire production process as each animation experiment leads to the next. The mathematical and algorithmic nature of this work means that the tool of choice would not be a standard 3D modeling package, but a programming language with which to describe the algorithms. We'll discuss the evolution of computer-animated films with various computer languages over the years (FORTRAN, GRASS, RAP, Z-GRASS) and now Python, and view video clips of the animation.

07/20/2000, 1:30pm to 3:00pm in San Carlos III
  • Platform Independent Graphics with Python
    Presented by Christopher Lee

    "Plug In Drawing, Does Little Else" ("PIDDLE") is a library for platform-independent vector graphics in Python. It can output drawings to Bitmap Images (via Python Imaging Library), PDF (via ReportLab), PostScript, Tkinter, wxPython, MacOS, OpenGL and a variety of other formats. This library is very important for anyone building GUI applications or outputting for both web and print. The session will cover how it works on various platforms, how to draw with PIDDLE, and charting libraries which can work with it, such as GRAPHITE and SNOW.

  • PDF Reporting with ReportLab
    Presented by Andy Robinson

    This session will provide an overview of ReportLab, an Open Source toolkit for generating PDF documents in real time. Attendees will learn how to use ReportLab for needs such as - Generating dynamic PDF on the web - Business forms and database reports - Documenting and printing source code - Adding a cross-platform 'Print Preview' capability to applications. We will cover the different levels at which ReportLab works, including low-level graphics programming; frames and text flow; and XML-to-PDF conversion; and the standard report objects such as tables and charts.

07/20/2000, 3:30pm to 5:00pm in San Carlos III
  • Faster I/O with Threads
    Presented by N/A Aahz

    Python threads are incredibly easy to use. In this demo session you'll learn how to use threads to pull down Web pages in parallel; the techniques are easily generalized to other kinds of I/O operations. You'll need a strong beginner knowledge of Python, and familiarity with urllib and HTMLlib would also be helpful.

  • WorldPilot, an Open Source Web-based Personal Information Manager and Messaging Server
    Presented by Ryan Hughes

    Discover WorldPilot (, a complete open source Web-based Personal Information Manager that integrates with most IMAP mail servers to make email accessible from anywhere. Other functionality includes to-do's, contact management, a full-featured calendar, and notes. Users can share individual data with other users, thereby offering a groupware component. WorldPilot runs on any platform supported by Zope and has been tested on Linux, Windows, and Solaris. We'll look at the use of Python in various areas of Software development, e.g., Python with Zope as an application server and wxPython for Client GUI application development, and explore the future possibilities of a Zope-based communication platform.

Session room assignments are subject to change.