What I learned as the Zope Pope

A look back at the evolution of the Zope project.

These are my lessons. :)

Jim Fulton

Zope Corporation

Python Brasil 2011

http://jimfulton.info/talks/What-I-Learned-as-the-Zope-Pope.html

Joined Digital Creations in 1996

Python Module Publisher

bobo

Bobosphere

Digital Creations

Principia

Through-the-web web-site and web-application management:

Principia was not really a framework

The audience of Principia was semi-technical people who wanted to manage web sites with rich content and some custom application logic.

More of a through-the-web scripting environment than a development environment.

People who used the Bobosphere came to Zope with a very different set of expectations.

Through-the-Web Scripting

Packaging in the dark ages

When bobo, DTML and BoboPOS got packaged with Zope, they became intertwined. It quickly became impossible to use them separately.

APIs unsuitable for external developers

Zope improvement project

Digital Creations landed venture funding and decided to make a concerted effort to improve the Zope experience for developers using Zope, including Digital Creations

Zope improvement: for developers

Big decisions

What is Zope?

Significantly driven by DC/ZC requirements

Through-the-Web Development

Zope 3 successes

Zope 3 Failures

What was Zope?

But we insisted in thinking it was a framework.

ZTK

Open development process a challenge

Successes

Difficulties

The growth of self-promotion

Is Marketing a good thing?

Conventional wisdom is that open source projects should market themselves.

But but ... marketing is bad.

There's a fine line between providing good information and marketing.

Yes, it's important to have an informative, attractive, and easy to use web site (or pages).

We don't need technology tribes!

Integrated vs Decoupled

Bobo! bobo.digicool.com

Packaging

UIs and APIs are Boundaries

Goals

Documentation as UI design

ZC UI Development process:

Dark age of the Web

Zope met a lot of needs in this environment, making it relatively easy to provide rich (as much as possible) user experiences.

Rise of JS Frameworks

Rich Widgets

Single page applications

So much better!

HTML5

Rich client APIs provide huge opportunities

The Modern Web Application

Role of the Server

Javascript: Get Over It

The Web Application Language

It's so much better creating Web applications with JS and modern JS libraries, like Dojo and Ext than it is trying to write Web applications on the server.

Celebrate the new Web!

Summary: Lessons

http://jimfulton.info/talks/What-I-Learned-as-the-Zope-Pope.html