Originally appeared in Web Review at: http://webreview.com/wr/pub/1999/03/05/feature/index2.html

The Insider's Guide to Zope

An Open Source, Object-Based Web Application Platform

by Amos Latteier
Mar. 5, 1999

The recent success of such projects such as Linux and Apache has shown that Open Source software can deliver the goods. Not only are these projects free and open, but their quality is often much higher than that of commercial offerings.

One area in which Open Source software has yet to make a significant appearance is in the newly-critical role of Web applications servers. This category of software provides a high-performance, dynamic platform for delivering and managing content, and includes such heavyweights as Microsoft, Sun, Oracle, and Netscape.

Zope is one of the first projects to make an an Open Source presence felt in the Web application server field.

Zope is an Open Source Web application platform for creating dynamic Web sites and Web applications. It has proven technological foundations and a vital community of supporters. Zope is lightweight and portable across operating systems, Web servers, and databases. It delivers high-performance with a small footprint. The platform's Web object system allows applications to be built quickly and easily with unparalleled flexibility and manageability. The object database provides transparent persistence, transactions, undo, and versioning, while accommodating a variety of storage backends. Zope can be managed through the Web with an HTML GUI that's modeled on the Windows Explorer file manager.

The Road to Open Source

Zope developed from from an established free software project, a powerful commercial application server, and an innovative business strategy.

Jim Fulton, technical director at Digital Creations, developed the idea that would become the core of Zope after teaching a frustrating Python CGI tutorial at a 1996 Python workshop. Having been a long-time object proponent, he knew there had to be a better way to develop for the Web than CGI. Later that year, Digital Creations went back to the Python Conference to deliver several papers on the freshly completed Bobo Web object system. Bobo was release as free software and quietly developed a loyal following of users and contributors. Meanwhile, Digital Creations developed and sold a commercial application server called Principia, which was based on Bobo technology.

Late in 1998, Digital Creations surprised many people by deciding to combine Bobo and Principia into an Open Source platform named Zope. What could happen to make an otherwise sane company start giving away its major commercial product as Open Source?

The decision to go Open Source was largely driven by the company's investors at Verticality Investment Group, LLC. Hadar Pedhazur, a Principal at Verticality, felt that making the exciting, innovative Principia product into the basis for a free, Open Source platform provided a better business strategy for the company's goals. Digital Creations expects Zope to quickly capture a significant share of the application server market. This will lead to more revenue for its consulting business and increase the value of the company.

After discussions with early Zope adopters and Open Source advocates including Bruce Perens, Digital Creations liberalized Zope's license, and Zope received Open Source(tm) branding.

A few short months after Zope was released as Open Source, developments are churning along at a furious pace, and the Zope community promises to advance the platform on many fronts simultaneously.


The links below (the continuation of the article) take you directly to Web Reviews pages:

The Web Object System
The one thing that sets Zope apart from other application development systems is that it couples a lightweight HTTP Object Request Broker (ORB) with a powerful object database.

Object Hierarchies and Acquisition
Zope's modularity allows objects to provide services to other objects through something known as "acquisition," which allows the objects to acquire resources from their environment.

Server Flexibility
By using Persistent CGI, Zope can communicate with its own server (ZServer), or with any Web server that supports CGI (such as Apache).

Building a Dynamic FAQ Tool
Learn how to use Zope to build a Web-based application for managing a FAQ page.

The Insider's Guide to Zope